Chinaunix首页 | 论坛 | 博客
  • 博客访问: 949151
  • 博文数量: 134
  • 博客积分: 7443
  • 博客等级: 少将
  • 技术积分: 1411
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-10 20:18
文章分类

全部博文(134)

文章存档

2012年(7)

2011年(29)

2010年(16)

2009年(6)

2008年(18)

2007年(58)

分类: 项目管理

2007-08-08 12:52:41

为什么不同公司的软件过程差异这么大?

最常见的回答:不同软件公司有不同的实际情况,问题领域和人员的水平差异很大。要根据实际情况使用不同的软件过程。这是个看似合理的原因,但这个答案掩盖了一个事实:管理者在项目管理上没有足够的作为,或者错误地运用软件工程方法,导致软件过程的随意性。不能认为软件过程是"存在即合理"的.更何况:无论多么合理的开发流程都有值得改进的地方.

软件工程领域的牛人Stephen R. Schach在<Object-Oriented & Classical Software Engineering>一书中,对这个问题进行了解答,他认为导致软件过程差异大的原因有三个:

(1)软件工程知识的缺乏.软件工程是高速发展的学科,软件工程师跟不上最新的技术,只好在项目中坚持使用老的软件过程进行开发.
(2)公司管理者虽在管理方面很优秀,对软件开发和维护使用到的各种技术却了解的不多.这种情况下往往导致进度延期.据
Stephen R. Schach说:管理者缺乏对技术的了解,这是导致项目不能按计划实施的最常见的原因.
(3)不同公司文化在管理的权重上有不同的权衡.比如:有的公司认为按时发布是最重要的,会发布没有经过足够测试的软件产品;有的公司认为,即便延迟发布,也要尽量保证软件产品的质量.


Stephen R. Schach的答案,特别是前两个原因,是老实不客气提出了问题的症结所在.有时候,我们不是想不到问题的原因,而是没有勇气面对这些原因.



阅读(2261) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~