软件工程第3章 需求分析PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
的顺序号连接而成。 顶层图只有一张,不必编号,下一层的图可以编号为
0,图中加工的编号是0.1、0.2、0.3……,通常删去小 数点及前面的0,即该层加工的编号一般用1、2、 3……。
数据字典(Data Dictionary,DD)定义 了数据流图中每一个图形元素, 也就是说数据流图中所有名字的 定义构成数据词典。
2.建立目标系统的逻辑模型
当前系统
模型化
怎么做 物理模型
目标系统
具体化
物理模型
抽象化
源自文库
做什么 逻辑模型
实例化
逻辑模型
理 解 需 导求
出
表 达
需
求
需求分析的任务就是借助当前系统的逻辑模型导
出目标系统的逻辑模型,解决目标系统“做什么” 的问题。
结构化分析(SA)方法是一种面向数据流的需 求分析方法,以数据流分析作为需求分析的 出发点。
3.数据项条目 数据项又叫数据流分量或数据元素,这类条目给出某个数 据单项的定义,通常是该数据项的值类型、允许值等。
4.加工条目 数据词典中只需列出基本加工(不再进一步分解的加工) 的定义,只要有了基本加工的定义,就可以理解其他加工。 加工的定义又称为加工逻辑或小说明,它集中描述一个加 工做什么。
1.结构化语言 结构化语言是介于自然语言和形式语言之间的一种半形式 化语言,是自然语言的一个受某些限制的子集。虽不如形 式语言精确,但具有自然语言简单易懂的优点,又避免了 自然语言的一些缺点。
封装是一种信息隐蔽技术,对象的所有信息(数据和行为) 都封装在对象中,即对象的内部结构从其环境中隐藏起来。 若要对对象的数据进行读写,必须将用消息的形式传递给 该对象,它将调用其相应的方法对其数据进行读写。
面向对象的类是封装良好的模块,类定义将其说明(使用 者可见的外部接口)与实现(使用者不可见的内部实现) 显式地分开,其内部实现按其具体定义的作用域提供保护。 封装可减少程序相互依赖性。对象间的相互联系和相互作 用过程主要通过消息机制得以实现。
数据词典中一般有四种类型的条 目:数据流条目、数据存储文件 条目、数据项条目、加工条目。
数据词典定义式中的符号
3.2 结构化分析 3.2.3 数据词典
1.数据流条目 数据流条目给出某个数据流的定义,通常列出该数据流的 各个组成数据项。
2.数据存储文件条目 数据存储文件条目给出某个文件的定义,通常是列出其记 录的组成数据项,此外还可指出文件的组织方式等。
2.判定表 对数据的有些处理依赖于多个逻辑条件的取值,这些取值
构成不同的情况,满足不同的条件执行不同的操作。这类 问题适合使用判定数或判定表来描述加工逻辑。
判定表通常由四部分组成:条件桩、条件条目、操作桩、 操作条目。
3.判定树 判定树在本质上同判定表示一样的,当用户不易接受判定 表时可用判定树的形式。
SA方法的基本思想是“自顶向下逐步分解”, 使用“分解”和“抽象”两个基本手段来控 制工程的复杂性。
SA方法的核心是数据流图。使用SA方法获 得的需求规格说明书有数据流图、数据词典 及补充材料组成。
1.数据流图的基本符号
数据流
或
加工
或
数据存储文件
数据源点或终点 或
2.画数据流图的步骤
(1)画系统的输入输出 (2)画系统的内部 (3)画加工的内部
包括问题描述、构建对象模型、构建动态模型、构建功能模型。最后得到的 分析文档包括问题需求的陈述、对象模型、动态模型和功能模型。
4.IPO图 能方便地描述输入数据、对数据的处理和输出数据之间的
关系,因此,在需求分析阶段可使用IPO图简单地描述系 统的主要算法(即从数据流图中各个处理获得的基本算 法)。
改进的IPO图,或称为IPO表中可以包含某些附加信息。
3.3.1.1 面向对象的基本概念 1.对象(Object)
对象是由描述该对象属性的数据以及可以对这些 数据施加的所有操作封装在一起所构成的统一体。 一个对象有一组属性和对这组属性进行操作的一 组方法构成。属性是用来描述对象静态特征的一 个数据项。方法是用来描述对象动态特征(行为) 的一个操作序列,也称为服务。
3.分层数据流图 SA方法采用“分层”的技术,自外向内,自顶向
下,有控制地逐层细化。
一套分层的数据流图由顶层、底层和中间层组成。 底层图由不必再分解的基本加工组成。
相邻两层的数据流图的关系称为“父子”关系。 数据流图和加工编号规则:
子图的编号是父图中相应加工的编号。 子图中加工的编号由子图号、小数点、加工在子图中
2.层次方框图 用树形结构的一系列多层次的矩形框描述数据的层次结 构。树形结构的顶层是单独的矩形框,它代表完整的数据 结构,下面的各层矩形框,代表这个数据的子集,最底层 的各个框代表组成这个数据的实际数据元素。这种模式非 常适合在需求分析阶段描述数据结构。
3.Warnier图 表示信息层次结构的另一种图形工具,它是由嵌套的花括 号、伪代码、以及少量的说明和符号组成的层次树,表明 信息的逻辑组织。
对象具有以下特点。
(1)数据的封装性。 (2)以数据为中心。 (3)对象是主动的。 (4)模块独立性好。 (5)并行性。
3.3.1.1 面向对象的基本概念 4.封装(Encapsulation) 封装具有两个含义:一是把对象的全部属性和全部服务结
合在一起,形成一个不可分割的独立单位(即对象);二 是尽可能隐蔽对象的内部细节,对外形成一个边界,只保 留有限的对外接口使之与外部联系。。
继承分为单重继承、多重继承。当一个类只有一个父类时, 类的继承是单重继承;如果一个类有多个父类,类的继承 为多重继承。
通过类的继承关系,使公共的特性能够共享,提高了软件 的复用性。继承性使得具有相同特性的对象可以共享程序 代码和数据结构,从而大大地提高了软件开发效率。
3.3.1.2 对象模型技术 2.开发过程 (1)分析
3.3.1.1 面向对象的基本概念 5.继承(Inheritance) 由一些特殊类归纳出来的一般类称为这些特殊类的父类或
基类,特殊类称为一般类的子类或派生类,同样父类可演 绎出子类,父类是子类更高级别的抽象。子类可以继承父 类的全部描述(数据和操作)。
在面向对象方法学中,子类将继承其父类的全部数据和其 上的方法。继承是类不同抽象级别之间的关系。
0,图中加工的编号是0.1、0.2、0.3……,通常删去小 数点及前面的0,即该层加工的编号一般用1、2、 3……。
数据字典(Data Dictionary,DD)定义 了数据流图中每一个图形元素, 也就是说数据流图中所有名字的 定义构成数据词典。
2.建立目标系统的逻辑模型
当前系统
模型化
怎么做 物理模型
目标系统
具体化
物理模型
抽象化
源自文库
做什么 逻辑模型
实例化
逻辑模型
理 解 需 导求
出
表 达
需
求
需求分析的任务就是借助当前系统的逻辑模型导
出目标系统的逻辑模型,解决目标系统“做什么” 的问题。
结构化分析(SA)方法是一种面向数据流的需 求分析方法,以数据流分析作为需求分析的 出发点。
3.数据项条目 数据项又叫数据流分量或数据元素,这类条目给出某个数 据单项的定义,通常是该数据项的值类型、允许值等。
4.加工条目 数据词典中只需列出基本加工(不再进一步分解的加工) 的定义,只要有了基本加工的定义,就可以理解其他加工。 加工的定义又称为加工逻辑或小说明,它集中描述一个加 工做什么。
1.结构化语言 结构化语言是介于自然语言和形式语言之间的一种半形式 化语言,是自然语言的一个受某些限制的子集。虽不如形 式语言精确,但具有自然语言简单易懂的优点,又避免了 自然语言的一些缺点。
封装是一种信息隐蔽技术,对象的所有信息(数据和行为) 都封装在对象中,即对象的内部结构从其环境中隐藏起来。 若要对对象的数据进行读写,必须将用消息的形式传递给 该对象,它将调用其相应的方法对其数据进行读写。
面向对象的类是封装良好的模块,类定义将其说明(使用 者可见的外部接口)与实现(使用者不可见的内部实现) 显式地分开,其内部实现按其具体定义的作用域提供保护。 封装可减少程序相互依赖性。对象间的相互联系和相互作 用过程主要通过消息机制得以实现。
数据词典中一般有四种类型的条 目:数据流条目、数据存储文件 条目、数据项条目、加工条目。
数据词典定义式中的符号
3.2 结构化分析 3.2.3 数据词典
1.数据流条目 数据流条目给出某个数据流的定义,通常列出该数据流的 各个组成数据项。
2.数据存储文件条目 数据存储文件条目给出某个文件的定义,通常是列出其记 录的组成数据项,此外还可指出文件的组织方式等。
2.判定表 对数据的有些处理依赖于多个逻辑条件的取值,这些取值
构成不同的情况,满足不同的条件执行不同的操作。这类 问题适合使用判定数或判定表来描述加工逻辑。
判定表通常由四部分组成:条件桩、条件条目、操作桩、 操作条目。
3.判定树 判定树在本质上同判定表示一样的,当用户不易接受判定 表时可用判定树的形式。
SA方法的基本思想是“自顶向下逐步分解”, 使用“分解”和“抽象”两个基本手段来控 制工程的复杂性。
SA方法的核心是数据流图。使用SA方法获 得的需求规格说明书有数据流图、数据词典 及补充材料组成。
1.数据流图的基本符号
数据流
或
加工
或
数据存储文件
数据源点或终点 或
2.画数据流图的步骤
(1)画系统的输入输出 (2)画系统的内部 (3)画加工的内部
包括问题描述、构建对象模型、构建动态模型、构建功能模型。最后得到的 分析文档包括问题需求的陈述、对象模型、动态模型和功能模型。
4.IPO图 能方便地描述输入数据、对数据的处理和输出数据之间的
关系,因此,在需求分析阶段可使用IPO图简单地描述系 统的主要算法(即从数据流图中各个处理获得的基本算 法)。
改进的IPO图,或称为IPO表中可以包含某些附加信息。
3.3.1.1 面向对象的基本概念 1.对象(Object)
对象是由描述该对象属性的数据以及可以对这些 数据施加的所有操作封装在一起所构成的统一体。 一个对象有一组属性和对这组属性进行操作的一 组方法构成。属性是用来描述对象静态特征的一 个数据项。方法是用来描述对象动态特征(行为) 的一个操作序列,也称为服务。
3.分层数据流图 SA方法采用“分层”的技术,自外向内,自顶向
下,有控制地逐层细化。
一套分层的数据流图由顶层、底层和中间层组成。 底层图由不必再分解的基本加工组成。
相邻两层的数据流图的关系称为“父子”关系。 数据流图和加工编号规则:
子图的编号是父图中相应加工的编号。 子图中加工的编号由子图号、小数点、加工在子图中
2.层次方框图 用树形结构的一系列多层次的矩形框描述数据的层次结 构。树形结构的顶层是单独的矩形框,它代表完整的数据 结构,下面的各层矩形框,代表这个数据的子集,最底层 的各个框代表组成这个数据的实际数据元素。这种模式非 常适合在需求分析阶段描述数据结构。
3.Warnier图 表示信息层次结构的另一种图形工具,它是由嵌套的花括 号、伪代码、以及少量的说明和符号组成的层次树,表明 信息的逻辑组织。
对象具有以下特点。
(1)数据的封装性。 (2)以数据为中心。 (3)对象是主动的。 (4)模块独立性好。 (5)并行性。
3.3.1.1 面向对象的基本概念 4.封装(Encapsulation) 封装具有两个含义:一是把对象的全部属性和全部服务结
合在一起,形成一个不可分割的独立单位(即对象);二 是尽可能隐蔽对象的内部细节,对外形成一个边界,只保 留有限的对外接口使之与外部联系。。
继承分为单重继承、多重继承。当一个类只有一个父类时, 类的继承是单重继承;如果一个类有多个父类,类的继承 为多重继承。
通过类的继承关系,使公共的特性能够共享,提高了软件 的复用性。继承性使得具有相同特性的对象可以共享程序 代码和数据结构,从而大大地提高了软件开发效率。
3.3.1.2 对象模型技术 2.开发过程 (1)分析
3.3.1.1 面向对象的基本概念 5.继承(Inheritance) 由一些特殊类归纳出来的一般类称为这些特殊类的父类或
基类,特殊类称为一般类的子类或派生类,同样父类可演 绎出子类,父类是子类更高级别的抽象。子类可以继承父 类的全部描述(数据和操作)。
在面向对象方法学中,子类将继承其父类的全部数据和其 上的方法。继承是类不同抽象级别之间的关系。