4.结构化需求分析
2021-05-10 10:33:46 1 举报
AI智能生成
根据课程《软件工程》PPT梳理成的思维导图
作者其他创作
大纲/内容
思考题
结构化分析要创建哪些模型?
加工逻辑描述有哪些方法?
课后练习:结合具体实验项目练习结构化分析方法
需求分析的任务
需求分类
功能性需求
功能上应做什么
– 系统需要提供的服务或功能:如图书检索
– 系统对特定输入的处理方式:如对非法输入的提示
– 系统在特定环境下的行为:如长时间无操作时的屏保
非功能性需求
应满足的约束和限制
– 对系统功能或服务附加的质量约束,例如响应时间、容错性、安全性等——客户所关心的(外部质量)
– 从系统开发和维护角度出发的质量属性,例如可理解性、可扩展性、可配置性等——软件开发或维护者所关心的(内部质量、软件所特有)
软件需求的不同层次
需求分析步骤
需求分析原则
需求建模方法
结构化
数据建模—E-R图
概念数据模型
一种面向问题的数据模型,是按照用户的观点对数据建立的模型
概念数据模型包含的信息
数据对象
实体
定义
客观世界存在且可以相互区分的事物
可以是人,物,抽象概念
图形描述:矩形框
举例
计算机,学生,课程…
数据对象的属性
定义
实体某方面的特征
图形描述:椭圆
举例
学生实体有学号、姓名、班级等属性
注意事项
属性中的“键”
属性不能与其它实体发生联系
根据对解决问题的理解来适当确立实体的属性例如:在“机动车管理系统”和“机动车设计系统”中汽车属性的定义侧重点不一样
数据对象彼此间相互连接的关系
定义
实体之间的相互关系
图形描述:菱形
联系的3种类型
一对一联系(1∶1)
一对多联系(1∶N)
多对多联系(M∶N)
举例
学生实体与课程实体之间的选课关系
注意
联系也可能有属性
E-R模型中的基本符号
建立实体模型的步骤
分析系统数据域和功能域,确定实体
确定实体之间的联系
确定实体及联系的属性
举例
工资计算系统
系统描述
工资计算系统中,单位对职工的工作情况进行考勤,根据出勤结果、基本工资档案、奖金及扣款计算职工的实发工资
实体
职工
出勤
奖金
扣款
关系
考勤
奖励
扣款
属性
职工实体
职工号
性别
职称
年龄
部门
基本工资等属性
层次方框图
用树形结构的一系列多层次的矩形框描述数据的层次结构
业务功能表
Warnier图
法国计算机科学家Warnier提出了表示信息层次结构的一种图形工具
和层次方框图类似,Warnier图也用树形结构描绘信息,比层次方框图提供了更丰富的描绘手段
面向数据流的需求分析方法
使用数据流图DFD与数据字典DD来描述需求
适合于数据处理类型软件的需求描述
核心思想
分解化简问题,将物理与逻辑表示分开,对系统进行数据与逻辑的抽象
数据流图
Data Flow Diagram
是描述数据处理过程的工具
1.数据流图的含义
以图形的方式描述数据流从输入到输出的传输变换过程
2.数据流图的特点
a.抽象性
b.概括性
c.层次性
3.数据流图基本符号
数据流图中的基本图形元素有4种
数据流与加工的关系(1)
数据流与加工的关系(2)
数据流图的用途
用户和开发人员交流信息的工具
“总体设计”中模块结构图形成的基础
作为分析和设计的工具,导出新系统的不同物理解法
数据流程图的画法(参考)
(1)画数据流图的一般原则
自外向内,自顶向下,逐层细化,完善求精
(2)数据流图的分层方法
一套分层的数据流图由顶图、底图和中间层的数据流图所组成
称上层图为下层图的“父”图,下层图称为上层图的“子”图
(3)分层法绘制数据流图的几个问题
① 编号的设置
② 父图与子图的平衡
③ 局部数据存贮
④ 处理逻辑的分解与分细的程度
⑤ 由左到右绘制数据流图
⑥ 绘制数据流图时,可以先忽略枝节(次要)的信息
⑦ 合理地命名
实例
假如要分析一家公司的营销系统。其采购部门每天须要按销售部门提供的订货单(须订的货物)向供应商采购货物。每种货物的数量都存放在数据存储货物库存中,销售和采购使每种货物数量发生的变化能够在此数据存储中及时被反映出来。而资金的汇总、核对等工作由其会计部门处理
数据流图
第0层数据流图
第1层数据流图
销售系统
采购系统
会计系统
补充资料
http://www.cnblogs.com/springside-example/archive/2012/04/29/2530102.html
数据字典(DD)
用途
对数据流图中各种成分进行详细定义
软件分析和设计时,提供关于数据的描述信息
数据流图和对数据流图中每个元素的精确定义构成系统的规格说明
数据字典是开发数据库的第一步
四类条目
数据流条目
例:工资系统中的出勤表数据流在数据字典中的条目描述为
数据流名称
出勤表
数据流别名
无
说明
由人事部门每月月底上报的职工考勤统计数字
数据流来源
人事部门
数据流流向
加工1.2(计算应发工资)
数据流组成
出勤表 = 年份+月份+职工号+出勤时数+病假时数+事假时数+旷工时数
数据流量
1份/月
数据项条目
例:出勤表中的职工号数据项在数据字典中的条目描述
数据项名称
职工号
数据项别名
employee_no
说明
本单位职工的唯一标识
类型
字符串
长度
6
取值范围及含义
1~2位(00..99)为部门编号:3~6位(XX0001..XX9999)为人员编号
数据文件条目
例:工资系统中的职工工资档案文件在数据字典中的条目描述为
数据文件名称
工资档案
说明
单位职工的基本工资、各项津贴及补贴信息
数据文件组成
职工号+国家工资+国家津贴+职务津贴+职龄津贴+交通补贴+部门补贴+其他补贴
组织方式
按职工号从小到大排列
存取方式
顺序
存取频率
1次/月
数据加工条目
例:工资系统中的计算应发工资这个加工在数据 字典中的条目描述为
数据加工名称
计算应发工资
加工编号
1.2
说明
根据职工的工资档案及本月奖金发放表数据计算每个职工的应发工资
输入数据流
奖金发放表及工资档案
输出数据流
应发工资表
加工逻辑
DO WHILE 工资档案文件指针未指向文件尾
从工资档案中取出当前职工工资的各项基本数据进行累加
在奖金发放表中按职工号查找到该职工的奖金数
对奖金数与工资基本数据的累加和进行求和得到该职工的应 发工资数ENDDO
从工资档案中取出当前职工工资的各项基本数据进行累加
在奖金发放表中按职工号查找到该职工的奖金数
对奖金数与工资基本数据的累加和进行求和得到该职工的应 发工资数ENDDO
描述
三种常用的描述方法
结构化语言
介于自然语言和形式语言之间的一种半形式语言,是自然语言的一个受限制的子集
三种基本结构
顺序结构
自然语言简单祈使句序列
举例
选择结构
IF–THEN-ELSE; CASE-OF-ENDCASE
if - then - else ; case - of - endcase
举例
循环结构
WHILE-DO; REPEAT-UNTIL
while - do ; repeat - until
举例
判定表
一种二维的表格,常用于较复杂的组合条件
通常由四部分组成
条件列表:所有相关条件
动作列表:操作的定义
条件组合:各条件的取值组合
对应的动作:在各条件取值组合下所执行的操作
“职务津贴计算”判定表
判定树
判定树是判定表的图形表示
与判定表的作用大致相同,但比判定表更加直观,易于理解和掌握
例:用判定树 对“基本奖金计算”加工逻辑描述
基本符号
行为建模—状态转换图
用途
描述系统状态随外部信号或事件进行转换的情况
符号
圆圈
表示可得到的系统状态
有向线
状态迁移的方向
状态转换表
状态转换图的等价表示方式
列
状态
行
信号或事件
状态转换图的细化(略)
行为建模— Petri网(略)
1962年德国人Petri提出
用途
描述同步模型
描述并发系统
基本符号
描述静态系统的Petri网
需求验证
一致性
保证需求之间不能相互矛盾
完整性
能够描述用户需要的每一个功能或者性能
现实性
通过现有软件、硬件技术能够实现所定义的需求
有效性
证明确实能够解决用户面对的问题
0 条评论
下一页