需求变更

需求变更
需求变更

编者按:

作为软件开发人员或者软件系统客户,相信都遭遇过因为需求变更而需要修改系统的情况,一般说来客户会要求改变界面,改变操作方式,甚至改变业务,客户甚至会说:“当时我是那样要求的,不过现在我们的业务调整了”…这时需要中断正在进行的工作,需要查证以往的资料,需要修正计划,需要……

在本期的月刊中,我们将围绕着“需求变更”这个主题展开讨论,希望对各位开发能有所帮助。让我们先来看一个需求变更的典型案例:

Steven刚出任项目经理,并承接了一个中型软件项目。公司再三叮咛他一定要尊重客户,充分满足客户需求。项目开始比较顺利,但进入到后期,客户频繁的需求变更带来很多额外工作。Steven动员大家加班,保持了项目的正常进度,客户相当满意。

但需求变更却越来越多。为了节省时间,客户的业务人员不再向Steven申请变更,而是直接找程序员商量。程序员疲于应付,往往直接改程序而不做任何记录,很多相关文档也忘记修改。很快Steven就发现:需求、设计和代码无法保持一致,甚至没有人能说清楚现在系统“到底改成什么样了”。版本管理也出现了混乱,很多人违反配置管理规定,直接在测试环境中修改和编译程序。但在进度压力下,他也只能佯装不知此事。但因频繁出现“改好的错误又重新出现”的问题,客户已经明确表示“失去了耐心”。

而这还只是噩梦的开始。一个程序员未经许可擅自修改了核心模块,造成系统运行异常缓慢,大量应用程序超时退出。虽然最终花费了整整3天的时间解决了这个问题,但客户却投诉了,表示“无法容忍这种低下的项目管理水平”。更糟糕的是,因为担心系统中还隐含着其他类似的错误,客户高层对项目的质量也疑虑重重。

随后发生的事情让Steven更加为难:客户的两个负责人对界面风格的看法不一致,并为此发生了激烈争执。Steven知道如果发表意见可能会得罪其中一方,于是保持了沉默。最终客户决定调整所有界面,Steven只好立刻动员大家抓紧时间修改。可后来当听说因修改界面而造成了项目一周的延误后,客户方原来发生争执的两人这次却非常一致,同时气愤地质问Steven:“为什么你不早点告诉我们要延期!早知这样才不会让你改呢!”Steven很无耐,疑惑自己到底错在哪里了。

对软件需求和需求变更的理解

软件需求是整个软件项目的最关键的一个输入,和传统的生产企业相比较,软件的需求具有模糊性、不确定性、变化性和主观性的特点,它不像生产汽车、电脑等硬件的需求,是有形的、客观的、可描述的、可检测的。软件需求是软件项目最难把握的问题,同时又是关系项目成败的关键因素,因此对于需求分析和需求变更的处理十分重要。

需求变更会给项目带来巨大的风险,会导致项目的成本费用增加、开发周期延长、产品质量下降及团队工作效率下降等不良后果,因而软件开发项目中应该尽量减少需求变更的出现频率。然而由于政府对特定软件的相关要求、用户部门市场战略的调整、工业界的发展等因素都可能带来需求的变更,而这些因素往往不可避免。在软件开发过程中如果只有一条真理的话,那一定是:需求的变化是永恒的,需求不可能是完备的。因而,对于需求变更应该正确的对待,尽量将其负面影响降低到最低。

返回导航

需求变更的原因

需求包括业务需求、用户需求和功能需求。业务需求(Business Requirement )反映了组织机构或客户对系统、产品高层次的目标要求,用户需求(User Requirement )描述了用户使用产品必须完成的任务,功能需求(Functional Requirement )定义了开发人员必须实现的软件功能。

会导致需求变更的原因会有很多,如老板临时改变想法、项目预算增加或减少、客户对功能的需求改变等。在IT项目中,变更可能来自方案服务商、客户或产品供应商等,也可能来源于项目组内部。在软件系统开发过程中,有很多问题都是由于在需求分析阶段没有正确地收集、编写、协商、修改产品真实需求而产生的,造成这样的状况有以下几方面的基本原因:

返回导航

虽然需求不可能是完备的、变更不可能没有的,但是在项目开始设计时使得需求尽可能完备还是应该的,也是值得的,完备需求的过程也就相应的减少了因为需求不清楚而产生变更的几率。

如何控制需求变更

按照现代项目管理的概念,一个项目的生命周期分为启动、实施、收尾三个过程。需求变更的控制不应该只是项目实施过程考虑的事情,而是要分布在整个项目生命周期的全过程。为了将项目变更的影响降低到最小,就需要采用综合变更控制方法。综合变更控制主要内容有找出影响项目变更的因素、判断项目变更范围是否已经发生等。

进行综合变更控制的主要依据是项目计划、变更请求提供了项目执行状况信息的绩效报告。为保证项目变更的规范和有效实施,通常项目实施组织会有以下几种措施:

需求变更的代价

需求变更的代价 让我们先来看一个需求变更的典型案例:Steven刚出任项目经理,并承接了一个中型软件项目。公司再三叮咛他一定要尊重客户,充分满足客户需求。项目开始比较顺利,但进入到后期,客户频繁的需求变更带来很多额外工作。Steven动员大家加班,保持了项目的正常进度,客户相当满意。但需求变更却越来越多。为了节省时间,客户的业务人员不再向Steven申请变更,而是直接找程序员商量。程序员疲于应付,往往直接改程序而不做任何记录,很多相关文档也忘记修改。很快Steven就发现:需求、设计和代码无法保持一致,甚至没有人能说清楚现在系统“到底改成什么样了”。版本管理也出现了混乱,很多人违反配置管理规定,直接在测试环境中修改和编译程序。但在进度压力下,他也只能佯装不知此事。但因频繁出现“改好的错误又重新出现”的问题,客户已经明确表示“失去了耐心”。而这还只是噩梦的开始。一个程序员未经许可擅自修改了核心模块,造成系统运行异常缓慢,大量应用程序超时退出。虽然最终花费了整整3天的时间解决了这个问题,但客户却投诉了,表示“无法容忍这种低下的项目管理水平”。更糟糕的是,因为担心系统中还隐含着其他类似的错误,客户高层对项目的质量也疑虑重重。随后发生的事情让Steven更加为难:客户的两个负责人对界面风格的看法不一致,并为此发生了激烈争执。Steven知道如果发表意见可能会得罪其中一方,于是保持了沉默。最终客户决 定调整所有界面,Steven只好立刻动员大家抓紧时间修改。可后来当听说因修 改界面而造成了项目一周的延误后,客户方原来发生争执的两人这次却非常一致,同时气愤地质问Steven:“为什么你不早点告诉我们要延期!早知这样才不会 让你改呢!”Steven很无耐,疑惑自己到底错在哪里了。对软件需求和需

如何做好需求变更管理——需求变更流程规范

如何做好需求变更管理——需求变更流程规范 一、引言 由于目前公司内部对产品的需求变动都只是口头或邮件中进行通知,并没有进行内部评审和相关需求变动后的记录,导致后续出的产品某些需求增加了,某些没有进行增加。这样就会导致测试得到的信息不完整,以及后续产品的维护困难。在这里书写一份规范说明书,希望能得到一些改善。 二、目的 控制需求变化引起的开发、测试与需求不一致的情况,约束需求分析的完整性。保证每一次的需求改动都能有相关的记录。 三、角色与职责 1、市场人员 1)负责产品需求的提交以及解答项目开发过程中遇到的需求问题。 2)负责与客户的沟通确认,并及时反馈客户最新需求。 3)负责与项目经理的沟通 4)负责与客户协调沟通需求变更中需求部分存在的差异 5)负责将需求变更中的需求提供给客户签字确认 2、项目组长 1)负责协调变更的需求并对变更的需求有拒绝的权利 2)负责对变更的需求部分设计的修改 3)保证项目的开发与需求的一致性 4)确定开发进度是否需要进行变更 5)分配新需求给相关开发人员 3、测试组长 1)负责相应测试需求分析书的修改 2)负责把最新需求及时传达到测试人员 3)保证测试进度与开发进度一致性 4)负责与项目组长及时确认最新需求 4、测试人员 1)负责更改测试用例,保证用例与需求同步 2)调控测试进度,保证任务的正常完成 5、项目经理 1)参与需求修改的评审工作 2)最终确认需求是否进行修改 6、配置管理员 1)负责更新需求文档,记录需求更改记录

2)负责需求变更信息的发布与跟踪 四、需求变更处理流程图 需求变更有3种情况,一种是客户提出来要进行修改,增加需求等,一种是公司内部人员提交的建议,还有就是开发人员自己修改流程(修改后的效果比前面的更加好),另外需求变更可能是比较小的改动,另外一种就是可能涉及到整个产品流程,这就是比较大的需求改动。下面就按照上面的3种情况进行画出流程图: 1、需求变更流程(客户提出需求变更) 1)执行条件: 客户提出需求变更 图:需求变更流程(客户提出需求变更) 2)流程说明: 需求来源:客户提交相关需求变更

需求变更处理流程

需求变更处理流程 1、需求变更的原因分析 需求变更的表现形式是多方面的,如老板临时改变想法、项目预算增加或减少、客户对功能的需求改变等。在IT项目中,变更可能来自方案服务商、客户或产品供应商等,也可能来源于项目组内部。虽然需求变更的表现形式千差万别,但究其根本不外乎以下几种原因: (1)、范围没有圈定就开始细化 细化工作是由需求分析人员完成的,一般是根据用户提出的描述性的、总结性的短短几句话去细化的,提取其中的一个个功能,并给出描述(正常执行时的描述和意外发生时的描述)。当细化到一定程度后并开始系统设计时,范围会发生变化,那细节用例的描述可能就有很多要改动。如原来是手工添人的数据,要改成根据信息系统计算出来,而原来的一个属性的描述要变成描述一个实体等。 (2)、没有指定需求的基线 需求的基线是指是否容许需求变更的分界线。随着项目的进展,需求的基线也在变化。是否容许变更的依据是合同以及对成本的影响,比如软件整体结构已经设计出来是不容许改变需求范围的,因为整体结构会对整个项目的进度和成本有初步预算。随着项目的进展,基线将越定越高(容许的变更将越少),其过程如下:变更请求à比较基线à变更实现。(3)、没有良好的软件结构适应变化 组件式的软件结构就是提供了快速适应需求变化的体系结构,数据层封装了数据访间逻辑,业务层封装了业务逻辑,表示层展现用户表示逻辑。但适应变化必须遵循一些松祸合原则,各层之间还是存在一些联系的,设计要力求减少会对接口入口参数产生变化。如果业务逻辑封装好了,则表示层界面上的一些排列或减少信息的要求是很容易适应的。如果接口定义得合理,那么即使业务流程有变化,也能够快速适应变化。因此,在成本影响的容许范围内可以降低需求的基线,提高客户的满意度。

软件开发项目需求变更管理及应对之

软件开发工程需求变更经管及应对之道研究 变化并不是人们最害怕的,最怕的是跟不上变化的步伐。同样,在软件开发过程中需求的变更会给开发带来不确定性,但只要把需求变更作为重点、难点小心加以控制,软件开发的进度、成本和质量也就有了"安全"的基础。 需求变更经管的需求 需求变更是因为需求发生变化。根据软件工程思想,需求说明书一般要经过论证,如果在需求说明书经过论证以后,需要在原有需求基础上追加和补充新的需求或对原有需求进行修改和削减,均属于需求变更。 需求变更的出现主要是因为在工程的需求确定阶段,用户往往不能确切地定义自己需要什么。用户常常以为自己清楚,但实际上他们提出的需求只是依据当前的工作所需,而采用的新设备、新技术通常会改变他们的工作方式。或者要开发的系统对用户来说也是个未知数,他们以前没有过相关的使用经验。 随着开发工作的不断进展,系统开始展现功能的雏形,用户对系统的了解也逐步深入。于是,他们可能会想

到各种新的功能和特色,或对以前提出的要求进行改动。他们了解得越多,新的要求也就越多,需求变更因此不可避免地一次又一次出现。 这时,如果开发团队缺少明确的需求变更控制过程或采用的变更控制机制无效,抑或不按变更控制流程来经管需求变更,那么很可能造成工程进度拖延、成本不足、人力紧缺,甚至导致整个工程失败。当然,即使按照需求变更控制流程进行经管,由于受进度、成本等因素的制约,软件质量还是会受到不同程度的影响。但实施严格的软件需求经管会最大限度地控制需求变更给软件质量造成的负面影响,这也正是我们进行需求变更经管的目的所在。 六大原则 实施需求变更经管需要遵循如下原则: 1.建立需求基线。需求基线是需求变更的依据。在开发过程中,需求确定并经过评审后(用户参与评审),可以建立第一个需求基线。此后每次变更并经过评审后,都要重新确定新的需求基线。

软件需求变更控制流程

需求变更控制流程 文档名称: 文档编号:___________________________ 归档日期:___________________________ 编写者: ________________ 孙_____________ 审核者:_______________________________ 批准者:_______________________________ *The information contained in this message is confidential and should not be disclosed to any third party whether or not you are the intended addressee indicated in the message. *本文件所含内容为保密信息,未经授权请勿随意复制、编改和泄露给任何第三方。 Copyright ?2009 xxx (Sha nghai) Ltd . All Rights Reserved 1.目的 指导项目部、软件部、质量部、测试部对产品的软件变更需求(简称CR进行控制和 管理,规范相应的作业流程,详细地定义了各流程环节中状态、角色和动作。 1.1明确流程中各角色的职责

1.2规范软件缺陷的变更过程 2.适用范围 所有项目的软件变更需求控制管理。 3.定义 CCB Cha ng Con trol Board 的缩写,指变更控制小组,由项目经理、产品经理、软件 开发小组长、软件部经理、测试部主管组成。 SCM Software Configuration Management 的缩写,软件配置管理员。 SQA软件质量保证 产品部门:简称PD 项目部门:简称PM 软件部门:简称SW 测试部门:简称TEST 质量部门:简称SQA 4.参考资料无 5.部门职责 5.1产品部 5.1.1制定产品战略规划,产品定位和定义。 5.1.2客户技术支持,需求分析与管理。 5.1.3提出需求变更申请到到质量部。 5.2质量部 5.2.1接收产品部提出的变更需求。 5.2.2成立项目需求变更评审(CCB小组,召集小组成员对需求变更进行评审。5.3项目部 5.3.1参与需求变更评审,确定需求变更的可行性。 5.3.2将评审通过的需求变更单以通知单的方式发到软件部和测试部。 5.4软件部 5.4.1对需求变更进行技术可行性评估,编写系统需求规格与可行性分析报告,包括技术实现方法、进度要求和风险分析结果以及建议等。 5.4.2确定需求变更信息,制定开发计划,安排代码设计,更新需求规格说明书。 5.5测试部 5.5.1参与需求变更评审工作。 5.5.2确定需求变更信息,制定测试计划,安排对新需求的功能测试。 5.6 CCB 负责对软件相关的变更需求(新需求、 bug修改、建议)进行审核,确定处理的方案。 6.作业流程

软件需求变更控制流程

文档名称: 需求变更控制流程 文档编号: 归档日期: 编写者:孙 审核者: 批准者: *The information contained in this message is confidential and should not be disclosed to any third party whether or not you are the intended addressee indicated in the message. *本文件所含内容为保密信息,未经授权请勿随意复制、编改和泄露给任何第三方。 Copyright ?2009 xxx (Shanghai) Ltd . All Rights Reserved

1.目的 指导项目部、软件部、质量部、测试部对产品的软件变更需求(简称CR)进行控制和管理,规范相应的作业流程, 详细地定义了各流程环节中状态、角色和动作。 1.1明确流程中各角色的职责 1.2规范软件缺陷的变更过程 2.适用范围 所有项目的软件变更需求控制管理。 3.定义 CCB:Chang Control Board的缩写,指变更控制小组,由项目经理、产品经理、软件开发小组长、软件部经理、测试部主管组成。 SCM:Software Configuration Management的缩写,软件配置管理员。 SQA:软件质量保证 产品部门:简称PD 项目部门:简称PM 软件部门:简称SW 测试部门:简称TEST 质量部门:简称SQA 4.参考资料 无 5.部门职责 产品部 5.1.1制定产品战略规划,产品定位和定义。 5.1.2客户技术支持,需求分析与管理。 5.1.3提出需求变更申请到到质量部。 5.2 质量部 5.2.1接收产品部提出的变更需求。 5.2.2成立项目需求变更评审(CCB)小组,召集小组成员对需求变更进行评审。 5.3 项目部 5.3.1参与需求变更评审,确定需求变更的可行性。 5.3.2将评审通过的需求变更单以通知单的方式发到软件部和测试部。 5.4 软件部 5.4.1对需求变更进行技术可行性评估,编写系统需求规格与可行性分析报告,包括技术实现方法、进度要求和风险分析结果以及建议等。 5.4.2确定需求变更信息,制定开发计划,安排代码设计,更新需求规格说明书。 5.5 测试部 5.5.1参与需求变更评审工作。 5.5.2确定需求变更信息,制定测试计划,安排对新需求的功能测试。 5.6 CCB 负责对软件相关的变更需求(新需求、bug修改、建议)进行审核,确定处理的方案。 6.作业流程

IT项目需求变更表申请表(实例)

需求、设计和开发变更表 产品名称龙岗政府在线升级改造项目 项目名称龙岗政府在线升级改造项目项目经理霍军良 变更申请人郭昊申请时间2007年7 月19 日变更类型 □新增需求需求变更□内部改进□产品缺陷 □系统环境变更□其他 变更描述 变更前的描述(若是新需求,则不需填写此栏): 区长信箱的管理部门(区长专线办)只能指定一个部门处理区长来信。 新需求或变更后的描述: 区长信箱收获的区长来信,区长专线办可以分发给多个部门处理。各个部门能够按照自己的处理方式反馈。处理结果要求集中在前台按照各个部门的处理结果按照列表显示。 变更影响的配 置项序号配置项影响描述当前版本需求变更受影响的文档版本号的更新 2.0.1 变更评审方式项目组裁决□召开评审会议□会签评审评审负责人霍军良评审成员宋雷鸣、郭昊、卞兆洋、梁伟 评审意见更改对产品组成部分的影响: 在区长信箱多了一些功能操作。增加了多部门处理方法! 更改方案描述: 在页面中选择好要分发的部门,然后在后台将部门数据传入到集合内,循环遍历集合中数据属性存入数据库相关表中。并删除原来数据。最后在系统的工作任务中建立任务调度时间设置在每天22:00。 变更对进度的影响 (天) 由于工作量不大,而且通过加班工作,对进度的影响可以 忽略不计。 第1 页共2 页

变更对成本的影响由于工作量不大,而且通过加班工作,对进度的影响可以 忽略不计。 变更对质量的影响添加这个新的需求会对系统测试案例等文档产生影响。对 配置库的影响是:受影响的文档版本号的更新。 变更引起的风险无 技术评审结论可以更改□拒绝变更 是否属不合格□是不是 评审人员签字评审负责人评审人评审人评审人评审人评审人评审人霍军良郭昊宋雷鸣卞兆洋梁伟 CCB意见 立即更改□推迟更改□拒绝变更 签字林文涛日期2007年7 月19 日 项目经理 确认 卞兆洋、郭昊在2007-7-18中午晚上加班修改完成。 签字霍军良日期2007年7 月19 日变更当前状态□已指派□已打开□已更改已验证 更改情况 已经对区长信箱收获的区长来信,区长专线办可以分发给多个部门处理。各个部门能够按照自己的处理方式反馈。处理结果集中在前台按照各个部门的处理结果显示在列表中。 更改人签字郭昊、卞兆洋日期2007年7 月19 日 更改验证情况 通过任务调度,已经测试通过,实现了分发给多个部门处理。 验证人签字刘艳君日期2007年7 月19 日变更配置项验证 变更的配置项责任人完成日期版本CMO审核结论 需求变更宋志强2007年7月19 日 1.01 已更改完成 第2 页共2 页

需求变更申请表模板

项目需求变更申请表 项目需求变更申请表 填表说明 1.变更类型为:增加、删除、修改; 2.变更阶段为:需求阶段、详细设计阶段、开发阶段、测试阶段; 3.变更原因为:业务改变、新增需求、需求取消、其他(需明确原因); 4.需求确定时间以QC人员收到项目负责人发送的项目需求确认文档的工作邮件时间为标准,项目需求文档 包括但不限于项目需求原型和项目需求说明书。 5.项目需求确认文档必须发送到开发负责人、QC人员、开发部经理邮箱,QC人员做好备案管理。 6.变更优先级为:特级、普通、建议,对于建议级的变更“不参与讨论,不做处理”,仅作为给开发人员的参考, 项目开发不做任何变动,QC人员做备档处理;特级和普通级的任何一个变更一经提出必须有明确的处理结果,QC人员做好全部过程中的备档处理。 7.基线影响只能填写“有”或者“没有”影响; 8.增加工作量:明确增加的具体工时,以“人/天”为标准计量单位,最低为0.5人/天; 9.项目进度影响:明确项目进度受影响的时间,明确项目要延期交付的时间,以天为计量单位,最低为一天; 10.项目性能(功能)影响:明确对某一个功能(性能)产生的影响; 11.QC(quality controller)质量控制员职责:在产品(项目)生产(开发)各个过程的(质量、规范)管理控制, 并协同相关部门开展工作的职责。工作范畴为:原料(需求分析)生产(开发)过程成品产出(项目验收交付)。项目中所有的工作邮件包括但不限于需求变更邮件、人员异动邮件、人员外出支持申请邮件、需求(原型)变化邮件、项目会议记录邮件等必须抄送项目QC人员备案,未抄送邮件视为无效邮件。QC人员对所有的项目邮件进行收集、整理、统计备档。 12.对于无效邮件所有项目人员均可以不予理会,QC人员只对有效邮件做处理。 13.工作邮件的回复必须标准、简洁、明确。邮件第一行必须包括但不限于这行内容“邮件已收到,收到时间: 2011-10-20 12:01。”时间小时采用24小时制,精确到分钟。 14.项目基本信息、变更需求编号、分析者、需求分析日期由QC人员填写; 15.变更类型、变更阶段、变更原因、变更优先级由项目负责人填写; 16.变更申请人、变更申请日期、变更模块、变更前后内容(或者功能、性能、界面展示)描述由产品人员填 写; 17.进度影响分析、功能影响分析由开发负责人填写; 18.审核签字:每位签字人员必须明确表示“同意变更”或者“不同意变更”并签名; 19.分析者包括但不限于产品人员,开发负责人,项目负责人,开发部经理; 20.所有填表处严禁出现语义表述模糊字样,必须明确表态“同意”“不同意”“是”“否”“有”“无”等;

产品需求变更流程

页数1/5 声明: 本文件属贵州富泰集团深圳分公司所有,在规定范围内使用,未经文控中心批准,禁止复制、泄露。 修改记录 序号页次版本修改内容记要制/修订者审核批准生效日期11-5A/0首次发行 文件分发要求 分发部门分发份数分发部门分发份数海外事业中心■深圳□贵州份盛世国泰(深)□深圳□贵州份虹语通讯(深)□深圳□贵州份恒博新金属(贵)□深圳□贵州份创博宇(贵)□深圳□贵州份利盈福电池(贵)□深圳□贵州份冠诚注塑(贵)□深圳□贵州份明晰清听筒(贵)□深圳□贵州份启铭镜片(贵)□深圳□贵州份响达鸣喇叭(贵)□深圳□贵州份蓝宇包材(贵)□深圳□贵州份英杰雄充电器(贵)□深圳□贵州份益丰塑胶制品(贵)□深圳□贵州份发利永摄像头(贵)□深圳□贵州份锐达精密模具(贵)□深圳□贵州份英利荣手机按键(贵)□深圳□贵州份银海电子(贵)□深圳□贵州份PCBA事业部(贵)□深圳□贵州份惟思达(深)□深圳□贵州份 制订审核批准 日期日期日期

页数2/5 1.目的: 规范化海外事业部产品需求变更流程。 2.范围: 适用于海外事业部所有产品。 1.定义 需求变更:立项后因客户或因市场变化而提出的新产品需求,包括产品功能、硬件配置、外观工艺、用户体验等产品需求变更。 2.职责 4.1 市场部:明确变更需求,跟进,推动需求落实,过程中协助对客户事宜的沟通。 4.2 产品部:组织评估产品变更需求的可行性及风险,提交需求变更 4.3 项目部:准备详细的schedule,人力资源配置,提交项目预算。 4.4 研发中心:协助产品部,项目部评估相关工作。 4.5 品控中心:协助产品部,项目部评估相关工作。 4.6 运营中心:协助产品部,项目部评估相关工作。 5.程序内容: 5.1 需求受理 5.1.1市场部和产品部作为客户需求变更受理的主要入口,其他部门若有收到客户需求信息,转发知 会市场部及产品部 5.1.2市场部提交《需求变更申请表》给产品部,由产品部主导组织评估 5.1.3产品部对需求进一步了解,细化,必要时可再与客户Double check,明确具体需求 5.2 需求评估 5.2.1需求明确后,产品部依照需求同相关部门共同评估,明确可实现性、开发成本、相关风险以及 开发周期等。 5.2.2 评估结束后,产品部记录并发出评估会议纪要 5.3 与客户沟通 5.3.1市场部将评估结果反馈客户,产品部可协助进行沟通,确定 5.3.1.1若客户不同意,意见转内部,进行二次评估,直到与客户达成明确共识。 5.3.1.2若客户同意,由产品部给出评估报告与《需求导入核准单》,由产品经理组织公司各单位确认、 完成公司内部确认栏部分,并给与汇签;由市场部确认完成《需求导入核准单》的客户确认栏部分。 5.4 最终核准

有效控制需求变更的几个方法(转)

需求变更对软件开发项目成败有重要影响,既不能一概拒绝客户的变更要求,也不能一味地迁就客户,所以实施需求变更之前必须做好控制。需求变更控制的目的不是控制变更的发生,而是对变更进行管理,确保变更有序进行。 (1)明确合同约束,建立需求基线 需求变更给软件开发带来的影响有目共睹,所以在与客户签订合同时,可以增加一些相关条款,如限定客户提出需求变更的时间,规定何种情况的变更可以接受、拒绝或部分接受,还可以规定发生需求变更时必须执行变更管理流程。虽然软件开发合同很难在签订之初就能够精确定义每项需求,单靠合同是帮不上忙的,但也不能忽视合同的约束力。 明确和树立需求基线是需求变更的依据。在开发过程中,需求确定并经过评审后(客户参与评审),建立第一个需求基线。此后每次变更并经过评审后,都要重新确定新的需求基线,做到小需求可以变更,但大方向要力保不频繁变更。例如,对于项目中的需求,可以实行分级管理,以达到对需求变更的控制和管理。 (2)建立变更审批流程 在实践中,人们往往不愿意为小的需求变更去执行正规的需求管理过程,认为降低开发效率,浪费时间。正是这种观念才使需求变更变得不可控,最终导致项目的失败。因此,小的需求变更也要经过正规的需求管理流程,否则会积少成多,积重难返。 明确需求变更审批环节、审批人员、审批事项、审批流程。这么做的目的有两个:一是将客户下达变更的流程尽可能地规范化,减少张嘴就来的非必要、非紧急、非合理、非高层领导意图的无效变更。二是留下书面依据,为今后可能的成本变更和索赔准备好“变更账”。凡未履行审批程序的“变更”,一律是无效变更不予受理。 (3)分级管理变更,定时批量处理 软件开发项目中,“客户永远是对的”和“客户是上帝”并不完全正确,因为在已经签定的项目合同中,任何新需求的变更和增加除了影响项目的正常进行以外,还影响到客户的成本投入收益。因此,用户不断提出对项目进度有重大影响的需求对双赢也并不是好事。 当遇到客户提出需求,不及时处理可能会使项目不能验收通过时,也不能一味拒绝不予开发。因此,当客户坚持变更新需求时,可以建议客户将新需求按重要和紧迫程度划分档次,作为需求变更评估的一项依据。例如,每周或每两周甚至每月召开一次需求变更专题会议,集中研究处理这些零碎变更事项,主动控制好工作节奏,尽量避免由于处理零碎变更而影响项目进度。针对会议结果可向客户正式提交一份需求

外包项目需求变更流程规范

外包项目需求变更流程规范 XXXX有限公司

目录 一、目的 (3) 二、角色与职责 (3) 三、需求变更处理流程图 (4) 四、附件 (9)

一、目的 控制需求变化引起的开发、测试与需求不一致的情况,约束需求分析的完整性。保证每一次的需求改动都能有相关的记录。 二、角色与职责 1、市场人员 1)负责产品需求的提交以及解答项目开发过程中遇到的需求问题。 2)负责与项目经理的沟通 3)负责与客户协调沟通需求变更中需求部分存在的差异 4)对于无法通过技术手段解决的需求,负责与客户进行协商 2、项目经理 1)负责与客户的沟通确认,并及时反馈客户最新需求。 2)负责协调变更的需求并对变更的需求有拒绝的权利 3)负责对变更的需求部分设计的修改 4)保证项目的开发与需求的一致性 5)确定开发进度是否需要进行变更 6)与供应商协调时间、开发费用 7)负责将需求变更中的需求提供给客户签字确认 3、测试组长

1)负责相应测试需求分析书的修改 2)负责把最新需求及时传达到测试人员 3)保证测试进度与开发进度一致性 4)负责与项目组长及时确认最新需求 4、测试人员 1)负责更改测试用例,保证用例与需求同步 2)调控测试进度,保证任务的正常完成 5、项目助理 1)参与需求修改的评审工作 2)最终确认需求是否进行修改 3)负责更新需求文档,记录需求更改记录 4)负责需求变更信息的发布与跟踪 6、公司领导 1)参与需求修改评审工作,对需求修改过程具有知情权 2) 对技术手段无法解决的需求,与客户进行协商 三、需求变更处理流程图 传统的需求变更有3种情况,一种是客户提出来要进行修改,增加需求等;一种是公司内部人员提交的建议;还有就是开发人员自己修改流程(修改后的效果比前面的更加好)。 结合公司的具体情况,需求变更主要有以下3种情况。

需求变更分析报告书

目录 变更—YH_01 (2) ?需求变更ID (2) ?变更描述 (2) ?变更提出人 (2) ?变更提出时间 (2) ?变更重要程度 (2) ?影响分析 (2) ?对当前项目的影响 (2) ?对项目工时的影响 (3) ?对项目成本的影响 (3) ?对其他需求的影响 (3) ?可能要变更的其他组件 (4)

变更—YH_01 ?需求变更ID ?编号:YH_01 ?标题:可以上传多个课程交流附件 ?变更描述 ?描述:教师用户经过慎重考虑决定提出需求变更,要求在课程交流内可以上传多个附件(1—3个) ?变更提出人 ?教师用户代表 ?变更提出时间 ?2016年12月20日15:30:00 ?变更重要程度 ?较大 ?影响分析 ?对当前项目的影响 该需求用例是公共用例,并且附件上传功能在项目要求中明确提出,此次需求变更由教师用

户代表提出,所以项目小组必须要将这次需求变更与客户代表,学生代表交涉沟通。而且这个需求变更还会涉及多个其他需求,也需要和其他用户代表确认。如果该需求变更通过,将会给项目组增加工作量。增加的工作内容主要是用例文档中的需求用例的删除、修改,界面原型中的相关界面的修改,同时导致用户手册中相应操作介绍的修改,导致测试用例文档中相应测试用例的修改。 ?对项目工时的影响 因为需求变更需要与其他用户代表沟通确认,修改相应的文档、界面原型等,可能会延长项目工时: 沟通确认需求变更——1d 修改用例文档——0.5d 修改界面原型——0.2d 修改需求工程计划——0.3d 修改测试用例文档——0.5d 更新软件需求规格说明书——0.2d 维护需求变更空难告知文档——0.3d 合计——3d ?对项目成本的影响 项目成本的增加成本主要是人员工时增加 ?对其他需求的影响

需求变更流程规范详细列表

需求变更流程规范 软件工程项目管理经验之一 一、引言 由于目前公司内部对产品的需求变动都只是口头或邮件中进行通知,并没有进行内部评审和相关需求变动后的记录,导致后续出的产品某些需求增加了,某些没有进行增加。这样就会导致测试得到的信息不完整,以及后续产品的维护困难。在这里书写一份规范说明书,希望能得到一些改善。 二、目的 控制需求变化引起的开发、测试与需求不一致的情况,约束需求分析的完整性。保证每一次的需求改动都能有相关的记录。 三、角色与职责 1、市场人员 1、负责产品需求的提交以及解答项目开发过程中遇到的需求问题。 2、负责与客户的沟通确认,并及时反馈客户最新需求。

3、负责与项目经理的沟通 4、负责与客户协调沟通需求变更中需求部分存在的差异 5、负责将需求变更中的需求提供给客户签字确认 2、项目组长 1、负责协调变更的需求并对变更的需求有拒绝的权利 2、负责对变更的需求部分设计的修改 3、保证项目的开发与需求的一致性 4、确定开发进度是否需要进行变更 5、分配新需求给相关开发人员 3、测试组长 1、负责相应测试需求分析书的修改 2、负责把最新需求及时传达到测试人员 3、保证测试进度与开发进度一致性 4、负责与项目组长及时确认最新需求

4、测试人员 1、负责更改测试用例,保证用例与需求同步 2、调控测试进度,保证任务的正常完成 5、项目经理 1、参与需求修改的评审工作 2、最终确认需求是否进行修改 1、负责更新需求文档,记录需求更改记录 2、负责需求变更信息的发布与跟踪 四、需求变更处理流程图 需求变更有3种情况,一种是客户提出来要进行修改,增加需求等,一种是公司内部人员提交的建议,还有就是开发人员自己修改流程(修改后的效果比前面的更加好),另外需求变更可能是比较小的改动,另外一种就是可能涉及到整个产品流程,这就是比较大的需求改动。下面就按照上面的3种情况进行画出流程图:

软件开发项目中的需求变更分析和解决之道

一、令人烦恼的需求变更 作为一个软件项目经理,在项目开发进行中,你是否遇到过这样的问题:客户的一个电话,就推翻了之前你与客户、与你自己的开发团队,经过再三讨论而确认定下来的需求。之后你就重新开始了和客户、和你的开发团队进入新一轮的需求谈论中,甚至是无休止的谈论。甚至要重新设计现有的架构。 而面对这种情况,作为项目经理的你是否会说:“我们无法拒绝客户, 但也无法立即满足他的新需求,所以只好是推到以后再进行完善。”或者,更极端些的想法:客户总是在异想天开,客户的需求在技术上根本无法实现…… 在与客户新的需求论证中,你是否会对需求确认的重要性产生怀疑。因为在一开始已经多次和客户沟通,也在没有任何异议的情况下得到了明确的答复,但当开发项目在不断演进, 客户对系统的理解逐步加深之时, 他们最终还是推翻以前自己想要的需求。而这时你会认为对于需求,只有获取,没有确认。 而因为需求变更的原因,致使项目多次的延期后,客户仍然说这不是他们想要的。你还是在抱怨客户的需求像天气一样一直变个不停,最终,无论是你的抱怨还是客户的需求变更只会令项目组中的开发人员疲于奔命,无所适从。 在你的软件项目进行开发之前,你和你的项目成员是否有过这样的想法,在这次软件项目开发中,一定要消除需求变更,不让谈论好的需求发生任何的变更? 首先,这种想法和认识是错误的,软件项目开发中的需求变更是不能被完全消除的。无论是项目经理还是项目开发人员,最好在项目开始之前就消除这种想法。需求变更是不可能被消除的,而“消除需求变更”的想法却需要被消除。消除需求变更的所有的努力和想法,在项目开发进行中通常都是费力不讨好。 项目开发过程中,需求的变更是不可避免的。

需求变更流程

需求变更流程

关于本文档 说明:类型-创建(C)、修改(U)、删除(D)、增加(A);

1需求变更 需求变更的提出原因可能是随着对需求的理解越来越到位而增加的需求,或者相关规章制度法律法规发生变化而引起需求变换,对于项目而言提出需求变更都是正常的。 1.1目的 需求发生相应的变更,一般指《需求规格说明书》用户确认,形成需求基线,建立基线后的需求增删改都称为需求变更,即意味着项目组资源要进行调整,工期要推迟,甚至以前的设计要推翻,修改前期的工作成果,如果需求没有管理,没有控制的都被采纳,这个项目永远没有完结,所以一定要进行需求变更管理。 1.2流程 需求的增加、修改、删除统称为需求变更。 1、如果用户需要变更需求,则填写《需求变更申请》,经业务部门和信息技术部门 审核通过后,发邮件给项目组需求负责人; 2、《需求变更申请》的项目组接收者,录入此变更请求到《问题跟踪清单》,并标 识“问题类型”; 3、需求或问题的接收者判断是新增需求或需求变更,不得擅自接受,提交和项目经

理和相关人员进行内部变更评估、审核。 4、内部评审通过的,大的(开发工作量大于3人天)需求形成变更部分的《需求规 格说明书》,小的(代码修改开发工作量小于等于3人天)需求变更记录入《需 求问题跟踪》,(并且修改评审过的《需求规格说明书》),制定开发计划; 5、新的《需求规格说明书》进行评审,进行需求跟踪,直到需求关闭; 6、审核通过的《需求规格说明书》,确定开发时间和纳入的版本,制定开发计划 7、如果没有得到变更批准,则由项目经理,分配人员对《需求问题跟踪》直接修改 状态,解释说明拒绝原因,此需求关闭; 1.3输出 《FI-项目组编码-RM-需求变更申请YYYYMMDD》 《FI-项目组编码-RM-需求问题跟踪》 《FI-项目组编码-SPE-需求规格说明书》 项目组变更流程参考: 提出变更--> 内部变更评审→外部变更评审(可选)→变更批准→执行变更 1.4角色和职责 分公司业务部门: 职责:如申请新增、变更需求,提供原始需求及需求变更申请 入口: 出口:需求的相关信息及业务需求、《需求变更申请.doc》。 总公司业务部门及信息技术部门: 职责:对新需求进行整理、汇总、评审;确定结果返给项目组 入口:原始需求变更、《需求变更申请.doc》 出口:评审通过或评审未通过的变更需求,《需求变更申请.doc》 项目组需求负责人: 职责:1、对业务部门整理的需求变更进行评审;要注意此变更对项目组的项目风险、工作量、影响范围等因素。 2、测试系统实现,反馈评审结果,是否批准。 3、对设计开发组的需求设计文档进行评审。

需求变更分析报告

目录 变更—YH_01 .................................................................................. 错误!未定义书签。 需求变更ID ...................................................................... 错误!未定义书签。 变更描述........................................................................... 错误!未定义书签。 变更提出人....................................................................... 错误!未定义书签。 变更提出时间................................................................... 错误!未定义书签。 变更重要程度................................................................... 错误!未定义书签。 影响分析........................................................................... 错误!未定义书签。 对当前项目的影响.................................................... 错误!未定义书签。 对项目工时的影响.................................................... 错误!未定义书签。 对项目成本的影响.................................................... 错误!未定义书签。 对其他需求的影响.................................................... 错误!未定义书签。 可能要变更的其他组件............................................ 错误!未定义书签。

需求变更分析报告

目录 变更—YH_01 (3) 需求变更ID (3) 变更描述 (3) 变更提出人 (3) 变更提出时间 (3) 变更重要程度 (3) 影响分析 (3) 对当前项目的影响 (3) 对项目工时的影响 (4) 对项目成本的影响 (4) 对其他需求的影响 (5) 可能要变更的其他组件 (6)

变更—YH_01 需求变更ID 编号:YH_01 标题:可以上传多个课程交流附件 变更描述 描述:教师用户经过慎重考虑决定提出需求变更,要求在课程交流内可以上传多个附件(1—3个) 变更提出人 教师用户代表 变更提出时间 2016年12月20日15:30:00 变更重要程度 较大 影响分析 对当前项目的影响 该需求用例是公共用例,并且附件上传功能在项目要求中明确提出,此次需求变更由教师用

户代表提出,所以项目小组必须要将这次需求变更与客户代表,学生代表交涉沟通。而且这个需求变更还会涉及多个其他需求,也需要和其他用户代表确认。如果该需求变更通过,将会给项目组增加工作量。增加的工作内容主要是用例文档中的需求用例的删除、修改,界面原型中的相关界面的修改,同时导致用户手册中相应操作介绍的修改,导致测试用例文档中相应测试用例的修改。 对项目工时的影响 因为需求变更需要与其他用户代表沟通确认,修改相应的文档、界面原型等,可能会延长项目工时: 沟通确认需求变更——1d 修改用例文档——0.5d 修改界面原型——0.2d 修改需求工程计划——0.3d 修改测试用例文档——0.5d 更新软件需求规格说明书——0.2d 维护需求变更空难告知文档——0.3d 合计——3d 对项目成本的影响 项目成本的增加成本主要是人员工时增加

软件开发项目需求变更的管理

软件开发项目需求变更的管理 变化并不是人们最害怕的,最怕的是跟不上变化的步伐。同样,在软件开发过程中需求的变更会给开发带来不确定性,但只要把需求变更作为重点、难点小心加以控制,软件开发的进度、成本和质量也就有了"安全"的基础。 需求变更管理的需求 需求变更是因为需求发生变化。根据软件工程思想,需求说明书一般要经过论证,如果在需求说明书经过论证以后,需要在原有需求基础上追加和补充新的需求或对原有需求进行修改和削减,均属于需求变更。 需求变更的出现主要是因为在项目的需求确定阶段,用户往往不能确切地定义自己需要什么。用户常常以为自己清楚,但实际上他们提出的需求只是依据当前的工作所需,而采用的新设备、新技术通常会改变他们的工作方式;或者要开发的系统对用户来说也是个未知数,他们以前没有过相关的使用经验。随着开发工作的不断进展,系统开始展现功能的雏形,用户对系统的了解也逐步深入。于是,他们可能会想到各种新的功能和特色,或对以前提出的要求进行改动。他们了解得越多,新的要求也就越多,需求变更因此不可避免地一次又一次出现。 这时,如果开发团队缺少明确的需求变更控制过程或采用的变更控制机制无效,抑或不按变更控制流程来管理需求变更,那么很可能造成项目进度拖延、成本不足、人力紧缺,甚

至导致整个项目失败。当然,即使按照需求变更控制流程进行管理,由于受进度、成本等因素的制约,软件质量还是会受到不同程度的影响。但实施严格的软件需求管理会最大限度地控制需求变更给软件质量造成的负面影响,这也正是我们进行需求变更管理的目的所在。 六大原则 实施需求变更管理需要遵循如下原则: 1.建立需求基线。需求基线是需求变更的依据。在开发过程中,需求确定并经过评审后(用户参与评审),可以建立第一个需求基线。此后每次变更并经过评审后,都要重新确定新的需求基线。 2.制订简单、有效的变更控制流程,并形成文档。在建立了需求基线后提出的所有变更都必须遵循这个控制流程进行控制。同时,这个流程具有一定的普遍性,对以后的项目开发和其他项目都有借鉴作用。 3.成立项目变更控制委员会(CCB)或相关职能的类似组织,负责裁定接受哪些变更。CCB 由项目所涉及的多方人员共同组成,应该包括用户方和开发方的决策人员在内。 4.需求变更一定要先申请然后再评估,最后经过与变更大小相当级别的评审确认。 5.需求变更后,受影响的软件计划、产品、活动都要进行相应的变更,以保持和更新的需求一致。 6.妥善保存变更产生的相关文档。 应对之道 需求变更控制一般要经过变更申请、变更评估、决策、回复这四大步骤。如果变更被接受,还要增加实施变更和验证两个步骤,有时还会有取消变更的步骤。变更控制流程如图所示。针对变更控制流程,笔者在实际工作中总结出了软件开发人员在需求变更管理实践中的几点对策: 相互协作很难想像遭到用户抵制的项目能够成功。在讨论需求时,开发人员与用户应该尽量采取相互理解、相互协作的态度,对能解决的问题尽量解决。即使用户提出了在开发人员看来"过分"的要求,也应该仔细分析原因,积极提出可行的替代方案。 充分交流需求变更管理的过程很大程度上就是用户与开发人员的交流过程。软件开发人员必须学会认真听取用户的要求、考虑和设想,并加以分析和整理。同时,软件开发人员应该向用户说明,进入设计阶段以后,再提出需求变更会给整个开发工作带来什么样的冲击和不良后果。 安排专职人员负责需求变更管理有时开发任务较重,开发人员容易陷入开发工作中而忽略了与用户的随时沟通,因此需要一名专职的需求变更管理人员负责与用户及时交流。 合同约束需求变更给软件开发带来的影响有目共睹,所以在与用户签订合同时,可以增加一些相关条款,如限定用户提出需求变更的时间,规定何种情况的变更可以接受、拒绝接受或部分接受,还可以规定发生需求变更时必须执行变更控制流程。 区别对待随着开发进展,有些用户会不断提出一些在项目组看来确实无法实现或工作量比较大、对项目进度有重大影响的需求。遇到这种情况,开发人员可以向用户说明,项目的启动是以最初的基本需求作为开发前提的,如果大量增加新的需求(虽然用户认为是细化需求,但实际上是增加了工作量的新需求),会使项目不能按时完成。如果用户坚持实施新需求,可以建议用户将新需求按重要和紧迫程度划分档次,作为需求变更评估的一项依据。同时,还要注意控制新需求提出的频率。 选用适当的开发模型采用建立原型的开发模型比较适合需求不明确的开发项目。开发人员先根据用户对需求的说明建立一个系统原型,再与用户沟通。一般用户看到一些实际的东西后,对需求会有更为详细的解释,开发人员可根据用户的说明进一步完善系统原型。这个过程重复几次后,系统原型逐渐向最终的用户需求靠拢,从根本上减少需求变更的出现。

CMMI5文档之需求变更过程改进报告

需求变更过程改进报告 文档编号:FHI_CMMI_CAR_201702T_CDP 文档信息:需求变更过程改进报告 文档名称:需求变更过程改进报告 文档类别:组织文件 密级:无 版本信息:1.0 建立日期:2017-2-27

文档修订记录 版本编号或者更改记录编号变化状态 简要说明(变更内容 和变更范围) 修改日期变更人批准日期批准人 V1.0 C 新建2017-2-27 张娜娜2017-2-27 李庆林*变化状态:C――创建,A——增加,M——修改,D——删除

目录 1概述 (4) 1.1目的 (4) 1.2参考资料 (4) 2改进内容说明 (4) 2.1改进内容 (4) 2.2改进目标 (4) 3改进效果分析 (5) 4经验总结 (7)

概述 1.1目的 本文档用于描述需求变更过程改进的结果,以供公司过程改进和管理决策使用。 1.2参考资料 ●需求变更过程改进计划.doc ●需求变更过程改进试点报告.doc ●需求变更过程改进推广报告.doc 2改进内容说明 2.1改进内容 通过2016年3月进行的原因分析给出的解决方案,EPG小组对公司需求改进过程进行分析和整合,本次改进主要通过以下方面的改进,达到需求变更率的降低。 序号改进内容说明 1 界面原型工具界面原型工具实施 2.2改进目标 改进的主要目的是为了降低项目需求变更率,以便能更好的降低项目成本、提高产品质量,最终提升客户满意度。根据过程改进前的变更率基线,本次需求过程改进的目标如下: ●在过程改进前的变更率基线【M=0.1187,σ=0.0262】的基础上,均值 下降50%到0.0594,标准差提升30%到0.0183【M=0.0594,σ =0.0183】。 ●经过试点项目的验证,在推广时将需求变更的改进目标设定为: 需求变更率降低到【M= 0.0531,σ=0.0042】

相关文档
最新文档