APP下载

计算机软件项目管理中的需求分析

2016-06-16刘铮

经营者 2016年5期
关键词:需求分析报告用户

刘铮

摘 要 在计算机软件项目管理中,进一步的明确需求分析的重要性,了解需求分析的一般性流程和注意事项有着重要的战略指导意义,有助于计算机软件项目的开发目标的准确达成。

关键词 软件项目 需求分析 用户 报告

随着互联网+时代的来临,计算机软件项目作为市场经济中的“红海”领域,越来越多的经济投资进入到计算机软件项目开发。现阶段,计算机软件项目开发得到了长足的发展,开发技术也更加科学可靠。但即便在更加科学的开发技术之下,仍旧存在一些失败的软件项目开发,或者是开发出来的软件存在极大的缺陷。通过调查表明,忽略了软件项目开发过程中的需求分析,是造成软件项目开发失败的主要原因。因此,在计算机软件项目管理中,进一步的明确需求分析的重要性,了解需求分析的一般性流程和注意事项有着重要的战略指导意义,有助于计算机软件项目的开发目标的准确达成。

一、软件项目管理中需求分析的重要性

在软件项目的开发系统中,需求分析指的是建立一个电脑系统时对这一新的电脑系统的目标、范围、定义和功能时所有需要做的工作。在软件项目开发历史中,很长的时间很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。假如在需求分析时分析者们未能正确地认识到顾客的需要的话,那么最后的软件实际上不可能达到顾客的需要,或者软件无法在规定的时间里完工。需求分析的重要性与困难性主要体现在以下几个方面:

第一,用户与开发人员的交流容易产生极大的理解误区。软件项目的开发实际上是为了解决用户对计算机系统开发的需求,这一阶段是软件项目开发的标志时间,但正由于这是软件开发的第一道工序,其难度不言而喻,用户想要进行软件项目开发,他有着既定的目标,他想要通过软件工程的开发去得到既定的结果,但对于这种既定的结果,用户本身是不明确的。对于开发人员而言,往往会对用户的需求进行计算机语言的表达,这一思考过程中,开发人员只是在客观的理解自己再开发过程中需要“做什么”,但并不能够知道能够产生何种结果。

第二,用户的需求不够精确,一般来说,用户对于软件开发的结果是模糊的,更别提精确到软件的具体功能。只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。

二、计算机软件项目管理需求分析流程及注意事项

(一)获取用户需求

获取用户需求是需求分析的第一道工序,也表示软件项目开发工作的正式开始。在获取用户需求的过程中,作为开发人员必须要尽可能迅速的熟悉项目项目的干系人全貌,力求尽可能的精确确定他们对软件开发项目的实际需求和期望定位。应该逐步的理清干系人的组织结构、领导层级,尽可能的获得干系人全体对软件开发的支持,降低干系人内部对软件工程开发的异议带来的不良影响。

在获取用户需求过程中,需要注意两个方面的事情,一是分析人员要使用符合客户语言习惯的表达,需求讨论集中于业务需求和任务,因此要使用术语。客户应将有关术语(例如:采价、印花商品等采购术语)教给分析人员,而客户不一定要懂得计算机行业的术语。二是开发人员不能够局限于与用户方的技术人员进行交流,而应该与业务部门和实际使用人员进行交流。

(二)分析用户需求

分析用户需求,是在开发人员完整的获取到用户的需求及期望之后,需要做的一项精细的分析工作。在这一过程中,开发人员需要针对软件的实际用户进行一定的需求调研情况,在获取调研数据的过程中,应该与用户方进行前期交涉和知会,确保数据或者信息获取的有效性和真实性。分析用户需求所执行的活动包括:用业务流程图描述系统的整体业务活动,包括系统之间的接口和边界;用数据流程图模型来描述系统的数据流关系;通过过原型向用户展示系统界面以及各项功能模块;采用实体关系图描述实体、属性、关系三者之间的联系。

在需求分析的过程中,开发人员既要尊重用户的需求,也要尊重自身的需求分析过程。一方面,开发人员要进一步的提升自己对客户需求分析的精准性和对应性,就是要分析用户提出的需求当中所衍生出的隐含需求,这一点往往容易忽略掉,这就需要系统分析员在与用户交流当中,关注用户的表情、眼神、用语,避免出现不专业的现象,让客户对于开发人员的需求分析失去信心,另一方面,开发人员要判断用户提出的需求是否合理,对于不合理的需求,开发方要给出不合理的理由和原因,不能够一味地去屈从用户,特别是有的用户需要一再的缩减开发成本,这对于软件开发的质量水平是极其不利的。

(三)需求说明书的编写

需求说明书的编写是开发人员需求分析的书面呈现,其编写的主要目的在于更加具象化的将软件开发过程描述出来,便于开发人员与客户进行相关的交流协作,并且作为软件开发过程中的进度依据,便于对软件开发管理过程中的控制和管理工作。

在编写需求说明书的过程中,开发人员首先应该注意到需求的全面性以及软件共性表达。应该特别注重对于开发过程中模糊不清的需求进行清晰的表达,在需求分析中暂时加上“待定”标志是个方法。用该标志可指明哪些是需要进一步讨论、分析或增加信息的地方,有时也可能因为某个特殊需求难以解决或没有人愿意处理它而标注上“待定”。客户要尽量将每项需求的内容都阐述清楚,以便分析人员能准确地将它们写进“软件需求报告”中去。如果客户一时不能准确表达,通常就要求用原型技术,通过原型开发,客户可以同开发人员一起反复修改,不断完善需求定义。

(四)需求确认与评审

需求确认与评审是不可逾越的两个阶段,有研究表明:由客户发现的一个错误,然后更正错误,约需要多花 90 倍的时间,可以看出,需求确认和评审阶段的重要性。

在这一阶段,关键过程在于确立需求评审的严肃性,在对需求评审的现场,必须要有开发方和用户方双方的领导以及专家的共同在场,开发方在对需求报告进行讲解的过程中,应该巨细无遗,不能放过任何一个功能模块,使得双方共同找出需求调研中不合理的、不完善的、有歧义的、遗漏的问题。需求评审的目的是要获得用户的认可,如果用户以种种理由不以确认,那么系统分析员要尽快拿出原型系统来给用户确认,否则后续的工作将无法顺利开展,并伴随着无穷无尽的需求变更。

(作者单位为华北计算技术研究所)

参考文献

[1] 魏昊,刘建新.浅谈软件项目开发过程中的需求分析和范围管理[J].北京工业职业技术学院报,2014.

[2] 李爱东.浅谈“大学计算机信息技术”网络课件开发的需求分析和需求管理[J].电脑学习,2013(05).

[3] 郭晋秦.软件项目管理在实际开发中的应用与实践[J].电脑编程技巧与维护,2013 (12).

[4] 孙连英,张德政.基于统一软件项目过程管理的监理框架[J].北京联合大学学报 (自然科学版),2014(03).

猜你喜欢

需求分析报告用户
您拨打的用户已恋爱,请稍后再哭
基于用户和电路的攻击识别方法
信用卡资深用户
报告
大学师生需求发展分析
基于UML技术的高校贫困生管理系统建模分析
指挥信息系统模拟训练评估需求分析
应用型本科大学英语后续课程建设之必要性探讨
报告
报告