您的位置:首页 > 大数据 > 人工智能

软件项目失败的原因

2006-07-31 23:57 316 查看
 Grady Booch认为,软件项目的失败是由于以下几个基本的原因的组合造成的:
特别的需求管理。

模糊和不精确的交流。

脆弱的架构。

过度复杂。

未检测出需求,设计和实现中的不一致。

测试不足。

对项目状况的估计过于乐观。

未解决存在的风险。

无法控制变化的传播。

自动化程度不足。

   一,客户需求
    需求是最难处理的。客户和开发团队一样,对需求的理解是一个渐进的过程。刚开始时,客户可能根本不清楚自己需要什么样的系统,不能准确、完整地描述出系统的功能需求。随着对系统理解的深入,客户可能会不断地提出新的需求,并修改以前的需求,而这些情况又是所有开发人员都不愿意面对的。另外,开发团队可能会误解客户的需求。双方具有不同的知识背景,使用不能的词汇,如果没有一种有效的交流方式的话,误解客户的需求是肯定会发生的。所以,有效的交流对于正确地理解需求也是非常重要的。

   虽然很多流程(如RUP,XP)都宣称能解决这些需求问题, 但是没有一个开发人员乐于拥抱需求的变化。想起了Kent Beck的书:XP拥抱变化。真有人愿意拥抱变化吗?

  二,交流
   前面已经说过,开发团队和客户之间的交流非常重要,这里主要讨论团队内部之间的交流。
   现代的软件系统越来越复杂,单靠某个人是肯定不行的,需要团队的协作。一个软件开发团队可能由3、4个人组成,也可能由几千人组成。对于一个团队来说,最重要的莫过于成员之间的交流。随着团队规模的扩大,交流也就越来越重要。尤其是现在的分布式开发,项目的开发团队位于不同的场地,模糊不精确的交流可能会白白浪费很多时间,造成项目延期。
   交流的形势多种多样,可以通过书面文档,EMail,IM,电话以及面对面的交流。其中最有效的交流方式还是面对面的谈话。但是考虑到人员的流动性以及分布式开发的需要,有记录的文字交流是必需的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xp email 文档 电话 测试 im