软件工程4:需求分析

一、需求分析——综合需求

1.基本任务

准确地回答“系统必须要做什么?”

2.软件需求规格说明书

以书面形式准确的描述软件需求。

3.需求分析参与人员

**分析员:**分析员必须通过与用户沟通获取用户对软件的需求

**用户:**用户必须把他们对软件的描述尽量准确、具体的描述出来

必须严格审查验证需求分析的结果。

4.目前用于需求分析的结构化分析方法遵守的准则

**数据模型:**理解并描述问题的信息域

**功能模型:**定义软件应完成的功能

**行为模型:**描述作为外部事件结果的软件行为

层次的方式展示细节

5.确定对系统的综合要求

1.功能需求:系统必须提供的服务

2.性能需求:系统必须满足的定时约束或容量约束

3.可靠性和可用性需求:可靠性需求定量地指定系统的可靠性

4.出错处理需求:说明系统对环境错误应该怎么响应

5.接口需求:描述应用系统与它的环境通信的格式

6.约束:设计或实现应用系统是应遵守的限制条件

7.逆向需求:说明软件系统不应该做什么

8.将来可能提出的要求:应该明确的列出那些虽然不属于当前系统的开发范畴,但是据分析将来很可能会提出来的要求。

例:开发一个局域网聊天软件的及时通信工具,情分析其总和要求。使用服务器转发模式进行客户端通信

1.功能需求:客户端,能够通过终端想特定的用户进行及时信息发送服务器端,对客户端信息进行接收和转发。

2.性能需求:网络延时

3.可靠性和可用性需求:服务器端程序一旦出现故障具有自启功能

4.出错处理需求:系统对环境错误给出相应提示信息并退出

5.接口需求:系统与它的环境通信,即网络接口

6.约束:比如客户端一次可发送的最大字节数

7.逆向需求:比如用户可以查看聊天记录,但不能修改

8.将来可能提出的要求

6.分析系统的数据要求

  • 任何一个软件系统本质上都是信息处理系统
  • 必须分析系统的数据要求,这是软件需求分析的一个重要任务
  • 分析系统的数据要求通常采用建立数据模型的方法
  • 复杂的数据由许多基本的数据元素组成、数据结构表示数据元素之间的逻辑关系
  • 利用数据字典可以全面准确的定义数据
  • 常常利用图形工具辅助描绘数据结构
  • 常用的图形工具有层次方框图和Warnier图

二、需求分析——导出系统逻辑模型

1.导出模型

综合之前综合要求和数据要求的分析结果,可以导出系统的详细的逻辑模型。

  • 数据流图
  • 实体-联系图
  • 状态转换图
  • 数据字典
  • 主要的处理算法

2.修正系统开发计划

根据在分析过程中获得的对系统的更加深入具体的了解,可以比较准确的估计系统的成本和进度,修正一点制定的开发计划。

三、获取用户需求的方法

总体有四种:1.访谈;2.面向数据流自顶向下求精;3.建议的应用规格说明技术;4.快速建立软件原型

1.访谈

分正式和非正式访谈

  • 可采用调查表形式
  • 可使用情景分析技术

2.面向数据流自顶向下求精

结构化分析方法的实质。

进一步细化可行性研究阶段获得的高层数据流图。包括建立:

  • 详细的数据流图:描绘数据在软件系统内从输入移动到输出的过程中所经受的变换;
  • 数据字典:定义数据流图中包含的元素
  • 实体关系(ER)图:从用户角度描述数据
  • IPO图:描述数据流图中处理框的功能和算法。

3.简易的应用规格说明技术

一种面向团队的需求收集法,提倡用户与开发者密切合作,共同表示问题,提出解决方案要素,商讨不同方案并指定基本需求。

过程:

初步访谈——》写出产品需求——》开会讨论,指定规格和说明——》完整的软件需求规格说明书

4.快速建立软件原型

快速原型就是快速建立旨在延时目标系统主要功能的可运行程序

**要点:**实现用户看得见的功能,省略目标系统“隐含”功能。

5.建立和修改原型的方法和工具

第四代技术、可重用的软件构建、形式化规格说明和原型环境

四、案例—原型法

快速原型法:快速建立旨在延时目标系统主要功能的可运行程序。

用户试用原型系统,提供反馈意见。

原型法的工作步骤

  • 首先快速分析
  • 然后构造原型
  • 用户和系统开发人员使用并评价原型
  • 系统开发人员修改和完善原型系统

原型法的优点

  • 原型法符合人们认识事物的规律,系统开发循序渐进,反复修改,确保较好的用户满意度。
  • 开发周期短,费用相对较少
  • 易学易用,减少用户的培训时间,应变能力强

原型法的局限:

  • 原型法不适合发规模系统的开发
  • 其开发过程管理要求高
  • 易使用户失去信心
  • 缺乏规范化的文档资料
  • 不适合大型、复杂性、难以模拟、存在大量运算、逻辑性强的处理系统
  • 不适合管理基础工作不完善、处理过程不规范的系统等

五、需求分析—分析建模

模型:对事物做出的一种抽象

模型构成:一组图形符号和组织这些符号的规则组成

结构化分析实质上是一种创建模型的活动

需求分析过程应建立3种模型

数据模型、功能模型、行为模型

实体-联系图:描绘数据对象及数据之间的关系,适用于建立数据模型的图形

数据流图:描绘当数据在软件系统中移动时被变化的逻辑过程,指明系统具有变换数据的功能,因此,数据流图是建立功能模型的基础。

状态转化图:指明了作为外部事件结果的系统行为。转化状态图是行为建模的基础。

发布了106 篇原创文章 · 获赞 21 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/jiangSummer/article/details/105029379