【软件工程】第三章

简介: 【软件工程】第三章

软件需求分析的任务

1、深入描述软件的功能和性能

2、确定软件设计的约束和软件同其他系统元素的接口细节

3、定义软件的其他有效性需求


常用的分析方法


软件需求分析的原则

从现实中分离功能,即描述要“做什么”而不是“怎么实现”

1、需要能够表达和理解问题的信息域和功能域

2、要能以层次化的方式对问题进行分解和不断细化

分解方法:横向分解、纵向分解


需求分析的步骤

结构化分析方法(SA)就是面向数据流自顶向下逐步求精进行需求分析的方法


数据流图(DFD)

数据流图是什么

是描述数据处理过程的工具,它表示了系统内部信息的流向,并表示了系统的逻辑处理的功能

特征是什么

抽象性、概括性、层次性

面向数据流需求分析方法

结构化分析方法,使用数据流图DFD与数据字典DD来描述

(面向数据流问题的需求分析适合于数据处理类型软件的需求描述)

优缺点

1、总体概念强,每一层都明确强调“干什么”,“需要做什么”,“给出什么”

2、可以反映出数据的流向和处理过程

3、由于自顶向下分析,容易及早发现系统各部分的逻辑错误,也容易纠正

4、容易与计算机处理相对照

5、不直观,一般都要在作业流程分析的基础上加以概括、抽象、修正来得到

6、如果没有计算机系统帮助的话,人工绘制太麻烦,工作量较大

数据流图中的主要图形元素

分层数据流图(一般划分3层)

实例说明

计算机教材销售系统

检查和修改数据流图的原则

数据流图上所有图形符号只限于前述四种基本图形元素

数据流图的主图必须包括前述四种基本元素,缺一不可

每个加工至少有一个输入数据流和一个输出数据流

在数据流图中,需要按层给加工框编号。编号表明该加工所处层次及上下层的亲子关系

规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致

用于写加工逻辑说明的工具

结构化英语

判定表

判定树

软件原型分类

探索型、实验型、进化型


常用的动态分析方法

状态迁移图:描述系统的状态,(“〇”)表示可得到的系统状态,(“→”)表示从一种状态向另一种状态的迁移

优点

状态之间的关系能够直观地捕捉到

由于状态迁移图的单纯性,能够机械地分析许多情况,可以很容易地建立分析工具

时序图

Petri图:简称PNG,位置(“〇”)、转移(“?”),图中的有向边表示对转移的输入,或由转移的输出


相关文章
|
20天前
|
敏捷开发 算法 测试技术
【软件设计师—基础精讲笔记5】第五章 软件工程基础
【软件设计师—基础精讲笔记5】第五章 软件工程基础
42 2
|
9月前
|
算法 数据库 开发者
[软件工程导论(第六版)]第3章 需求分析(复习笔记)
[软件工程导论(第六版)]第3章 需求分析(复习笔记)
|
12月前
|
敏捷开发 安全 数据可视化
【软件工程题库】第一章 软件工程概述
【软件工程题库】第一章 软件工程概述
766 1
|
7月前
|
算法 安全 测试技术
软件工程基础知识
软件工程是一门关于软件开发过程、方法和工具的学科,它旨在提高软件开发的效率和质量,以满足用户需求和市场需求。软件工程涉及到软件开发的各个方面,包括需求分析、设计、编码、测试、维护等环节。本文将介绍软件工程的基础知识,包括软件开发生命周期、软件过程模型、软件需求工程、软件设计和软件测试等方面。 一、软件开发生命周期 软件开发生命周期是指软件从需求分析到维护的整个过程,它包括以下几个阶段: 1. 需求分析阶段:在这个阶段,软件开发人员与用户沟通,了解用户需求和系统需求,确定软件开发的目标和范围。 2. 设计阶段:在这个阶段,软件开发人员根据需求分析的结果,设计软件的架构、模块、接口等,确定
37 0
【软件工程】第二章
【软件工程】第二章
|
10月前
|
存储
【软件工程】第四章
【软件工程】第四章
【软件工程】第五章
【软件工程】第五章
|
10月前
|
测试技术 程序员 开发者
【软件工程】第六章
【软件工程】第六章
|
10月前
|
测试技术 数据库管理
【软件工程】第一章
【软件工程】第一章
|
10月前
|
存储 算法 安全
【软件工程题库】第三章 需求分析
【软件工程题库】第三章 需求分析
438 0

热门文章

最新文章