软件项目管理:质量先行

http://tech.ddvip.com   2008年01月22日    社区交流

内容摘要:为何软件开发项目管理这么困难?为何我们做的计划总是不能按时完成?为何软件开发不能像硬件开发那样可以控制?第一站就是需求分析。

  有些人又想到了测试,觉得是我们测试的力度不够,所以产品质量不过关。

  其实,软件开发的质量保证从最初就应该开始了,如果到了测试阶段才重视就已经晚了。软件产品开发过程,不管采用瀑布式模型还是迭代式模型,都离不开需求、设计、编码、测试这几个阶段。在迭代式开发中,这几个阶段也是周期性出现的。

  怎样把握好每个阶段的质量,确实不是一件容易的事。对于软件产品的测试,不管是单元测试还是集成、系统测试,这方面的介绍已经很多了,因此笔者重点介绍一下需求、设计和编码阶段的质量保证。

  让我们开始一次质量之旅吧,第一站就是需求分析。

  在需求分析过程中,如何进行质量保证呢?我们平时可能更多地关注需求本身,却忽视了一个很重要的因素,那就是市场。因为我们开发出来的产品是直接面向市场的,如果费了很多的人力物力开发出来一个没有市场前景,缺乏竞争力的产品,那么所有的努力都是白费。如何充分考虑市场因素,具体可以从以下几个方面进行。

  首先,判断需求是否符合愿景目标,所谓愿景目标就是我们开发出来的产品能够给我们的用户带来什么样的好处?如果有些需求没有被包含在愿景目标里,那么这样的需求其实就背离了我们开发产品的初衷。其次,判断产品需求能够给企业带来多大的利润,如果某个需求只是代表个别用户的需求,并不能给企业带来较大的利润,但又花费甚高,就可以考虑删除。最后,与竞争对手相比核心竞争力有哪些?如果核心竞争力不够,就应该考虑重新进行需求分析,因为如果没有核心竞争力,开发出来的产品就没有市场。

  在排除了市场因素产生的风险之后,我们应该保证需求描述的质量。人与人的交流总会存在一些误会,同样一句话,心情不好与心情好的时候听起来可能会截然相反,正是因为人们之间存在着理解上的偏差,在描述需求的语言上就应该注意尽量避免歧义的产生。如果对UML比较熟悉的话,需求分析可以利用UML工具进行,这样可以减少一些自然语言引起的歧义,但是并不是所有的用户都了解UML各种图形的意思,与用户沟通起来存在障碍,除了工具之外,我们可以从以下几个方面来保证需求描述的质量。

作者:李红    责编:豆豆技术应用

正在加载评论...