软件外包项目与需求工程 ——绍兴电力局软件项目外包管理实践探讨

2013-11-27 09:32:21 电力信息化  点击量: 评论 (0)
摘 要:作者结合自身工作实践,深入探讨了在软件外包项目管理过程中,如何有效地进行需求工程的相关工作,从而保证承包商获取完整并符合用户真实意愿的项目需求,以及减少因需求变更失控带来的可能危害。关键字
2.3 双方对需求的误解
对用户描述的需求,不同的人员可能有不同的理解。如果需求分析员误解了需求,那会导致后续的开发人员错误的开发。不论是复杂的项目还是简单的项目,需求分析员和用户都有可能误解需求,因此需求文档和评审工作必不可少。
 
2.4 用户经常变更需求
需求变更通常会对项目的进度、成本、资源产生很大的影响,这是软件承包商非常畏惧的问题。很多情况下用户方也具有不可推卸的责任,如:在项目初始阶段不愿意认真地整理需求、确认需求,总是想着“以后反正可以修改,以后再说…”,这样做的结果可想而知,大量的需求变更,频繁的返工,导致承包商丧失工作激情,以致项目最终不了了之。
 
从以上列举的几点来看,要减少因为需求导致项目失败的几率,需要软件外包项目的双方好好反省,认真学习需求工作方法,建立一套有效的软件项目需求开发管理过程体系和方法。
 
三、       需求工程的概念
为了进行有效的改进,我们首先需要划分并定义清楚需求相关工作的主要内容及其目标。
上述阐述中多次提到的“需求工作”,指的是所有与需求直接相关的活动,业界术语又称为“需求工程”。需求工程中的活动可以分为两大类,一类属于需求开发,另一类属于需求管理。需求工程的结构如下图1所示。
需求开发的目的是通过调查和分析,获取用户需求并定义产品需求。需求开发过程域有3个主要活动:              
²      需求调查
需求调查的目的是通过各种途径获取用户的需求信息,产生《用户需求说明书》;
²      需求分析
需求分析的目的是对各种需求信息进行分析,消除错误,刻画细节等。
²      需求定义
需求定义的目的是根据需求调查和需求分析的结果,进一步定义准确无误的产品需求,产生《产品需求规格说明书》。系统设计人员将依据《产品需求规格说明书》开展系统设计工作。
需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求与其他工作成果的一致性,并控制需求的变更。需求管理过程域有3个主要活动:
²      需求确认
需求确认是指开发方和客户共同对需求文档进行评审,双方对需求达成共识后做出书面承诺,使需求文档具有商业合作效果。
²      需求跟踪
需求跟踪是指比较需求文档与后续工作产品之间的对应关系,建立与维护“需求跟踪矩阵”,确保产品依据需求文档进行开发。
²      需求变更控制
需求变更控制是指依据“变更申请-审批-更改-重新确认”的流程处理需求的变更,防止需求变更失去控制而导致项目发生混乱。
 
四、       绍兴电力局进行“需求工程”改进的实践探讨
4.1 甲方需建立合理的项目组织结构
为了有效地进行需求开发和管理活动,我局根据企业自身特点配套建立一套职责清晰、分工明确的项目组织结构。其中对于需求开发和管理工作,我们专门设置了“甲方需求联络员”这样一个岗位,负责用户需求的提出,以及向软件承包商进行用户需求的解释工作,如图2。
图2:软件外包项目组织结构
“甲方需求联络员”岗位的设置,保证了甲方有足够的时间和人力资源用于用户需求的获取、整理、解释和确认工作,同时又做到了需求归口统一,最终理解的一致性。对于软件承包商而言,“甲方需求联络员”的设置大大减少了承包商需求分析员组织协调的时间,便于最高效地获取用户的真实需求。
 
 
大云网官方微信售电那点事儿

责任编辑:和硕涵

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞