?!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
落后的Y件生产方式无法满速增长的计算Y仉求,从而导致Y件开发与l护q程中出Cpd严重问题的现象。所谓的软g危机实际上仅是一U状况,那就是Y件中有错误,正是q些错误D了Y件开发在成本、进度和质量上的失控。有错是软g的属性,而且是无法改变的Q因Y件是׃h来完成的Q所有由人做的工作都不会是完无~的。问题在于我们如何去避免错误的生和消除已经产生的错误,使程序中的错误密度达到尽可能低的E度?/span>
lY件带来错误的原因很多Q具体地_׃软g开?/strong>认ؓQ主要有如下几点Q?/span>
1、程序设计错?/span>
软g开发h员的qQ所以程序员也会出错?/span>
2、交不够、交上有误解或者根本不q行交流
在应用应该做什么或不应该做什么的l节不清晰的情况下进行开发?/span>
3、需求变?/span>
需求变化的影响是多斚w的,客户可能不了解需求变化带来的影响Q也可能知道但又不得不那么做。需求变化的后果可能是造成pȝ的重新设计,设计人员的日E的重新安排Q已l完成的工作可能要重做或者完全抛弃,对其他项目生媄响,g需求可能要因此改变Q等{。如果有许多的改变或者一ơ大的变化,目各部分之间已知或未知的依赖性可能会怺影响而导致更多问题的出现Q需求改变带来的复杂性可能导致错误,q可能媄响工E参与者的U极性?/span>
4、Y件复杂?/span>
囑Ş用户界面Q客?服务器结构,分布式应用,数据通信Q超大型关系型数据库以及庞大的系l规模,使得软g及系l的复杂性呈指数增长Q没有现代Y件开发经验的人很隄解它?/span>
5、Y件开发工?/span>
可视化工PcdQ编译器Q脚本工LQ它们常怼自w的错误带到应用软g中。就象我们所知道的,没有良好的工E化作ؓ基础Q用面向对象的技术只会ə目变得更复杂?׃软g开?/strong>提示您,Z更好地解册些问题,软g界做Z各种各样的努力?/span>
6、时间压?/span>
软g目的日E表很难做到准确Q很多时候需要预计和猜测。当最l期限迫q和关键时刻到来之际Q错误也p着来了?/span>
7、代码文档?/span>
贫乏或者差劲的文档使得代码l护和修改变的异常艰辛,其结果是带来许多错误。事实上Q山东Y件开发提C,在许多机构ƈ不鼓励其E序员ؓ代码~写文档Q也不鼓q序员代码写得清晰和Ҏ理解Q相反他们认为少写文档可以更快的q行~码Q无法理解的代码更易于工作的保密?/span>