第 4 章 软件需求分析与建模
4.1 需 求 分 析
4.1.1 需求分析的任务
需求分析的主要任务就是要通过软件开发人员与用户的交流和
讨论,准确地获取用户对系统的具体要求。需求分析中任何的含
混不清或微小的遗漏都可能会造成系统开发中的重大问题甚至导
致失败。在正确理解用户需求的前提下,软件开发人员还需要将
这些需求准确地以文档的形式表达出来,作为设计阶段的依据。
需求分析阶段结束时需要提交的主要文档是软件规格说明书。
第 4 章 软件需求分析与建模
由于需求分析研究的对象是用户对开发项目的要求,在实现
这一阶段任务时必须要注意两个问题。问题之一在于:一个项目
的参与者既包括软件设计开发人员,又包括用户,他们之间交流
的难题会给软件的开发留下隐患。用户往往在软件交付使用时,
才会发现系统存在的一系列问题。这就要求双方必须在需求分析
过程中加强沟通和协调。一方面,软件设计人员应尽量使用通俗
的语言与用户进行交流;另一方面,用户应积极主动地配合软件
设计人员的工作。问题之二在于:为了保证需求阶段能够提出完
整、准确的系统逻辑模型,开发人员必须花费足够的时间,全面
了解用户的需要,绝不能在需求模糊的情况下仓促进行软件的设
计和编程。根据国外的统计资料表明,在典型环境下开发软件,
需求分析阶段的工作量大约要占到整个系统开发工作量的 20% 左
右。
第 4 章 软件需求分析与建模
用户对系统的需求通常可分为如下两类:
(1) 功能性需求:主要说明了待开发系统在功能上实际应做
到什么,是用户最主要的需求。通常包括系统的输入、系统能
完成的功能、系统的输出及其他反应。
(2) 非功能性需求:从各个角度对所考虑的可能的解决方案
的约束和限制。主要包括:
过程需求 ( 如交付需求、实现方法需求等 ) 、产品需求 ( 如
可靠性需求、可移植性需求、安全保密性需求等 ) 和外部需求
( 如法规需求、费用需求等 ) 等。
第 4 章 软件需求分析与建模
4.1.2 需求分析的步骤
需求分析阶段的工作,大致可分为如下几个步骤进行:
(1) 通过调查研究,获取用户的需求。
软件开发人员只有通过认真细致的调查研究,才能获得进行
系统分析的原始资料。需求信息的获取可来源于阅读描述系统需
求的用户文档;对相关软件、技术的市场调查;对管理部门、用
户的访问咨询;对工作现场的实际考察等。
- 1
- 2
前往页