对软件项目中产生的需求进行分级管理

转载 2006年05月26日 11:03:00
客户的需求是否应该得到满足?软件工程是否目的就是满足客户的需求?这个问题看来是无法加以回答的,因为,它没有提供两个基本的解释,其一:客户 的需求即算从客户的利益立场出发,是不是合理的?其次,客户的需求有多大程度上是必要的?还是只是一种个人的喜好?
       如果说对于商业客户来说,在项目开始前,还存在着做与不做;以及多少价钱来做的选择的话,那么,在许多情况下,工程人员如果不对此有明确的立场,唯一的结果就是累死自已,而软件项目永远不令人满意,也永远不能完成。对于商业性客户来说,客户的需求是否合理是客户自已的事情,客户永远是对的,这句口号的台下词是:只要客户肯掏钱,那怕他要跳海,那也是他自已的事!但如果项目是已经签署定的合同单,那么就存在着是否按原合同继续,还是中止,还是变更付款条件的的问题。而对于内部项目,所谓的成本就是工程人员有多累和什么时侯累死的问题。这时侯,软件工程从业人员最好能够明白,在自已累死以前,老板,以及那些不学无术对技术一窍不通却自以为是行里大家的同事,都不会对你有任何怜惜的。
     所以这时侯那种无条件满足客户需求的工程需求管理就不适用了,这时侯,软件工程人员只能根据自已能够承受的工作强度对各种需求进行取舍,而不是无条件地牵就“客户”的需求,更不是迁就无知的需求。客户是上帝这句话这时侯完全不适用,因为客户不会为朝改晚改的需求付钱,付帐的是程序员自已——让自已早点累死。
把种种需求明列并分级是唯一的办法;自已就按步就班一点点地完成,这是唯一的办法。事实上,对于商业客户这也是适用的,因为收钱的毕竟是公司老板而不是项目组的程序员,公司老板收了钱就不管实际项目成本是多少而让程序员无条件接受客户的需求也是常见的事情。所以把需求明列,既是让老板明白眼前项目的成本到底是多少(老板通常是技术盲),也有了与客户讨价还价的根据。
      我把需求分成五个等级。五分等级也是工程技术上的常用方式,如同大学的五分制。
一级需求(或改变)是关键性的需求,这种需求如果不满足,意味着整个项目不能正常交付使用,前期工作也会被全部否定。这是必须满足的,否则就意味着否定程序员自已。所以定为Urgent.; 这通常是属于补救性的debug类型,要救火。
二级需求(或改变)是后续关键性需求,它不影响前面工作内容的交付,但不加以满足,新的项目内容无法提交或继续。所以是NECESSARY;一般新模块关键性的基础组件,属于这个级别。
三级需求是后续重要的需求,它不能满足会令整体工作价值下降,为了体现项目价值,也是程度员自已的技术价值的证明,所以定为NEEDED;一般性的重大的有价值的全新模块开发,属于这个级别。

以上三个等级是应该实施的,但时间性上可以作优先级的排列。
四级需求是改良性需求,没有它并不影响已有功能的使用,但实现了,有可信的根据可以是BETTER。界面和使用方式的要求,一般在这个档次。
五级需求是可选性需求,没有它没有谁会活不下去,有了它,没有根据一定带来好处,更多是一种设想,以及一种可能;通常只是需求代理人员的一种个人喜好。所以是MAYBE。

对于四级需求,工程人员项目有空,不妨做下去;对于五级需求,有兴趣有余力就做,没有兴趣或者没有余力,管他需求不需求,除非额外付大钱,就让提这些外行需求的家为一边凉快去

对软件项目中产生的需求进行分级管理

客户的需求是否应该得到满足?软件工程是否目的就是满足客户的需求?这个问题看来是无法加以回答的,因为,它没有提供两个基本的解释,其一:客户 的需求即算从客户的利益立场出发,是...
  • heimaoxiaozi
  • heimaoxiaozi
  • 2009年09月20日 17:36
  • 249

需求分级学习

一般在一个需求文档的后面有各个模块或者用例的需求分级表,下面主要对需求分级进行说明。 一级需求(或改变)是关键性的需求,这种需求如果不满足,意味着整个项目不能正常交付使用,前期工作也会被全部否定...
  • z1988316
  • z1988316
  • 2012年03月27日 14:31
  • 1449

软件项目需求开发过程实践之软件需求说明书

软件需求说明书为谁而编写?把这个问题搞清楚是非常有意义的。
  • xiaoyw
  • xiaoyw
  • 2015年03月07日 16:36
  • 3683

项目中产生的想法

此文仅写自己的想法 1.最近碰到一个问题,有些程序以前的旧版本不能让客户再使用,以后的项目中要预留这种问题,可以通过数据库中写版本号来控制,一旦更新过后之前版本无法再使用。 2.近期修改以前的一些...
  • zhaoyuqings
  • zhaoyuqings
  • 2017年03月11日 12:09
  • 55

对软件需求分析的理解

上一篇,是从理论层次上描述的需求分析,下面谈谈我对需求分析的看法: 一、需求获取         需求获取是根据客户的特点,采用某种方式尽可能多地获取到业务的基本需求,这些需求是原生,未经过加工的...
  • liangpei2008
  • liangpei2008
  • 2014年03月26日 15:26
  • 1699

IT项目的安全需求(二)— SQUARE

SQUARE(System Quality Requirements Engineering )是卡内基梅隆大学(CMU)开发的一种流程模型。SQUARE为信息技术系统和应用程序提供了一种获取、分类和...
  • handongcheng1
  • handongcheng1
  • 2017年11月23日 09:19
  • 51

知乎问答-如何做一个软件需求分析师

这个问题很大,这篇不想再去重复一个软件需求分析员的知识体系结构,而是挑重点来谈下成为一个合格的软件需求分析人员的关键点。 我原来对软件需求的定义或描述更多是偏于对现实世界的定义,而对软件架构的描...
  • shaozhenyu
  • shaozhenyu
  • 2016年06月20日 09:33
  • 1317

需求分析中的问题总结

阅读完林锐《软件工程与项目管理解析》中关于需求分析
  • brightming
  • brightming
  • 2014年06月29日 10:41
  • 1044

软件的需求与隐含需求

敬请期待
  • cidiwuyin
  • cidiwuyin
  • 2017年02月15日 17:32
  • 151

软件需求说明书 概要设计说明书 项目开发计划 详细设计说明书 模版

一、软件需求说明书 1引言 2 1.1编写目的 2 1.2背景 2 1.3定义 2 1.4参考资料 2 2任务概述 2 2.1目标 2 2.2用户的特点 3 2.3假定和约束 3 ...
  • qiwancong
  • qiwancong
  • 2011年11月17日 22:45
  • 10796
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对软件项目中产生的需求进行分级管理
举报原因:
原因补充:

(最多只允许输入30个字)