- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
结构化开发方法 软件工程第版电子教案教学 讲义.ppt
软件工程讲义- 组合构造过程 软件工程讲义- 使用结构化构造的好处 结构清晰 减少程序的复杂性 提高程序的可读性、可测试性和可维护性 软件工程讲义- 使用结构化构造的问题 问题1-是否能将问题解的任何算法都表示为上述结构化构造? 问题2-由于使用五种基本构造,当遇到多层嵌套循环时。如果每层只允许一个出口,是否会影响退出时的效率? 问题3-关于高层的宏观流程图与低层的微观详细流程图是否应该区分? 软件工程讲义- 问题1 1976年由Boehm Jacopini,并经Mills进一步发展,在理论上证明了问题解的任何算法都可以表示为上述结构化构造 定理1-假如不增加辅助变量,不增加额外计算或不改变程序的执行顺序,那么必然存在不能用if-while表示的构造 定理2-在定理1的假设条件下,if-while构造的充分必要条件是:该构造不包含两个(或两个以上)出口的循环 定理3-若允许增加辅助变量,增加额外计算或改变程序的执行顺序,问题解的任何算法都可以表示为上述结构化构造 软件工程讲义- 示例:改变构造执行顺序 软件工程讲义- 示例:增加额外计算 软件工程讲义- 示例:增加辅助变量 软件工程讲义- 问题2 如果只使用上述5种基本构造,肯定会影响退出时的效率。为解决这类问题,许多程序设计语言都设置了循环终止结构 软件工程讲义- 问题3 高层宏观流程图与低层微观详细流程图应该区分 低层微观详细流程图只用于一些控制结构比较复杂的模块 高层宏观流程图多用于一些高层的描述,只说明系统体系结构中模块的数量、相互关系,及其所属功能 软件工程讲义- 盒图(又叫N-S图或Chapin图) 软件工程讲义- HIPO图(分层输入-处理-输出图) 软件工程讲义- 表格设计表达式 判定表的出现 先于软件工程十几年,但不失用于过程设计 判定表的性质 提供了一种把各种动作与条件(在处理解说词中描述的)转换为表格形式的表达式 判定表的好处 不容易产生误解,还可作为一种表驱动算法的机器直接输入使用 软件工程讲义- 判定表 软件工程讲义- 示例:电费计算的判定表 软件工程讲义- 过程设计语言表达式 过程设计语言(Procedure Design Language, PDL)应具有以下特点 所有关键字(keyword)都应有固定的语法,以便提供全部结构化构造、数据说明和模块化特性 描述处理特性的说明性语言可以没有严格的语法 数据说明设施应包括简单的(标量、数组)和复杂的(链表或树)数据结构 应有子程序定义和调用技术,用来描述各种方式的接口说明。 软件工程讲义- 设计规格说明 设计的产品 设计规格说明(Design Specification) 设计规格说明 概要设计规格说明 主要说明系统的结构设计思路,为详细设计提供基础 详细设计规格说明 主要说明系统结构中每个模块(或子程序)的过程设计思路。 软件工程讲义- 概要设计规格说明(GB8567-88) 1.引言 1.1编写目的 1.2背景 1.3定义 1.4参考资料 2.总体设计 2.1需求规定 2.2运行环境 2.3基本设计概念和处理流程 2.4结构 2.5功能需求与程序(模块)的关系 2.6人工处理过程 2.7尚未解决的问题 3.接口设计 3.1用户接口 3.2外部接口 3.3内部接口 4.运行设计 4.1运行模块组合 4.2运行控制 4.3运行时间 5.系统数据结构设计 5.1逻辑结构设计要点 5.2物理结构设计要点 5.3数据结构与程序(模块)的关系 6.系统出错处理设计 6.1出错信息 6.2补救措施 6.3系统维护设计 软件工程讲义- 详细设计规格说明(GB8567-88) 1.引言 1.1编写目的 1.2背景 1.3定义 1.4参考资料 2.程序(模块)系统的组织结构 3.程序(模块)1(标识符)设计说明 3.1程序(模块)描述 3.2功能 3.3性能 3.4输入项 3.5输出项 3.6算法 3.7流程逻辑 3.8接口 3.9存储分配 3.10注释设计 3.11限制条件 3.12测试计划 3.13尚未解决的问题 4.程序(模块)2(标识符)设计说明 … 软件工程讲义- 面向数据流的设计 面向数据流的设计(data flow-oriented design)就是根据问题域的数据流定义一组不同的映射,把问题域的数据流转换为问题解的程序结构 这种方法通常又叫做结构化设计(Structured Design, SD),由Yourdon和Constantine等人于1974年提出 是建立在早期模块化、自顶向下逐步细化和结构化编程设计概念上的;并扩展了这些技术,它把数据流融入了设计过程 与结构化分析(SA)衔接,构成了一种完整的结构化分析设计技术,即Yourdon方法,是目前
文档评论(0)