当前位置:文档之家› 第3章需求分析详解

第3章需求分析详解

分析小组成员主要包括领域专家、系统分析员;
客户访谈 问题分析与确认
20
与用户沟通的方法
1、访谈
2、面向数据流自顶向下求精
3、简易的应用规格说明技术 4、快速建立软件原型
21
3.2.1.访谈
正式的访谈:具体问题的问答形式; 非正式的访谈:开放式、交互性的问答。 书面调查:调查大量人员意见; 情景分析技术:对用户将来使用目标系统解决某个具 体问题的方法和结果进行分析。 1)能在某种程度上演示目标系统的行为,便于理解; 2)用户在需求分析过程中始终扮演积极主动的角色。
某出版社系统调查表
编号 提出问题
1
2 3 4 5 6 7 8 9
您在哪个部门工作?
出版业务流程是什么? 您每日都处理那些文件、数据、报表? 工作中手工处理特别麻烦的事情是什么? 工作中手工处理什么问题解决不了?影响效率的问题有哪些? 您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些 办法? 您的部门需要成本核算和统计的内容有哪些? 您的部门采用计算机管理工作情况如何? 如何改进业务流程使之更合理?
消除数据冗余的程度。
3.1.3.导出系统的逻辑模型
导出详细的系统逻辑模型。
数据流图 数据字典 实体-联系图
姓名
性别
编号
教 师
1 教 N
状态转换图
主要的处理算法
课程名
课 程
学时
学分
3.1.4.修正系统的开发计划
修正在可行性分析阶段制定的初步的开发计划。
3.2 与用户沟通获取需求的方法
图:软件需求分析的通信途径
3.2.3.简易的应用规格说明技术
前两种方法中,用户比较被动。ቤተ መጻሕፍቲ ባይዱ
是一种面向团队的需求收集方法,是一种主流技术。 它提倡用户与开发者密切合作、共同标识问题、提出 解决方案,确定基本需求。
初步访谈
召开会议 小组讨论
汇总需求
简易的应用规格说明技术
进行初步的访谈,初步确定待解决的问题的范围和解
决方案。 开发者和用户分别写出“产品需求” 会议前准备 开会讨论 起草完整的软件需求规格说明书
1、功能需求 系统必须完成的所有功能 ( 输入、输出、加工 ); 1)强制的需求; 2)希望的需求; 3)可选的需求。
2、性能需求 系统必须满足的时间、空间约束,通常包括响应时 间、信息量速率、容量、安全性等;
3、可靠性需求 定量指出系统的故障率和使用程度,一个衡量可靠性 的参数是平均失效前时间 (MTTF, Mean Time To Failure),定义为随机变量、出错时间等的"期望值"。 4、出错处理需求 系统对环境错误如何处理,这类错误并不是由系统本 身造成的。仅限于关键部分,尽可能少;
5. 可理解性:需求描述不应该使用太多专业化词汇; 6. 可修改性:应该保证能够比较容易接纳修改; 7. 可追踪性:将分析后的需求与原始需求联系起来。
3.1 需求分析的任务
1. 通过对目标问题、用户要求和目标环境的研究、 分析和综合,建立抽象级的分析模型 (Analysis
Model);
2. 准确地、完整地体现用户需要的功能、性能及其 他要求,规范地通过“软件需求规格说明书” (SRS, Software Requirement Specification) 表达出来。
例1:有一个大学图书管理系统,该系统除了一般的 图书管理功能外,还能够为学生和教工从其他图书馆 借阅图书和文献资料提供服务。 因此系统应该具备以下功能: ⑴ 基本数据维护功能 ⑵ 基本业务功能 ⑶ 数据库管理功能 ⑷ 信息查询功能
1. 功能需求 ⑴基本数据维护功能: 提供使用者录入,修改并进行维护基本数据的 途径。基本数据包括读者的信息、图书资料的相关 信息,可以对这些信息进行修改,更新。 ⑵基本业务功能: 读者借、还书籍的登记管理功能,随时根据读 者借、还书籍的情况更新数据库系统,如果书籍已 经借出,可以进行预留操作,书籍的编目、入库、 更新等操作。
② 通过追踪这些细化的数据流图产生了新的问题,新的问题 的答案可能在数据字典中增加新的条目,并且将产生新的 算法; ③ 细化过程中注意及时的更新数据字典; 4、书写文档 ① 系统规格说明
② 数据要求
③ 用户系统描述 ④ 修正的开发计划
沿数据流图回朔 书写文档 用户复查 修正开发计划 细化数据流图
审 查 和复审
5、接口需求
系统与环境通信的格式:用户接口、硬件接口、软件 接口、通信接口等;
6、约束 在设计或实现系统时应遵守的条件:精度、工具和语 言约束、设计约束、标准、硬件平台; 7、逆向需求 系统不应该做什么,选取澄清真实需求且可消除误 解的逆向需求,且不需定量分析; 8、将来可能出现的要求 明确列出当前不属于系统开发范畴,将来很可能会提 出的要求。
3.2.4 快速原型法
快速原型:快速建立起来的旨在演示目标系统主要功 能的可运行的程序。 是最准确、有效和强大的需求分析技术。 快速:快速的提供给用户一个可运行的软件; 容易修改:根据用户的要求可迅速构建新的原型;
问 题:
成本问题; 方法和工具问题。
快速建立软件原型
为了快速地构建和修改原型,通常使用下述3种方法
④ 对系统可靠性的需求:要求系统失败发生率小 于1%。
3. 领域需求 例如:对“大学图书管理系统”,提出一些与 图书管理的业务相关的需求: ⑴ 图书编目要求按照《中国图书馆分类法》进行; ⑵ 由于版权限制,某些文献资料只能在图书馆规定 的阅览室阅读,并限制复制和打印。 第一条需求是对遵循我国图书管理的规定,执 行对图书的分类管理的标准。而第二条需求则是版权 法对图书馆文献资料的保护的需要,描述了对一类文 献资料有限制的使用和服务。
⑶数据库管理功能: 对所有图书信息及读者信息进行统一管理维护 的功能,对书籍的借还也要进行详细的登记,以便 协调整个图书馆的运作。 ⑷信息查询功能: 提供对各类信息的查询功能,如对本图书馆的 用户借书信息,还书的信息,书籍源信息,预留信 息等进行查询,对其他图书馆的书籍、资料源信息 的查询功能。
2.非功能需求
3.3.1 分析建模

结构化分析实质上是一种创建模型的活动。 需求分析过程应该建立3种模型,它们分别 是数据模型、功能模型和行为模型。
结构化分析方法( Structured Analysis ,SA )
面向数据流进行需求分析的方法 适合于数据处理类型软件的需求分析
36
结构化分析模型的组成结构
主要的文档。
软件需求说明书的编写提示 (GB856T—88)
软件需求说明书的编写提示
1 引言
1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料
2 任务概述
2.1 目标 2.2 用户的特点 2.3 假定和约束
软件需求说明书的编写提示
3 需求规定
3.1 对功能的规定 3.2 对性能的规定
第三章
需求分析
3.1、需求分析的任务
3.2、与用户沟通获取需求的方法 3.3、分析建模与规格说明 3.4、实体-联系图 3.5、层次图和IPO图 3.6、验证软件需求
知识点
需求分析概述
需求分析的步骤
获取需求的方法
分析建模与工具
验证软件需求
需求分析概述
可行性研究从概念上定义软件的总体目标,粗略地 了解了用户的需求。需求分析进一步精化软件的作 用范围,明确系统必须完成的功能,对目标系统提 出完整、准确、清晰、具体的要求。 需求分析由软件分析人员与用户共同完成。 需求获取面临的挑战
① 系统安全性需求:为保证系统安全性,对本图 书馆的各项功能进行分级、分权限操作,对各类用户 进行确认。对其它图书馆借阅图书和文献资料服务控 制访问范围:如限IP、限用户等。
② 对系统可用性的需求:为了方便使用者,要求 对所有交互操作提供在线帮助功能。
③ 对系统查询速度的需求:要求系统在20S之内 响应查询服务请求。
和工具:
(1) 第四代技术
(2) 可重用的软件构件
(3) 形式化规格说明
3.3 分析建模与规格说明
什么是模型?
模型,就是为了理解事物而对事物做出的一种
抽象,是对事物的一种无歧义的书面描述。
模型通常由一组图形符号和组织这些符号的规
则组成。
模型的作用
在建模过程中了解系统; 通过抽象降低复杂性; 有助于回忆所有的细节; 有助于开发小组间的交流; 有助于与用户的交流; 为系统的维护提供文档 。
分析建模与规格说明
3.3.2. 软件需求规格说明(SRS)
Software Requirement Specification
通常用自然语言+模型,完整、准确、具体地描述 系统的数据要求、功能需求、性能需求、可靠性和 可用性要求、出错处理需求、接口需求、约束、逆 向需求以及将来可能提出的要求。
软件需求规格说明书,是需求分析阶段得出的最
10
11
哪些问题是目前传统手工方法根本无法解决的?
出版社计算机管理信息系统需要解决什么问题?
3.2.2.面向数据流自顶向下求精
结构化分析方法:面向数据流自顶向下逐步求精进行 需求分析的方法。
分析的对象:可行性分析中得到的数据流图。 主要目标:把数据流和数据存储定义到元素级别。
从数据流图的输出端数据流开始分析: 确定数据元素的来源,初步定义有关的算法; 确定数据元素的新的信息。 在复查的过程中进行数据流图的细化。
3.1 需求分析的任务
1. 确定系统的综合要求
2. 分析系统的数据要求
3. 建立系统的逻辑模型
4. 修正系统开发计划
5. 复审、验证需求分析
6. 编写软件需求规格说明书
3.1.1确定系统的综合要求
提问并思考:
相关主题