软件工程 第三章 需求分析

 

第三章 需求分析
软件工程中包含需求、设计、编码、测试
-. 需求开发
 : 需求获取、需求分析、编写规格说明书、需求验证

 a 需求获取
 确定需求开发过程确定如何组织需求的收集、分析、细化、核实的步骤,并编写文档
 
 b 需求分析
 绘制关联图、创建开发原型、分析可行性、确定需求优先级、为需求建立模型、编写数据字典、应用质量功能调配

 c 编写规格说明书
 项目视图和规范文档包含了业务需求,而是用实例文档则包含了用户需求

 d 需求验证
 审查需求文档、依据需求编写测试用例、编写用户手册、确定合格的标准

二、需求管理
 需求开发的结果应该有项目视图和规范文档、使用实例文档、软件需求规格说明及相关分析模型。
 快速建立软件模型:
  模型与工具
   数据模型--实体-关系图
   功能模型--数据流图
   行为模型--状态转换图
 
软件需求规格说明:
  自然语言、准确、具体描述系统的数据需求、功能需求、性能需求、可靠性和可用性、出错处理需求、接口需求
约束、逆向需求。
 
软件性能: 响应时间、并发用户数、吞吐量、性能计数器、TPS、HPS。
软件可靠性:软件可靠性是软件系统在规定的时间内及规定的环境条件下,完成规定功能的能力。
 
数据对象:
外部实体、事物、行为、事件、角色、单位、地点、结构
数据对象间彼此间是关联的,它只封装了数据、没有对数据的操作
属性:
定义了数据对象的性质,属性用标识符表示
联系:
数据对象彼此间相互连接的方式称为联系
也称为关系
实体-关系图的符合简称ER图

第一范式:每个属性值必须是原子值,即仅仅是一个简单值而不包含内部结构
第二范式: 满足第一范式,而且每个非关键字由关键字决定
第三范式: 符合第二范式的条件,每个非关键字属性都仅由关键字决定,而且一个非
关键字属性不能仅仅是另一个非关键字局性的进一步描述

状态转换图(状态图)
 描述系统的状态及引起系统状态转换的事件,来表示系统的行为.

事件:
是在某个特定时刻发生的事件,它是引起系统动作或从一个状态转换的另一个状态的外界事件的抽象

层次方框图
 是用树形的一系列多层次的矩形数据的层次结构。

验证软件需求的途径与方法
 一致性:
 完整性:
 实现性
 有效性

用于需求分析的软件工具:
 PSL/PSA系统用描述从系统信息流、系统结构、数据结构、数据导出、系统规模
系统动态、系统性质、项目管理。

 

 问答

 

1.什么是需求分析,需求分析阶段的基本任务?
需求分析:开发人员准确地理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格
说明的过程。
 基本任务:
 (1)问题识别:双方确定对问题的综合需求,这些需求包括功能需求、性能需求、环境需求、用户界面需求
 (2)分析与综合:导出软件的逻辑模型
 (3)编写文档:编写需求规格说明书,初步用户使用手册、确认测试计划、修改完善软件开发计划

2.什么是结构分析方法?该方法使用什么描述工具?
 SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。
 顶层抽象地描述整个系统,
 中间层则是从抽象到具体的过渡,使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。
 底层具体地画出系统工程的每个细节
 

3. 结构化分析方法通过那些步骤来实现?
 1.了解当前系统的工作流程,获取当前系统的物理模型
 2.抽象当前系统的逻辑模型
 3.建立目标系统的逻辑模型
 4.作进一步补充和优化

4.画数据流图应该注意什么事项?
命名:不能使用缺乏具体含义的名字,加工名能反映出处理的功能。
画数据流图而不是控制流:数据流名称只能是名称或名词短语,整个图中不反映加工的执行顺序。
一般不画物质流。
每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。
  编号:某个加工分解成加工一张数据流图是,上层为父图,下层为子图。子图应编号子图上的所有加工也应编号
子图的编号应与父图的编号相对应。
 父图与子图的平衡:子图的输入输出,数据流通父图相应加工的输入输出数据流必须一致。
 局部数据存储:当某数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储
为局部数据存储。

5.数据字典?作用是什么?共有哪些条目?
 定义数据库流图中的各个具体含义。
 条目:数据流、数据项、数据存储、基本加工。
7.描述加工逻辑有哪些工具?
 加工逻辑的描述:一般用结构化语言,判定表,判定树
 结构化语言是介于自然语言和形式化语言之间的一种半形式化语言。它的结构分里层和内层
 1.外层:用来描述控制,采用顺序、选择、重复三种基本结构。
 a.顺序结构:是一组祈使语句,选择语句,重复语句的属性排列。
 b.选择结构:一般用IF-THEN-ELASE-ENDIF ,CASE-OF-ENDCASE等关键词
 c.重复结构:一般用do-while-endo, repeat-until
2.内层:
 一般采用祈使句的自然语言短语,使用数据字典中的名称和有限的自定义,其动词含义要具体,尽量不使用
形容词和副词来修饰。

8. 什么是IDEF方法?IDEF0方法有哪些特点?
 IDEF方法是美国空军针对计算机辅助制造工程项目中用于进行复杂系统分析和设计方法。是在结构化分析方法基础上
提出来的。
IDEF0描述系统的功能活动及联系,建立系统的功能模型
IDEF1描述系统的信息及联系,建立系统的信息模型。
IDEF2进行系统模型,建立系统的动态模型

IDEF0特点:
 1.采用方框和箭头等简单图形符号描述系统的活动和数据流,描述活动所受的约束条件及实现机制
 2.采用严格的自顶向下、逐层分解的方式建立系统功能模型。

9.SA方法优缺点(sa是一种结构化分析方法,适用于开发数据库处理类型软件的需求分析。利用图形等半形式化工具表达需求、简明)
 1.SA方法是一个静态模型,没有反应处理的顺序,即控制流程。
 2.SA方法使用DFD在分析与描述“数据要求”方面有局限的,只有与数据库技术的实体练习图(ER)结合起来
 3.DFD不适合描述人机界面系统的要求,一些人机交互频繁的软件系统。
 4.SA方法要与形式化方法结合起来,才能更精确地描述软件需求
 5.要借助需求分析工具,提供需求分析的质量及效率

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

你可能感兴趣的:(软件工程 第三章 需求分析)