结构化程序设计与面向对象程序设计.ppt

上传人:za****8 文档编号:14509205 上传时间:2020-07-22 格式:PPT 页数:39 大小:988.01KB
返回 下载 相关 举报
结构化程序设计与面向对象程序设计.ppt_第1页
第1页 / 共39页
结构化程序设计与面向对象程序设计.ppt_第2页
第2页 / 共39页
结构化程序设计与面向对象程序设计.ppt_第3页
第3页 / 共39页
点击查看更多>>
资源描述
软件建模技术,中国水利水电出版社,高职高专计算机类专业“十二五”规划教材,主编 曹静,软件建模技术,第二部分 实 践 篇,2, http:/www.xunchi- http:/www.51xiu.org/ http:/www.gz- http:/www.gz- http:/www.gz- ,第2章 结构化程序设计与面向对象程序设计,2.1 概述 2.2 结构化方法的基本原理 2.2.1 结构化分析过程 2.2.2 结构化分析工具 2.3 面向对象方法学的基本概念和原则 2.3.1 基本概念 2.3.2 主要原则 2.4 面向对象方法与结构化方法比较 2.4.1 实例 2.4.2 面向对象方法与结构化方法比较 2.4.3 两种方法的综合运用,教学要求 掌握:软件结构化分析方法中常用的方法及工具。 理解:结构化设计及面向对象设计的思路及特点;在面向对象设计中如何运用结构化设计的方法及工具。 了解:结构化分析过程;面向对象方法学的基本概念。,第2章 结构化程序设计与面向对象程序设计,2.1 概 述,面向过程的方法 面向对象的方法,20世纪60年代提出的结构化程序设计思想曾为解决“软件危机”立下过汗马功劳,它在一定程度上解决了软件的可靠性、可理解性、可维护性等问题 。,面向对象的程序设计思想后来居上,在软件的模块化、可重用、可扩展性等方面体现出了强大的优势,2.2 结构化方法的基本原理,结构化程序设计主要观点是采用自顶向下、逐步求精的程序设计方法。 使用三种基本控制结构构造程序,任何程序都可由顺序、选择、重复三种基本控制结构构造。 详细描述处理过程常用三种工具:图形、表格和语言;使用的手段主要有数据流图、数据字典、层次方框图、结构化语言、判定表和判定树等。,2.2 结构化方法的基本原理,结构化程序设计一般步骤是:分析业务流程及信息走向;画出数据流图;建立数据字典;提出系统的总体逻辑方案;细化数据流图;确定模块的接口;为每个模块确定采用的算法和数据结构;根据E-R图设计数据库等。,2.2 结构化方法的基本原理,2.2.1 结构化分析过程,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,数据流图 数据字典 E-R图 IPO图 层次图与HIPO图 状态图 成本/效益分析 程序流程图与盒图(N-S图), http:/www.xunchi- http:/www.51xiu.org/ http:/www.gz- http:/www.gz- http:/www.gz- ,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,1. 数据流图(DFD图) 描绘信息流和数据从输入移动到输出的过程中所经受的变换。 基本符号,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,基本符号的含义 矩形方框表示数据的源点或终点。是系统的外部实体。 圆形表示变换数据的处理。它可以代表一系列程序、单个程序或者程序的一个模块。 平行横线代表数据存储。数据存储并不等同于一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等。 数据存储和数据流都是数据,仅仅所处的状态不同。数据存储是处于静止状态的数据,数据流是处于运动中的数据。,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,画数据流图的基本原则 自顶向下 逐层细化 完善求精,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,具体步骤: (1)绘顶层数据流图。找出对整个系统而言的输入、输出数据,确定外部实体,它们决定了系统与外界的接口。 (2)为数据流命名,为加工命名。 (3)检查核对。 (4)核对无误后,进行分解,画处理的内部。 在(2)至(4)步之间反复迭代,直到处理无法进一步分解为止。,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,书店借书系统的顶层数据流图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,书店借书系统的第一次分解后的数据流图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,“借书”处理分解后的数据流图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,书店借书系统的层次图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,2数据字典 数据字典是对所有与系统相关的数据元素的一个有组织的列表,精确、严格地定义各个数据元素,使得用户及开发人员对于输入、输出、存储和处理形成共同的理解 例如: 借阅制度表 = 读者类别+允许借阅册数+罚款规定+丢失图书罚款规定 读者类别 = 金卡 | 银卡 | 铜卡 又如: 预订请求 = 客人数据+住宿期限+客房类别 客人数据 = 客人姓名+地址+身份证号码+护照号码 +支付方式 身份证号码 = 15十进制数字18 护照号码 = 字母 + 8十进制数字8 字母 = AZ 十进制数字 = 09,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,3E-R图(实体关系图 ) 例如,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,4IPO图 IPO是输入、处理、输出的简称,IPO图能方便地描绘输入数据、数据的处理和输出数据的关系。, http:/www.xunchi- http:/www.51xiu.org/ http:/www.gz- http:/www.gz- http:/www.gz- ,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,主文件更新的IPO图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,5层次图与HIPO图 层次图用来描绘软件的层次结构,图中的一个矩形框代表一个模块,方框间的连线表示调用关系。它适于在自顶向下设计软件的过程中使用,描述模块的划分。,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,书店借书系统的层次图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,书店借书系统的H图,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,6状态图(略),2.2 结构化方法的基本原理,2.2.2 结构化分析工具,7成本/效益分析 目的 从经济角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确地作出是否投资于这项开发工程的决定,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,实例,2.2 结构化方法的基本原理,2.2.2 结构化分析工具,8程序流程图与盒图(N-S图) 是表达语句执行过程的主要工具 基本符号:,2.3 面向对象方法学的基本概念和原则,2.3.1 基本概念,1对象(object) 2类(class) 3实例(instance) 4消息(message) 5方法(method) 6属性(attribute) 7封装(encapsulation) 8继承(inheritance) 9多态性(polymorphism) 10重载(overloading),2.3 面向对象方法学的基本概念和原则,2.3.2 主要原则,(1)抽象 (2)分类 (3)聚合 (4)关联 (5)消息通信 (6)粒度控制 (7)行为分析,2.4 面向对象方法与结构化方法比较,2.4.1 实例,结构化方法与面向对象的方法的共性,2.4 面向对象方法与结构化方法比较,2.4.1 实例,实例“书店借书系统”的分析与设计(详见教材),2.4 面向对象方法与结构化方法比较,2.4.1 实例,(1)面向对象方法 反复迭代完善需求。 对已有的需求(参见附录1)进行整理,列出需求列表。 与用户交流得到有效的需求列表。 画出初始用例模型,表达系统的主要功能及主要业务流程。 完善需求列表,完善用例模型。 反复迭代进行逻辑设计。 识别系统中的对象及其关系,画初始类模型。 确定类的职责、属性和方法。 表示出主要业务过程的动态模型。 由动态模型反复映射,完善类模型。, http:/www.xunchi- http:/www.51xiu.org/ http:/www.gz- http:/www.gz- http:/www.gz- ,2.4 面向对象方法与结构化方法比较,2.4.1 实例,面向对象方法(续) 物理设计。 确定整个系统的拓扑结构(部署图)。 修订类模型。 相应修订动态模型。 完成反映程序模块的包图。 完成反映程序软件构成的组件图。 设计界面,设计数据库。,2.4 面向对象方法与结构化方法比较,2.4.1 实例,(2)结构化方法。 获取完整的需求。 自顶向下、逐层分解,画出数据流图。 书写数据字典。 映射出系统的层次结构,进行系统结构(模块及其接口)设计。 逐层细分,细化出每个处理。 设计界面,设计数据库。,2.4 面向对象方法与结构化方法比较,2.4.2 面向对象方法与结构化方法比较,结构化程序设计方法的特点是自顶向下、逐步求精,在获取完整的需求之后才能开始系统的分析和设计 面向对象的程序设计方法的特点是根据现实问题直接抽象出对象,分析对象的行为和与行为相关的数据,对象间通过传递消息进行通信,协作完成相应的功能,从问题出发,模拟现实问题建立系统模型,易于理解和实现。,2.4 面向对象方法与结构化方法比较,2.4.3 两种方法的综合运用,(1)内在的一致性。 1)目标一致。 2)使用分解和抽象的原则。 3)局部化和信息隐蔽。 4)模块独立。 (2)应用的互补性。 1)成熟的理论。 2)有效的方法。 3)实用的工具。 4)严谨的开发过程。, http:/www.xunchi- http:/www.51xiu.org/ http:/www.gz- http:/www.gz- http:/www.gz- ,本章小结,本章将面向对象的方法学与传统结构化程序设计方法学进行了对照。结构化方法和面向对象的方法是当前两种主流的软件开发方法。其中,面向对象的程序设计方法根据现实问题直接抽象出对象,分析对象的行为和与行为相关的数据,对象间通过传递消息进行通信,从问题出发,模拟现实问题,建立系统模型,易于理解和实现;结构化程序设计方法有一套成熟的理论基础,“自顶向下、逐步求精”,在获取完整的需求之后才能开始系统的分析和设计。在进行面向对象的程序设计时,要善于吸收、借鉴传统结构化程序设计的方法工具。 在进行面向对象的设计时,从需求分析到系统设计都是一个反复迭代的过程。数据流图(DFD图)是分析数据存储的有效工具。,Thank You !,中国水利水电出版社,
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!