软件系统分析与设计结构分析设计.ppt
《软件系统分析与设计结构分析设计.ppt》由会员分享,可在线阅读,更多相关《软件系统分析与设计结构分析设计.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、LOGO第第第第5 5 5 5章章章章 软件软件软件软件系统系统系统系统结构化结构化结构化结构化分析分析分析分析与设计方法与设计方法与设计方法与设计方法天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/142教学目的及要求教学目的及要求教学目的及要求教学目的及要求 了解软件了解软件结构化分析方法的基本概念结构化分析方法的基本概念。熟悉:结构化分析与设计方法原理熟悉:结构化分析与设计方法原理。掌握:数掌握:数据流图、数据字典、软件结构图和程序结构图据流图、数据字典、软件结构图和程序结构图的设计的设计。重点:结构化分析方法。重点:结构化分析方法。难点:用于结
2、构化原理和方法进行结构化设计难点:用于结构化原理和方法进行结构化设计 设计。设计。天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/143教学内容教学内容5.1 数据流程分析数据流程分析5.2 数据字典数据字典 5.3 结构化设计结构化设计5.4 软件结构设计软件结构设计5.5 程序结构设计程序结构设计天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1445.1.1 数据流程分析数据流程分析5.1.2 数据流图数据流图 5.1.3 IPO图图55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院
3、赵黎强软件系统分析与设计软件系统分析与设计2023/4/1455.1.1 数据流程分析数据流程分析1.结构化分析方法学结构化分析方法学 结构化分析方法学主要包括:结构分析、结构设计和结构化分析方法学主要包括:结构分析、结构设计和结构化程序设计技术结构化程序设计技术SA-SD-SPSA-SD-SP,是建立在系统生命周,是建立在系统生命周期的概念基础之上的,通过抽象化机制,采用自顶向下、期的概念基础之上的,通过抽象化机制,采用自顶向下、逐步求精的分析方法,用数据流图表示数据的控制,用逐步求精的分析方法,用数据流图表示数据的控制,用IOPIOP图表示数据输入、控制和输出关系及顺序,用数据字图表示数据
4、输入、控制和输出关系及顺序,用数据字典表示数据结构,用软件结构图表示程序模块的关系,典表示数据结构,用软件结构图表示程序模块的关系,JakcsenJakcsen图(或程序流程图)表示程序结构。图(或程序流程图)表示程序结构。55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1465.1.1 数据流程分析数据流程分析1.结构化分析方法学结构化分析方法学 结构化分析方法的本质是功能分析和模块化。结构化分析方法的本质是功能分析和模块化。以实现以实现功能的过程为中心,所谓的结构化是指:功能的过程为中心,所谓的结构化是指:对于
5、解决该问题对于解决该问题的最佳解决方案的过程是已知的的最佳解决方案的过程是已知的。实际上这是运用结构化。实际上这是运用结构化分析方法的条件。因此,当用户针对功能的需求发生变化分析方法的条件。因此,当用户针对功能的需求发生变化时,这就使基于过程的设计不易被理解;而功能变化往往时,这就使基于过程的设计不易被理解;而功能变化往往引起较大的结构变化。引起较大的结构变化。55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1475.1.1 数据流程分析数据流程分析1.结构化分析方法学结构化分析方法学 结构化分析方法产生的结构化分
6、析方法产生的系统有明确的边界系统有明确的边界定义,且系统结构依赖于系统边界的定义,这定义,且系统结构依赖于系统边界的定义,这样的系统不易扩充和修改。样的系统不易扩充和修改。数据与操作分开处理,可能造成软构件对数据与操作分开处理,可能造成软构件对具体应用环境的依赖,使可重用性具体应用环境的依赖,使可重用性(reusability)较差。较差。55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1485.1.1 数据流程分析数据流程分析2.数据流程数据流程 在结构化分析中以数据的流动和变化作为分析在结构化分析中以数据的流动
7、和变化作为分析的主要线索。数据从哪里产生的主要线索。数据从哪里产生数据源,最终流数据源,最终流向哪里向哪里数据终,数据流经哪里?发生了怎样的数据终,数据流经哪里?发生了怎样的变化?由此构成了数据的流程。这是进行结构化分变化?由此构成了数据的流程。这是进行结构化分析是要回答的问题,通过回答这些问题建立结构化析是要回答的问题,通过回答这些问题建立结构化分析模型。分析模型。55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/149数据流图数据流图 结构化分析方法学主要包括:结构分析、结构设计和结构化分析方法学主要包括:结构分
8、析、结构设计和结构化程序设计技术结构化程序设计技术SA-SD-SPSA-SD-SP,是建立在系统生命周,是建立在系统生命周期的概念基础之上的,通过抽象化机制,采用自顶向下、期的概念基础之上的,通过抽象化机制,采用自顶向下、逐步求精的分析方法,用数据流图表示数据的控制,用逐步求精的分析方法,用数据流图表示数据的控制,用IOPIOP图表示数据输入、控制和输出关系及顺序,用数据字典表图表示数据输入、控制和输出关系及顺序,用数据字典表示数据结构,用软件结构图表示程序模块的关系,示数据结构,用软件结构图表示程序模块的关系,JakcsenJakcsen图(或程序流程图)表示程序结构。图(或程序流程图)表示
9、程序结构。55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1410 用数据流图分析复杂的系统时,要把复杂的用数据流图分析复杂的系统时,要把复杂的系统分层次,主要是对关键部分分层细化,并保系统分层次,主要是对关键部分分层细化,并保持系统的逻辑功能。持系统的逻辑功能。数据流图(数据流图(DFD-Data Flow DFD-Data Flow Drawing Drawing)描绘系统的逻辑模型)描绘系统的逻辑模型,图中没有任何图中没有任何具体的物理元素具体的物理元素,只是描绘信息在系统中流动和只是描绘信息在系统中流动和处
10、理的情况。处理的情况。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1411 设设计计数数据据流流图图只只需需考考虑虑系系统统必必须须完完成成的的基基本本逻逻辑功能辑功能,完全不需要考虑如何具体地实现这些功能。完全不需要考虑如何具体地实现这些功能。数数据据流流图图与与程程序序流流程程图图完完全全不不同同,它它是是描描绘绘信信息息流流和和数数据据从从输输入入最最后后移移动动到到输输出出的的过过程程中中所所经经历历的各种变幻。的各种变幻。就就图图本本身身而而言言并并不不是是只只有有程程序序员员或或计计
11、算算机机专专业业人员才能读懂,特别是,需求方能读得懂。人员才能读懂,特别是,需求方能读得懂。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1412符号:数据流图中的主要图形元素符号:数据流图中的主要图形元素符号:数据流图中的主要图形元素符号:数据流图中的主要图形元素数据的原点数据的原点/终点终点变换数据的处理变换数据的处理数据存储数据存储数据流数据流55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/141
12、3说明:说明:l 处处理理并并不不一一定定是是一一个个程程序序。一一个个处处理理框框可可以以代代表表一一系系列列程序、单个程序或者程序的一个模块。程序、单个程序或者程序的一个模块。l 一一个个数数据据存存储储也也并并不不等等同同于于一一个个文文件件,它它可可以以表表示示一一个个文文件、文件的一部分、数据库的元素或记录的一部分等等件、文件的一部分、数据库的元素或记录的一部分等等;l数数据据可可以以存存储储在在磁磁盘盘、光光盘盘、移移动动存存储储、主主存存及及其其他他任任何何介质上介质上(包括人脑)。包括人脑)。l数数据据存存储储和和数数据据流流都都是是数数据据,仅仅仅仅所所处处的的状状态态不不同
13、同。数数据据存储是处于静止状态的数据存储是处于静止状态的数据,数据流是处于运动中的数据数据流是处于运动中的数据。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1414l 有有时时数数据据的的源源点点和和终终点点相相同同,为为了了增增加加数数据据流流图图的的清清晰晰程程度度。再再重重复复画画一一个个同同样样的的符符号号(正正方方形形或或立方体立方体)表示数据的终点。表示数据的终点。l 有有时时数数据据存存储储也也需需要要重重复复,以以增增加加数数据据流流图图的的清清晰晰程程度度。为为了了避避免免可可
14、能能引引起起的的误误解解,如如果果代代表表同同一一个个事事物物的的同同样样符符号号在在图图中中出出现现在在n n个个地地方方,则则在在这这个个符号的一个角上画符号的一个角上画(n-1)(n-1)条短斜线做标记。条短斜线做标记。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1415描述银行取款过程的数据流图描述银行取款过程的数据流图描述银行取款过程的数据流图描述银行取款过程的数据流图55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计20
15、23/4/1416数据流与数据加工之间的关系数据流与数据加工之间的关系数据流与数据加工之间的关系数据流与数据加工之间的关系TTTTT55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1417 数据流图的层次结构数据流图的层次结构数据流图的层次结构数据流图的层次结构v为了表达数据处理过程的数据处理情况,需为了表达数据处理过程的数据处理情况,需为了表达数据处理过程的数据处理情况,需为了表达数据处理过程的数据处理情况,需要采用要采用要采用要采用层次结构层次结构层次结构层次结构的数据流图。按照系统的层的数据流图。按照系统的层
16、的数据流图。按照系统的层的数据流图。按照系统的层次结构进行次结构进行次结构进行次结构进行逐步分解逐步分解逐步分解逐步分解,并以分层的数据流图,并以分层的数据流图,并以分层的数据流图,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理反映这种结构关系,能清楚地表达和容易理反映这种结构关系,能清楚地表达和容易理反映这种结构关系,能清楚地表达和容易理解整个系统。解整个系统。解整个系统。解整个系统。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1418分层数据流图分层数据流图55.1.1 数据流程分
17、析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1419v在多层数据流图中,在多层数据流图中,在多层数据流图中,在多层数据流图中,顶层流图顶层流图顶层流图顶层流图仅包含仅包含仅包含仅包含一个加工一个加工一个加工一个加工,它代表被开发系统。它的输入流是该系统的输入它代表被开发系统。它的输入流是该系统的输入它代表被开发系统。它的输入流是该系统的输入它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据。数据,输出流是系统所输出数据。数据,输出流是系统所输出数据。数据,输出流是系统所输出数据。v底层流图底层流图底层流图底层流图是
18、指其是指其是指其是指其加工不需再做分解加工不需再做分解加工不需再做分解加工不需再做分解的数据流图,的数据流图,的数据流图,的数据流图,它处在最底层。它处在最底层。它处在最底层。它处在最底层。v中间层流图中间层流图中间层流图中间层流图则表示则表示则表示则表示对其上层父图的细化对其上层父图的细化对其上层父图的细化对其上层父图的细化。它的每它的每它的每它的每一加工可能继续细化,形成子图。一加工可能继续细化,形成子图。一加工可能继续细化,形成子图。一加工可能继续细化,形成子图。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与
19、设计2023/4/1420画数据流图的步骤画数据流图的步骤:自外向内自外向内,自顶向下自顶向下,逐层细化逐层细化,完善求精完善求精 1.1.从问题描述中提取数据流图的四种成分。从问题描述中提取数据流图的四种成分。2.2.根据具体业务,画出顶层数据流图,以反映最主要业根据具体业务,画出顶层数据流图,以反映最主要业根据具体业务,画出顶层数据流图,以反映最主要业根据具体业务,画出顶层数据流图,以反映最主要业务处理流程务处理流程务处理流程务处理流程。3.3.从输入端开始,按系统的逻辑需要,画出数据流流经从输入端开始,按系统的逻辑需要,画出数据流流经从输入端开始,按系统的逻辑需要,画出数据流流经从输入端
20、开始,按系统的逻辑需要,画出数据流流经的各处理框,逐步画到输出端,得到第一层数据流图的各处理框,逐步画到输出端,得到第一层数据流图的各处理框,逐步画到输出端,得到第一层数据流图的各处理框,逐步画到输出端,得到第一层数据流图。4.4.对数据流图中描绘的系统主要功能进一步细化对数据流图中描绘的系统主要功能进一步细化对数据流图中描绘的系统主要功能进一步细化对数据流图中描绘的系统主要功能进一步细化,画出画出画出画出所需的子图所需的子图所需的子图所需的子图。5.5.检查、修改检查、修改检查、修改检查、修改。55.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件
21、系统分析与设计软件系统分析与设计2023/4/1421 假设一家工厂的采购部每天需要一张定货报表假设一家工厂的采购部每天需要一张定货报表,报报表按零件编号排序表按零件编号排序,表中列出所有需要再次定货的零件。表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据对于每个需要再次定货的零件应该列出下述数据:零件零件编号编号,零件名称零件名称,定货数量定货数量,目前价格目前价格,主要供应者主要供应者,次要次要供应者。零件入库或出库称为事务供应者。零件入库或出库称为事务,通过放在仓库中的通过放在仓库中的CRTCRT终端把事务报告给定货系统。当某种零件的库存数终端把事务报告给定货系
22、统。当某种零件的库存数量少于库存量临界值时就应该再次定货。量少于库存量临界值时就应该再次定货。例子例子 155.1.1 数据流程分析数据流程分析数据流图数据流图天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1422数据流图有四种成分数据流图有四种成分:源点或终点源点或终点外部实体外部实体 处理处理 数据存储数据存储 数据流数据流第一步第一步 从问题描述中提取数据流图的四种成分。组成数据流从问题描述中提取数据流图的四种成分。组成数据流图的元素可以从描述问题的信息中提取图的元素可以从描述问题的信息中提取(有些信息是隐含的有些信息是隐含的)源点与终点:源点
23、与终点:采购员是数据终点采购员是数据终点,而仓库管理员是数据源点而仓库管理员是数据源点。数据流图数据流图例子例子1 55.1.1 数据流程分析数据流程分析天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1423处理:处理:产生报表、处理零件入库出库的事务产生报表、处理零件入库出库的事务数据流:数据流:(1)定货报表:定货报表:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。(2)事务:事务:零件编号(名称)、事务类型(入库出库)、数量。数据存储:数据存储:(1)定货信息定货信息(参考具体货报表)(2)库存清单:库存清单:零件编号、库存量
24、、库存量临界值。55.1.1 数据流程分析数据流程分析数据流图数据流图例子例子1 天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1424第二步第二步 画出基本系统模型画出基本系统模型 (若干个数据源点(若干个数据源点/终点加一个处理)终点加一个处理)仓库管理员定货系统采购员事务定货报表55.1.1 数据流程分析数据流程分析数据流图数据流图例子例子1 天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1425第三步第三步 对基本系统模型进一步细化对基本系统模型进一步细化仓库管理员采购员事务定货报表12处理事务产生
25、报表D2 定货信息D1 库存清单定货信息定货信息库存清单定货信息在图中给处理和数据加了编号,这样做的目的是便于引用和追踪。天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1426第四步第四步 对功能级数据流图中描绘的系统主要功能进一步细化对功能级数据流图中描绘的系统主要功能进一步细化仓库管理员采购员事务定货报表1.32处理定货产生报表D2 定货信息D1 库存清单定货信息定货信息库存清单1.2更新库存清单1.1接受事务事务库存信息天津城建大学计算机与信息工程学院 赵黎强软件系统分析与设计软件系统分析与设计2023/4/1427检查和修改数据流图的原则检查
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 系统分析 设计 结构 分析
限制150内