
软件工程 第6章面向数据结构的分析与设计
软件工程 第6章 面向数据结构的分析与设计

面向数据结构的需求分析与设士 典型方法有Jackson方法和Warnier方法 主要特点: 以信息对象及其操作为核心进行需求分析 认为复合信息对象具有层次结构,并且可按顺序、选择、重复 三种结构分解为成员信息对象 提供由层次信息结构映射为程序结构的机制,从而为软件设计 奠定良好的基础 ·JSP:Jackson结构程序设计方法 ·JSD:Jackson系统开发方法 厦门理工学院计算机科学与技术系软件工程课程 2/27
厦门理工学院计算机科学与技术系 软件工程课程 2/27 面向数据结构的需求分析与设计 • 典型方法有Jackson方法和Warnier方法 • 主要特点: – 以信息对象及其操作为核心进行需求分析 – 认为复合信息对象具有层次结构,并且可按顺序、选择、重复 三种结构分解为成员信息对象 – 提供由层次信息结构映射为程序结构的机制,从而为软件设计 奠定良好的基础 • JSP:Jackson结构程序设计方法 • JSD:Jackson系统开发方法

内容摘要 ·JSP方法 ·JSD方法简介 ·小结 厦门理工学院计算机科学与技术系软件工程课程 3/27
厦门理工学院计算机科学与技术系 软件工程课程 3/27 内容摘要 • JSP方法 • JSD方法简介 • 小结

内容摘要 ·丁SP方法 ·JSD方法简介 ·小结 厦门理工学院计算机科学与技术系软件工程课程 4/27
厦门理工学院计算机科学与技术系 软件工程课程 4/27 内容摘要 • JSP方法 • JSD方法简介 • 小结

JSP方法 总结了COBOL事务处理程序中的开发方 法而发展起来的,特点: 重点不是自顶向下逐步求精,而是在数据结构基础 上进行构造 -根据输入/输出的数据结构建立程序结构 ·目标:获得简单清晰的设计方案 设计原则:使程序结构与问题结构(数据 结构)相对应 厦门理工学院计算机科学与技术系软件工程课程 5/27
厦门理工学院计算机科学与技术系 软件工程课程 5/27 JSP方法 • 总结了COBOL事务处理程序中的开发方 法而发展起来的,特点: – 重点不是自顶向下逐步求精,而是在数据结构基础 上进行构造 – 根据输入/输出的数据结构建立程序结构 • 目标:获得简单清晰的设计方案 • 设计原则:使程序结构与问题结构(数据 结构)相对应

数据结构和程序结构 ·一般的数据处理系统处理的是具有层次结 构的数据,因而其问题结构可以用它所处 理的数据结构来表示 ▣1 02 ▣3 1 ▣口口3 数据结构 程序结构 厦门理工学院计算机科学与技术系软件工程课程 6/27
厦门理工学院计算机科学与技术系 软件工程课程 6/27 数据结构和程序结构 • 一般的数据处理系统处理的是具有层次结 构的数据,因而其问题结构可以用它所处 理的数据结构来表示 * * 数据结构 程序结构 文 文 文 文 文 1 文 2 文 3 文 文 文 文 文 文 文 文 文 文 文 1 文 文 文 2 文 文 文 3

数据结构与程序结构的表示 JSP方法采用Jackson图来表示数据结 构和程序结构 结构图是一种从左到右阅读的树状层次 结构图 ~数据结构图中方框表示数据,程序结构图中方框就表示模 块(过程或函数) 、底部的叶子节点称为基本元素 在底部枝干以上的节点称为结构元素 三种元素类型:顺序元素、选择元素、重复元素 厦门理工学院计算机科学与技术系软件工程课程 7/27
厦门理工学院计算机科学与技术系 软件工程课程 7/27 数据结构与程序结构的表示 • JSP方法采用Jackson图来表示数据结 构和程序结构 • 结构图是一种从左到右阅读的树状层次 结构图 – 数据结构图中方框表示数据,程序结构图中方框就表示模 块(过程或函数) – 底部的叶子节点称为基本元素 – 在底部枝干以上的节点称为结构元素 – 三种元素类型:顺序元素、选择元素、重复元素

顺序元素 ·一个顺序元素由一个或多个从左到右的 元素组成 每个组成的元素只出现一次 D A B C 厦门理工学院计算机科学与技术系软件工程课程 8/27
厦门理工学院计算机科学与技术系 软件工程课程 8/27 顺序元素 • 一个顺序元素由一个或多个从左到右的 元素组成 • 每个组成的元素只出现一次 A B C D

选择元素 。 选择是“If Then n Else'”或”Case的结构,而且家 必须有两个或多个元素 使用选择元素时根据指定的条件从这些子元素中 选择一个子元素 供选择的子元素用右上角标以小圆的矩形表示 - 示例:左图中A、B、C是D的可选项,而S是选择条件 如果需要一个“TfA=B Then X Else do nothing”那么需要加入一个空元素 示例:右图中空元素用一个标有连字符的矩形表示 0000 000 A 厦门理工学院计算机科学与技米系软件工程课程 9/27
厦门理工学院计算机科学与技术系 软件工程课程 9/27 选择元素 • 选择是“If Then Else”或“Case”的结构,而且 必须有两个或多个元素 • 使用选择元素时根据指定的条件从这些子元素中 选择一个子元素 • 供选择的子元素用右上角标以小圆的矩形表示 – 示例:左图中A、B、C是D的可选项,而S是选择条件 • 如果需要一个“If A=B Then X Else do nothing”那么需要加入一个空元素 – 示例:右图中空元素用一个标有连字符的矩形表示 A B C D S X — 文 文 文 文 文 文 文

重复元素 重复元素仅由一个子元素构成,表示重 复元素由子元素重复0次或多次组成 。 子元素用右上角标以星号的矩形表示 ·下图表示元素D由元素A重复O次或多次 组成,其中工是重复条件 米 厦门理工学院计算机科学与技术系软件工程课程 10/27
厦门理工学院计算机科学与技术系 软件工程课程 10/27 重复元素 • 重复元素仅由一个子元素构成,表示重 复元素由子元素重复0次或多次组成 • 子元素用右上角标以星号的矩形表示 • 下图表示元素D由元素A重复0次或多次 组成,其中I是重复条件 D * A I