5.1 立项管理内容
5.1.1需求分析
1.需求分析概念
需求分析是指对要解决的问题进行详细的分析,弄清楚项目发起人及项目其他干系
人的要求、待开发豹信息系统要解决客户和用户的业务问题以及问题的来龙去脉。可以
说,“需求分析”就是确定待开发的信息系统应该“做什么”。
2.需求分析工作的特点
需求分析是一项重要的工作,也通常被认为是一件最困难的工作。该阶段工作有以
下特点。
(1)用户与开发人员之间存在沟通方面的困难。
一般来说,信息系统由软、硬件平台、应用软件、数据库系统、网络系统和机房系
统等子系统组成。在软件生存周期的需求分析阶段、设计阶段、编码阶段、测试和集成
阶段、系统运营阶段中,其他4个阶段都是面向软件技术问题,只有本阶段是面向用户
的。需求分析是对用户的业务活动进行分析,明确在用户的业务环境中信息系统应该“做
什么”。但是在开始时,开发人员和用户双方都不能准确地提出系统要“做什么?”。因
为软件开发人员不是用户问题领域的专家,不熟悉用户的业务活动和业务环境,又不可
能在短期内搞清楚;而用户不熟悉计算机应用的有关问题。由于双方互相不了解对方的
工作,又缺乏共同语言,所以在交流时存在着隔阂。
(2)周户的需求是动态变化的。
对于一个大型而复杂的信息系统,用户很难一次精确而完整地提出它的功能和性能
要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。
有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑
给软件开发带来困难。
(3)生命周期中不同阶段系统变更的代价呈非线性增长。
需求分析是软件开发的基础。假定在该阶段发现一个错误,解决它需要用一小时的
时间,如果拖到设计、编程、测试和维护阶段解决,则一般要花2.5,5,25,100倍的
时间。
因此,对于大型复杂系统而言,首先要进行可行性研究。使用人员、开发人员(往
往还有咨询人员)对用户的要求及现实环境进行调查、了解,从技术、经济和社会因素
三个方面进行研究并论证该信息系统项目的可行性,根据可行性研究的结果,决定项目
的取舍。
各省软考办 | ||||||||||