搜档网
当前位置:搜档网 › 需求变更的代价

需求变更的代价

需求变更的代价
需求变更的代价

需求变更的代价

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

定调整所有界面,Steven只好立刻动员大家抓紧时间修改。可后来当听说因修

改界面而造成了项目一周的延误后,客户方原来发生争执的两人这次却非常一致,同时气愤地质问Steven:“为什么你不早点告诉我们要延期!早知这样才不会

让你改呢!”Steven很无耐,疑惑自己到底错在哪里了。对软件需求和需

求变更的理解软件需求是整个软件项目的最关键的一个输入,和传统的生产企业相比较,软件的需求具有模糊性、不确定性、变化性和主观性的特点,它不像生产汽车、电脑等硬件的需求,是有形的、客观的、可描述的、可检测的。软件需求是软件项目最难把握的问题,同时又是关系项目成败的关键因素,因此对于需求分析和需求变更的处理十分重要。需求变更会给项目带来巨大的风险,会导致项目的成本费用增加、开发周期延长、产品质量下降及团队工作效率下降等不良后果,因而软件开发项目中应该尽量减少需求变更的出现频率。然而由于政府对特定软件的相关要求、用户部门市场战略的调整、工业界的发展等因素都可能带来需求的变更,而这些因素往往不可避免。在软件开发过程中如果只有一条真理的话,那一定是:需求的变化是永恒的,需求不可能是完备的。因而,对于需求变更应该正确的对待,尽量将其负面影响降低到最低。需求变更的原因需求包括业务需求、用户需求和功能需求。业务需求(BusinessRequirement)反映了组织机构或客户对系统、产品高层次的目标要求,用户需求(UserRequirement)描述了用户使用产品必须完成的任务,功能需求(FunctionalRequirement)定义了开发人员必须实现的软件功能。会导致需求变更的原因会有很多,如老板临时改变想法、项目预算增加或减少、客户对功能的需求改变等。在IT项目中,变更可能来自方案服务商、客户或产品供应商等,也可能来源于项目组内部。在软件系统开发过程中,有很多问题都是由于在需求分析阶段没有正确地收集、编写、协商、修改产品真实需求而产生的,造成这样的状况有以下几方面的基本原因: (1)对需求的理解分歧当客户向需求分析人员提出需求的时候往往是通过自己的想法用自然语言来表达的,这样的表达结果对于真实的需求来说是一种描述(甚至只是某个角度的描述),

远远不能保证这样的描述可以得到百分之百的正确理解,也许在同客户交流的第一时刻就埋下了理解分歧的种子,打一个比方说客户说我要的是大象,身子象一堵墙,耳朵象扇子,四条腿象四根柱子,尾巴象绳子,分析人员想,哦,墙、扇子、柱子、绳子这些我都知道,但是真的画出来的时候客户当然会跳起来了!这是理解分歧的问题,一般跟分析员的知识、背景,还有客户表述的标准程度、双方的交流情况有关。(2)系统实施时间过长一个大中型系统的建设可能要延续一段时间,当客户提出要求之后,他当时并不能看到系统的运行情况,当双方认为理解大概没有分歧的时候(事实上还会有个Deadline),开发方就开始工作了。当客户拿到差不多可以试用的产品时他可以实际操作,这时候他就会对系统的界面、操作、功能、性能等有一些切身的体会,有可能提出需求变更要求。(3)用户业务需求改变当前客户的运营情况不确定,有可能客户行业的竞争度高,需要随时作出调整和反应,那么他们自然会经常提出需求变更的要求;也有可能客户所在的行业操作不规范,本身存在很多人为因素,这时候开发方更是需要随时准备应变。(4)系统正常升级有可能是来自开发方自身版本升级或性能改进、设计修正的要求出现需求变更,这时更是无法绕开这个问题的了!所以说就算分析人员和客户之间不存在理解分歧,客户对于实际的系统还是会提出一些个人意见,就算没有个人意见,他们自己的业务会变化或环境发生变化,这些都是无法避免的,所以不要梦想那么理想的需求分析,当你开始一个项目的时候就应该意识到,客户需求变更一定会有的,那么对于这样的现状,我们该怎么办呢?客户是上帝,难道我们就象以前一样,跟着客户的需求不停地修改软件,到最后工期延长,员工疲惫,成本成倍增长,客户满意度降低,原来的设计也会改变得支离破碎,系统难以维护?需求变更的代价

一般来讲,需求的变更通常意味着需求的增加,需求的减少相对很少,而且处理需求减少方面的问题也比较容易。当客户提出新需求的时候,项目开发人员应该分析这些新需求对项目现阶段带来的风险,得出双方实现变更需求的需要的成本,包括时间、人力、资源等等方面。变更都是有代价的,应该评估一下变更的代价和对项目的影响,在评估代价并且与客户讨论的过程中,要让客户了解变更的后果,变更之后面临最大的问题就是项目延期,让客户一起做判断:“我可以修改,但您能接受后果吗?”。现在会出现三种可能:客户接受延期这一后果,开发人员按客户要求做出相应修改,让客户知道为此需要付出延期的代价;如果客户认为代价太大,那开发人员就不必修改了,可以记录下需求,待到下一版本再做修改;客户不接受变更的代价,导致项目夭折。如果客户不知道你为变更付出的代价,对你的辛苦便难以体会,以致没完没了的提出新的变更。减少需求变更正如前文所说,需求变更往往是不可避免的。通常是项目负责人员花费了大量的气力避免需求变更,可最后需求变更总是会出现。但是这并不意味着项目开发人员不应该做这方面的工作,项目开发人员对于需求变更的正确态度应该和软件测试的态度一样,在需求变更发生之前尽量减少需求变更,以将需求变更带来的风险降低到最低。项目开发人员切忌在项目设计之前试图消除需求变更,这样做往往费力不讨好。相比于需求开发人员而言,客户可能对需求变更认识不足,认为他们出钱,程序员或软件开发公司就要为它服务,因此客户对需求变更往往更加肆无忌弹,将需求变更视为儿戏,随个人喜好随意变更需求。因此,在需求人员同用户代表或用户部门主管人员接触时,就应该向他们挑明态度,和他们协商好,特别是应该让他们清楚软件的定价应该与软件的功能相关,以及需求随意变更所带来的风险的承担者应该由客户和项目开发者共同承担。

通过这样做,让客户在需求分析之前就尽量对他们所需要的功能有个整体的了解和确定的思路,而不是等到程序员开始编码了,才提出以前原本在需求分析时就可以提出的需求。让客户明白减少需求变更的重要性后,需求分析人员应该采取合适的方法同客户交流,帮助他们明确他们的需求。需求分析人员和客户的关系不应该仅仅是记录人员和需求提供者,他们的关系应该更多的是战略合作伙伴关系。虽然需求分析人员和客户存在着服务商和顾客的关系,但是他们有着一个共同的目标:开发出适合客户需求的软件,因此需求分析人员除了记录客户提出的需求以外,还应和用户讨论,提出一些建议,使用合适的工具帮助客户提出需求。在需求分析时,尽量多的召集需求研讨会,邀请开发人员和客户共同协商探讨,在研讨会上允许任意的提出需求,并将这些需求整理成档后由客户代表和需求分析人员共同商议可选的功能,这样能够尽量使得需求完备。在需求开发时,开发人员采用原型的方法启发客户思考功能需求也不失为一个好办法。

虽然需求不可能是完备的、变更不可能没有的,但是在项目开始设计时使得需求尽可能完备还是应该的,也是值得的,完备需求的过程也就相应的减少了因为需求不清楚而产生变更的几率。如何控制需求变更按照现代项目管理的概念,一个项目的生命周期分为启动、实施、收尾三个过程。需求变更的控制不应该只是项目实施过程考虑的事情,而是要分布在整个项目生命周期的全过程。为了将项目变更的影响降低到最小,就需要采用综合变更控制方法。综合变更控制主要内容有找出影响项目变更的因素、判断项目变更范围是否已经发生等。进行综合变更控制的主要依据是项目计划、变更请求提供了项目执行状况信息的绩效报告。为保证项目变更的规范和有效实施,通常项目实施组织会有以下几种措施:(1)项目启动阶段的变更预防对于任何项目,变更都无可避免,

也无从逃避,只能积极应对,这个应对应该是从项目启动的需求分析阶段就开始了。对一个需求分析做得很好的项目来说,基准文件定义的范围越详细清晰,用户跟项目经理扯皮的幌子就越少。如果需求没做好,基准文件里的范围含糊不清,被客户抓住空子,往往要付出许多无谓的牺牲。如果需求做得好,文档清晰且又有客户签字,那么后期客户提出的变更就超出了合同范围,需要另外收费。这个时候千万不能手软,这并非要刻意赚取客户的钱财,而是不能让客户养成经常变更的习惯,否则后患无穷。相对于需求来说,什么WBS、风险管理、计划进度都是次要的,只要需求做好了就会一帆风顺。(2)项目实施阶段的需求变更成功项目和失败项目的区别就在于项目的整个过程是否是可控的。项目经理应该树立一个理念——“需求变更是必然的、可控的、有益的”。项目实施阶段的变更控制需要做的是分析变更请求,评估变更可能带来的风险和修改基准文件。控制需求渐变需要注意以下几点:需求一定要与投入有联系,如果需求变更的成本由开发方来承担,则项目需求的变更就成为必然了。所以,在项目的开始,无论是开发方还是出资方都要明确这一条:需求变,软件开发的投入也要变。需求的变更要经过出资者的认可,这样才会对需求的变更有成本的概念,能够慎重地对待需求的变更。小的需求变更也要经过正规的需求管理流程,否则会积少成多。在实践中,人们往往不愿意为小的需求变更去执行正规的需求管理过程,认为降低了开发效率,浪费了时间。但正是由于这种观念才使需求逐渐变为不可控,最终导致项目的失败。精确的需求与范围定义并不会阻止需求的变更。并非对需求定义得越细,就越能避免需求的渐变,这是两个层面的问题。太细的需求定义对需求渐变没有任何效果。因为需求的变化是永恒的,并非需求写细了,它就不会变化了。注意沟通的技巧。实际情况是用户、开发者都

认识到了上面的几点问题,但是由于需求的变更可能来自客户方,也可能来自开发方,因此,作为需求管理者,项目经理需要采用各种沟通技巧来使项目的各方各得其所。在开发上尽量根据情况采用多次迭代的方式进行项目的开发,在每次迭代的同时让客户参与和使用软件,对下一步的开发做出建议争取在项目前期有效的减少后期可能出现的变更情况。(3)项目收尾阶段的总结能力的提高往往不是从成功的经验中来,而是从失败的教训中来。许多项目经理不注重经验教训总结和积累,即使在项目运作过程中碰得头破血流,也只是抱怨运气、环境和团队配合不好,很少系统地分析总结,或者不知道如何分析总结,以至于同样的问题反复出现。事实上,项目总结工作应作为现有项目或将来项目持续改进工作的一项重要内容,同时也可以作为对项目合同、设计方案内容与目标的确认和验证。项目总结工作包括项目中事先识别的风险和没有预料到而发生的变更等风险的应对措施的分析和总结,也包括项目中发生的变更和项目中发生问题的分析统计的总结。需求变更的管理需求变更是因为需求发生变化。根据软件工程思想,需求说明书一般要经过论证,如果在需求说明书经过论证以后,需要在原有需求基础上追加和补充新的需求或对原有需求进行修改和削减,均属于需求变更。需求变更的出现主要是因为在项目的需求确定阶段,用户往往不能确切地定义自己需要什么。用户常常以为自己清楚,但实际上他们提出的需求只是依据当前的工作所需,而采用的新设备、新技术通常会改变他们的工作方式;或者要开发的系统对用户来说也是个未知数,他们以前没有过相关的使用经验。随着开发工作的不断进展,系统开始展现功能的雏形,用户对系统的了解也逐步深入。于是,他们可能会想到各种新的功能和特色,或对以前提出的要求进行改动。他们了解得越多,新的要求也就越多,需求变更因此不可避免

地一次又一次出现。这时,如果开发团队缺少明确的需求变更控制过程或采用的变更控制机制无效,抑或不按变更控制流程来管理需求变更,那么很可能造成项目进度拖延、成本不足、人力紧缺,甚至导致整个项目失败。当然,即使按照需求变更控制流程进行管理,由于受进度、成本等因素的制约,软件质量还是会受到不同程度的影响。但实施严格的软件需求管理会最大限度地控制需求变更给软件质量造成的负面影响,这也正是我们进行需求变更管理的目的所在。实施需求变更管理需要遵循以下六大原则(1)建立需求基线,需求基线是需求变更的依据。在开发过程中,需求确定并经过评审后(用户参与评审),可以建立第一个需求基线。此后每次变更并经过评审后,都要重新确定新的需求基线。(2)制订简单、有效的变更控制流程,并形成文档。在建立了需求基线后提出的所有变更都必须遵循这个控制流程进行控制。同时,这个流程具有一定的普遍性,对以后的项目开发和其他项目都有借鉴作用。(3)成立项目变更控制委员会(CCB)或相关职能的类似组织,负责裁定接受哪些变更。CCB 由项目所涉及的多方人员共同组成,应该包括用户方和开发方的决策人员在内。(4)需求变更一定要先申请然后再评估,最后经过与变更大小相当级别的评审确认。(5)需求变更后,受影响的软件计划、产品、活动都要进行相应的变更,以保持和更新的需求一致。(6)妥善保存变更产生的相关文档。应对之道需求变更控制一般要经过变更申请、变更评估、决策、回复这四大步骤。如果变更被接受,还要增加实施变更和验证两个步骤,有时还会有取消变更的步骤。针对变更控制流程,在实际工作中总结出了软件开发人员在需求变更管理实践中的几点对策:优先排序分批实现每个需求的重要性是不同的。由于资源或技术条件的限制,会显得“僧多粥少”,因此不可能把所有的需

求一次完成。怎么办?把每个需求按照对效益的贡献打个分,排出个优先级来,优先级高的需求先实现,低的到一下版式本实现。由于不断有新的需求进来,有的需求可能永远没有机会被子实现,但不紧,还是要记录下来,并一起参加排序,保证在每个版本发布时重要的需求先得到满足。每个需求的实现是需要花时间的,没人有百分百的把握预估得很清楚,但借鉴过去的经验可以大概估算出人力成本,然后根据开发人员和开发周期得出可用人力投入作为上限。从优先级高的需求中挑,直到挑中的人力成本总和刚刚低于可用投入上限,这样得出的就是需求的录取榜。今后的软件开发规划也会以此为依据,分期分批地在不同的回合中实现。最合理的不一定是优先级最高的,也就是说不一不定是最先考虑的,“经济为本”是指导优先排序的最终原则。相互协作很难想像遭到用户抵制的项目能够成功。在讨论需求时,开发人员与用户应该尽量采取相互理解、相互协作的态度,对能解决的问题尽量解决。即使用户提出了在开发人员看来"过分"的要求,也应该仔细分析原因,积极提出可行的替代方案。充分交流需求变更管理的过程很大程度上就是用户与开发人员的交流过程。软件开发人员必须学会认真听取用户的要求、考虑和设想,并加以分析和整理。同时,软件开发人员应该向用户说明,进入设计阶段以后,再提出需求变更会给整个开发工作带来什么样的冲击和不良后果。安排专职人员负责需求变更管理有时开发任务较重,开发人员容易陷入开发工作中而忽略了与用户的随时沟通,因此需要一名专职的需求变更管理人员负责与用户及时交流。合同约束需求变更给软件开发带来的影响有目共睹,所以在与用户签订合同时,可以增加一些相关条款,如限定用户提出需求变更的时间,规定何种情况的变更可以接受、拒绝接受或部分接受,还可以规定发生需求变更时必须执行变更控制流程。区别对待随着开发

进展,有些用户会不断提出一些在项目组看来确实无法实现或工作量比较大、对项目进度有重大影响的需求。遇到这种情况,开发人员可以向用户说明,项目的启动是以最初的基本需求作为开发前提的,如果大量增加新的需求(虽然用户认为是细化需求,但实际上是增加了工作量的新需求),会使项目不能按时完成。如果用户坚持实施新需求,可以建议用户将新需求按重要和紧迫程度划分档次,作为需求变更评估的一项依据。同时,还要注意控制新需求提出的频率。选用适当的开发模型采用建立原型的开发模型比较适合需求不明确的开发项目。开发人员先根据用户对需求的说明建立一个系统原型,再与用户沟通。一般用户看到一些实际的东西后,对需求会有更为详细的解释,开发人员可根据用户的说明进一步完善系统原型。这个过程重复几次后,系统原型逐渐向最终的用户需求靠拢,从根本上减少需求变更的出现。目前业界较为流行的叠代式开发方法对工期紧迫的项目的需求变更控制很有成效。用户参与需求评审作为需求的提出者,用户理所当然是最具权威的发言人之一。实际上,在需求评审过程中,用户往往能提出许多有价值的意见。同时,这也是由用户对需求进行最后确认的机会,可以有效减少需求变更的发生。后记:对于软件开发项目来说,开发的过程中不可避免的会出现需求变更,发生变更的环节也比较多,因此变更控制显得格外重要。变更控制对项目成败有重要影响,项目开发之前要明确定义,开发过程中要严格执行。对变更控制的目的并不是控制变更的发生,而是对变更进行管理,以便更好的处理变更,确保变更有序进行,从而减少因为需求变更而带来的损失,加快项目的开发速度。

需求变更的代价

需求变更的代价 让我们先来看一个需求变更的典型案例: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项目需求变更表申请表(实例)

需求、设计和开发变更表 产品名称龙岗政府在线升级改造项目 项目名称龙岗政府在线升级改造项目项目经理霍军良 变更申请人郭昊申请时间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 页

项目需求申请表

需求变更流程规范 文件编号Document Number 文件名称Document Title 版本号Document Version 起草人Written By 姓名Name 职位Position 签字Signature 日期Date 审核人Reviewed By 姓名Name 职位Position 签字Signature 日期Date 批准人Approved By 姓名Name 职位Position 签字Signature 日期Date

目录 一、目的 (3) 二、角色与职责 (3) 3.1 需求分析人员 (3) 3.2 项目研发人员 (3) 3.3 方案设计部中心 (4) 3.4 测试人员 (4) 3.5项目经理 (4) 3.6文档负责人 (4) 三、需求变更处理流程图 (5) 4.1 常见的3种变更情况 (5) 4.2 对应变更情况的处理流程 (5) 四、需求变更相关附件 (8) 附件一:文档编号01-01 (8) 附件二:文档编号01-02 (8)

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

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

外包项目需求变更流程规范 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种情况。

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

需求变更流程规范 软件工程项目管理经验之一 一、引言 由于目前公司内部对产品的需求变动都只是口头或邮件中进行通知,并没有进行内部评审和相关需求变动后的记录,导致后续出的产品某些需求增加了,某些没有进行增加。这样就会导致测试得到的信息不完整,以及后续产品的维护困难。在这里书写一份规范说明书,希望能得到一些改善。 二、目的 控制需求变化引起的开发、测试与需求不一致的情况,约束需求分析的完整性。保证每一次的需求改动都能有相关的记录。 三、角色与职责 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种情况进行画出流程图:

需求变更申请表模板

项目需求变更申请表 项目需求变更申请表 填表说明 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.所有填表处严禁出现语义表述模糊字样,必须明确表态“同意”“不同意”“是”“否”“有”“无”等;

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

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

需求变更分析报告书

目录 变更—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 ?对项目成本的影响 项目成本的增加成本主要是人员工时增加 ?对其他需求的影响

需求变更记录

需求变更: 用户管理:近期与D公司往来的用户激增,导致需求量变大,濒临入不敷出现象,故需及时做好需求变更操作,以免给D公司带来不必要的损失。 设备管理功能:在需求获取结束后,由于D公司仓库对设备的需求量变大,需要进行一定量的需求变更。又由于仓库配备的人力资源不够,所以需要添加2个人协助管理员一同进行设备号的添加以及设备信息的更新操作。 变更日期:2012-4-24 变更请求:需要添加2个人 审核结果:通过 现有库存:由于近期用户的商品需求量变大,造成现有库存出现了不稳定因素(入不敷出现象),故需要进行适当调整。仓管人员定要注意实时更新现有的设备号、现有数目、总书目、最大库存以及最小库存量,方便近期以及后期仓管人员以及用户的查询操作。 入库管理功能:由于需求量变更(濒临入不敷出现象)的出现,需要增加入库商品量,以维持库存的饱满,以便可继续正常运作。需增添1人仓管人员协助进行实时更新入库信息,观察现有库存量的操作,适当控制出入量平衡。 变更日期:2012-4-24 变更请求:需增添1人 审核结果:通过 还库管理:由于需求量变更的出现,在此期间定要做好还库信息的修改更新,以免造成入不敷出现象的加剧。 出库管理:由于出现需求量变更(濒临入不敷出现象)的出现,需要仓管人员仔细做好出库登记,在入库量还没有得到相应改善之前,需要减少用户零散的商品需求,对此致以歉意。值得注意的是,仓管人员切记要做好出库信息更新以及还库信息的登记。 查询管理功能:由于目前需求量的变更,运作上同样需要进行一定量的调整。在此期间,用户以及D公司的仓管人员对现有库存查询、入库查询、出库查询、紧销商品查询、滞销商品查询量激增,故需要1-2名人员协助参与查询管理,以维护系统,查漏补缺。 变更日期:2012-4-24 变更请求:需要1-2人 审核结果:通过 采购计划管理:由于需求量的变更(濒临入不敷出现象)的出现,需要适度的加大采购量,故需要增添2-4名采购人员,以协助采购管理员获取订单,收货以及入库操作的顺利进行。变更日期:2012-4-24 变更请求:需要增添2-4人 审核结果:通过

需求变更流程

需求变更流程

关于本文档 说明:类型-创建(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 ...................................................................... 错误!未定义书签。 变更描述........................................................................... 错误!未定义书签。 变更提出人....................................................................... 错误!未定义书签。 变更提出时间................................................................... 错误!未定义书签。 变更重要程度................................................................... 错误!未定义书签。 影响分析........................................................................... 错误!未定义书签。 对当前项目的影响.................................................... 错误!未定义书签。 对项目工时的影响.................................................... 错误!未定义书签。 对项目成本的影响.................................................... 错误!未定义书签。 对其他需求的影响.................................................... 错误!未定义书签。 可能要变更的其他组件............................................ 错误!未定义书签。

《××项目软件需求变更说明书》

软件需求变更说明书 项目名称:长益高速收费数据分析系统 一、概述 因湖南省高速公路联网拆分系统软件升级,导致长益下属收费站入口和出

口交易数据、拆分数据、代收拆分数据无法获取。而现阶段省高管局监控中心无法在上报报表日期内提供拆分数据,从而导致长益高速收费数据分析系统无法输出相关报表。经过深入了解和分析,在与业主方多次探讨后,提出以下变更说明。 二、变更内容 MTC实收和流量 原始情况: 人工收费系统出口站收费数据和出口流量的导入,是由收费站工作人员从站级拆帐网下载的“收费数据统计报表”并再录入部分细分数 据,导入长益收费数据分析系统。 变更后: 收费站工作人员在分析系统中MTC实收功能模块中只录入出口各车型实收收入、各车型流量、免费车流量、绿通车流量、系统外收入、 绿通车减免金额、免费车减免金额、手工票金额。 运营部工作人员在分析系统中MTC实收功能模块中导入本路段各站进,其他路段出的代收流量的各车型估算流量。其中包括各车型流量、 绿通车流量、免费车流量。 MTC实得 原始情况: 人工收费系统实得数据的导入,是由收费站工作人员从站级拆帐网下载的“拆帐统计报表”,导入长益收费数据分析系统。 代收实得的导入,是由运营部工作人员从拆帐网下载的“长张高速

公路联网收费实际分配收入统计表”,导入长益数据分析系统。 变更后: 运营部工作人员在分析系统中MTC实得功能模块中导入估算MTC各车型拆分收入。其中包括本路段各车型收入、系统外收入及代收业主各车型收入、系统外收入。 报表输出 由于原始基础数据的变更,所导致从数据模型上的建立发生了变化,从而将导致原长益数据分析系统输出报表无法根据原来基础数据的数据输出,需要转换为估算的数据输出,需要对所有的报表进行修改。 需要修改的报表有以下: ?公司-绿色通道车辆 ?公司-收费站拆帐情况表 ?公司-单车收费标准计算表 ?公司-流量对比表 ?公司-各类车流量收入比重对比图 ?公司-各类车流量收入比重表 ?公司-实征率 ?公司-高速免费车 ?公司-收费车流量统计 ?公司-ETC收费车与免费车 ?公司-月流量分析 ?公司-ETC征费情况 ?公司-月收入图 ?公司-月收费情况总表 ?公司-收费车流量与收入统计 ?路劲-收入影响因素对比表 ?路劲-项目每月输入及车流汇总表 ?路劲-各站每月收入及车流汇总表 ?路劲-历年路费收入图 ?路劲-历年次票车流量图 ?路劲-日报 ?省局-交通流量统计月报表 ?省局-绿色通道和免费车

需求评审规范

需求评审规范 变更记录

目录 一、概要 (3) 1、规范化需求评审的目的 (3) 2、明确需求评审目的 (3) 3 、明确需求评审的与会人员 (3) 4、每周需求评审次数 (3) 二、评审准备 (4) 1、人员职责 (4) 2、材料 (5) 3、内部评审 (6) 4、准评审条件 (6) 三、会议流程 (6) 1、评审中 (6) 2、准出标准 (7) 3、评审后 (7) 四、需求变更 (8) 1、准更时间 (8) 2、需求变更来源 (8) 3、需求变更类型 (8) 4、需求变更审核 (8) 5、需求变更同步 (9) 6、变更申明 (9) 7、特殊说明 (9)

五、声明 (9) 一、概要 1、规范化需求评审的目的 1.1、提升需求质量,保障产品质量; 1.2、提高评审会议效率和质量; 2、明确需求评审目的 2.1、让技术及测试对产品方案有详细的了解,以便后续开发更高效; 2.2、让与会者清晰的知道自己在整个发开过程中处于什么位置,职责是什么,需要做什么,准备什么,提供什么帮助,对各自负责部分的实现难度及排期有一定的心理预期; 2.3、需求评审只对本次需求进行讨论,不深入,不发散。 3 、明确需求评审的与会人员 3.1、提前核实和通知本次需求参与的相关人员 4、每周需求评审次数 4.1、提前询问测试本周是否有时间进行需求评审,不要因为需求评审而导致测试计划打乱。 4.2、原则上需求评审每周最多2次。

二、评审准备 1、人员职责 产品: a)准备《产品需求文档》《产品原型文件》《美术需求文档》《美术效果图》。 b)编写《产品需求文档》《产品原型文件》时提前和相关的程序负责人进行沟通,将一些不确定的方案给确定下来,探讨方案实现的难易程度,确保某些需求的可行性,还可以发现可能与原有产品逻辑相冲突的地方等,提前将这些工作做好,确保需求评审会议的高效。 c)涉及运营的需要和运营提前进行沟通,确定运营需求细节并明确是否需要运营平台支持。 d)《美术需求文档》要和美术详细描述需求,明确功能。在需求评审前制作出效果图。 f)至少提前一天将资料以邮件形式发出并通知与会人员,让与会者提前查看。 g)会议的发起至少提前半天进行通知,最好是和资料一并提前1天发送,好做好提前的协调,保证都能准时参会。 开发: a)提前熟悉资料,查看需求是否易于理解,细节有没有说清楚,逻辑是否成立。 b)对技术可行性进行分析,能不能做,成本多大规模,有多大风险。

需求变更分析报告

目录 变更—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.妥善保存变更产生的相关文档。 应对之道 需求变更控制一般要经过变更申请、变更评估、决策、回复这四大步骤。如果变更被接受,还要增加实施变更和验证两个步骤,有时还会有取消变更的步骤。变更控制流程如图所示。针对变更控制流程,笔者在实际工作中总结出了软件开发人员在需求变更管理实践中的几点对策: 相互协作很难想像遭到用户抵制的项目能够成功。在讨论需求时,开发人员与用户应该尽量采取相互理解、相互协作的态度,对能解决的问题尽量解决。即使用户提出了在开发人员看来"过分"的要求,也应该仔细分析原因,积极提出可行的替代方案。 充分交流需求变更管理的过程很大程度上就是用户与开发人员的交流过程。软件开发人员必须学会认真听取用户的要求、考虑和设想,并加以分析和整理。同时,软件开发人员应该向用户说明,进入设计阶段以后,再提出需求变更会给整个开发工作带来什么样的冲击和不良后果。 安排专职人员负责需求变更管理有时开发任务较重,开发人员容易陷入开发工作中而忽略了与用户的随时沟通,因此需要一名专职的需求变更管理人员负责与用户及时交流。 合同约束需求变更给软件开发带来的影响有目共睹,所以在与用户签订合同时,可以增加一些相关条款,如限定用户提出需求变更的时间,规定何种情况的变更可以接受、拒绝接受或部分接受,还可以规定发生需求变更时必须执行变更控制流程。 区别对待随着开发进展,有些用户会不断提出一些在项目组看来确实无法实现或工作量比较大、对项目进度有重大影响的需求。遇到这种情况,开发人员可以向用户说明,项目的启动是以最初的基本需求作为开发前提的,如果大量增加新的需求(虽然用户认为是细化需求,但实际上是增加了工作量的新需求),会使项目不能按时完成。如果用户坚持实施新需求,可以建议用户将新需求按重要和紧迫程度划分档次,作为需求变更评估的一项依据。同时,还要注意控制新需求提出的频率。 选用适当的开发模型采用建立原型的开发模型比较适合需求不明确的开发项目。开发人员先根据用户对需求的说明建立一个系统原型,再与用户沟通。一般用户看到一些实际的东西后,对需求会有更为详细的解释,开发人员可根据用户的说明进一步完善系统原型。这个过程重复几次后,系统原型逐渐向最终的用户需求靠拢,从根本上减少需求变更的出现。

相关主题