摘要
当今,经济和社会生活对软件的依赖程度急剧增长,软件需求日益复杂,软件开发成为一项跨越技能,职责范围和时间阶段的综合团队活动。实践证明,良好的需求管理过程对于降低开发成本和保障项目成功至关重要。
这里是我们采用的需求管理过程,希望能与大家分享,互相学习和借鉴。欢迎留言!
我们将需求管理过程分为三个大的阶段:Discover阶段,define阶段,和需求维护阶段。本文的内容罗列如下:
第一部分:软件需求管理过程涉及到的角色
第二部分:软件需求管理过程的概貌。
第三部分:Discover阶段的具体活动。
第四部分:Define阶段的具体活动。
第五部分:需求维护阶段的具体活动。
1、角色及职责
角色————职责描述
市场人员————负责discover阶段所有工作,并帮助开发项目经理在define阶段初期很快地了解业务和客户
开发项目经理————协调discover阶段的所有活动;负责完成需求文档;维护scope matrix。
行业专家————提供行业咨询
高层团队————指导discover和define阶段的工作
SEPG 负责过程的培训,提供过程支持,负责过程的跟进和改进
2、软件需求管理过程的概貌
需求可定义为“(正在构建的)系统必须符合的条件或具备的功能”,也有人定义为“用户解决某一问题或达到某一目标所需的软件功能”。
而需求管理是一种获取、组织并记录系统需求的系统化方案,以及 一个使客户与项目团队对不断变更的系统需求达成并保持一致的过程。需求管理的目的是在顾客和将处理顾客需求的软件项目组之间建立对顾客需求的共同理解。
需求管理的目标是:
使软件需求受控,并建立供软件工程和管理使用的基线。
使软件计划、产品和活动与软件需求保持一致。
Discover阶段
本阶段的目的是了解客户的问题,分析并确定公司是否开展此行业的项目。这里的客户不一定针对一个企业,有可能是一个行业。在进行具体的调研时,目标是本行业的一个或几个典型用户。市场人员主要对客户的问题,客户的现状,和客户的业务模式三方面进行了解,然后对照公司的业务发展方向和实际现状进行可行性分析,并负责编写可行性分析报告。
然后发起可行性分析会议,邀请公司高层,行业专家和利益相关者一起来商议公司是否开展此项目。一旦决定做此项目,下来将寻找有意向的用户。找到合适的用户后,就可以正式开始创建开发团队进行开发系统的定义,设计,编码等工作。
Define阶段
目的是得到一套客户认可的详细的需求说明文档,用来指导后期的软件开发工作。开发项目经理通过与客户沟通交流,分析项目目标和成功因素,识别项目风险和假设,以及系统的功能需求和技术需求,最终整理出一套详细的需求说明文档,包括总体系统的需求信息,每个子系统的需求信息,数据字典,等。
为了指导后期的开发和跟踪需求实现的状态和范围,项目经理需要根据需求来建立本项目的Scope Matrix。在Scope Matrix中随时跟踪每项功能的In或Out,以及现在处于开发的什么阶段。
所有需求文档完成之后,由项目经理发起并组织阶段审核会议,并邀请客户和行业专家参加。审核的内容包括所有需求文档和Scope Matrix。一旦审核通过,则开始制定下阶段的计划,准备进入概念阶段。
需求维护阶段
目的是管理需求的变更。在软件开发过程中,需求不可避免会有大或小的更改。为了更有效地管理需求的变更,这里规范了需求变更,需求跟踪,和需求配置管理的要求。对每项内容
项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~
http://www.leadge.com/pmqhd/index.html