软件开发项目管理需求挖掘及风险评估的2点技巧

软件开发管理的重点应放在软件开发项目的启动阶段,在启动阶段要注重软件开发项目的需求分析,注重项目的风险评估,注重项目的业务背景研究。

一、软件开发项目管理在具体业务软件系统开发中的重要作用

软件开发项目的开发过程不同于其他产品的制造过程,在很大程度上,软件开发是计算机技术、通信技术、信息技术加上具体的业务工作交叉的实践性工程项目。系统能否开发成功,不仅取决于成熟技术和先进的开发方法,本文认为更重要的取决于参与开发的技术人员的能力,参与开发的业务人员的业务素质和对本专业掌握的水平。经常从事系统软件开发工作的人都知道,软件开发过程中具有很多的不可预知性,这也是软件开发项目的一个特点。在开发过程中,如何将这种不可预知的东西变成可以预知的东西。对这一问题,项目管理就是最好的解决问题的工具。因此,在软件开发活动中引入规范、科学、系统的软件开发项目管理方法是非常必要的。

本文认为在软件开发项目中引进项目管理时要注意软件开发项目管理与其他管理相似,都是管理人员根据经验、事实和原理做出决策。因此,在软件开发活动过程中实施项目管理时,应该接合实际,灵活运用项目管理方法和使用管理工具,切勿生搬硬套。

二、软件开发项目需求及获取方法

软件系统的需求是指用户对软件的功能的要求,就是用户希望软件系统能做什么事情,完成什么样的功能,达到什么样的性能。软件需求不像硬件需求,有形的、客观的、可描述的、可检测的,软件需求具有模糊性、不确定性、变化性和主观的特点。

软件需求包括功能需求、性能需求、环境需求、资源需求、成本消耗需求、开发进度需求、现实约束、预先估计以后系统可能达到的目标等。从项目开发的角度看,软件需求主要包括两大类型:功能需求和非功能需求。其中,功能需求是主要的需求,需要计算机解决的问题,就是对数据的处理的要求。功能需求规定了系统必须执行的功能。而非功能需求是一些限制性的要求,是对实际使用环境所做的要求,如性能要求、安全要求、可靠性要求等。非功能要求比功能要求更严格,更不容易满足,这是因为,如果不能满足非功能的要求,系统将无法运行。

需求获取作为项目伊始的活动,是非常重要的。众所周知,如果需求调研不充分、用户需求描述不完整或不准确,项目成功的可能性几乎等于零。因此,根据软件开发项目特点,采取相应的需求获取方法,是项目取得成功的关键因素。

在实际系统开发中,经常会发现,由于需求方缺乏软件系统开发的专业知识和项目管理经验,往往一开始自己也不知道要开发什么样的系统,尽管对业务很熟,但对数据、业务流程的整理和归纳上很难符合系统开发的要求,经常是走一步看一步,不断地提出和更改需求,使得系统开发方难于应付。另一方面,开发方由于行业知识的缺乏和需求分析人员水平的低下,不能正确或完全理解用户的需求说明,而又没有加以严格的评审、确认,经常是以想当然的方法进行系统设计。系统开发出来后,与用户的期望相差甚远。因此,需求分析必须注重双方理解和认识的一致,逐项逐条地进行确认。为了作到这一点,根据项目特点采用合适的需求获取方法就显得非常重要。

软件开发需求管理是软件开发项目管理中一项十分重要的工作,在众多失败的软件开发项目中,由于需求原因导致的占相当大的比例,因此,需求管理将对软件开发项目能否最终获得成功产生至关重要的影响。但在实际软件开发过程中,很多开发人对需求的认识还远远不够。就本人的实际经验来看,软件开发工作不是简单的技术工作,而是一项系统的软件需求开发管理工作。项目管理人员要想做好软件开发项目管理工作,就必须要研究如何利用需求管理理论和方法,获取需求;采取什么方法对软件系统功能进行描述---需求建模。其目的是理解用户的功能要求,澄清模糊的功能需求,使软件工程师和软件用户对系统功能的理解达到一致。就实际工作经验来说,不管采用什么方法,都要体现以用户为中心的思想,因为软件最终的主人是用户,这一点非常重要。

陕西弈聪软件信息技术股份有限公司
电话:13679229477    02989322522
陕西省西安航天基地神州四路科为城墅20栋4301