西安电子科技大学出版社第五章教案.pdfVIP

西安电子科技大学出版社第五章教案.pdf

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
西安电子科技大学出版社第五章教案

第5章 软件设计 5.1 软件设计中的基本概念和原理 5.2 体系结构设计概述 5.4 详细设计概述 5.3 面向数据流的体系结构设计方法 5.5 面向数据流的详细设计方法 5.6 面向数据结构的设计方法 西南交通大学 软件工程 《第五章》 第1页 软件设计基本原理 软件设计的主要任务  实现系统逻辑模型向物理模型的转换,解决“系 统如何做”的问题。 软件设计的两个阶段:  体系结构设计阶段  详细设计阶段 软件设计主要成果:  软件设计说明书 西南交通大学 软件工程 《第五章》 第2页 模块化 模块是指具有相对独立性的,由数据说明、执行语句等 程序对象构成的集合。 •在高级语言中,模块具体表现为函数、子程序、过程等。 模块的四个特征: •输入/输出(接口):用于实现模块与其他模块间的 数据传送,即向模块传入所需的原始数据及从模块传出 得到的结果数据。 •功能:模块所完成的工作。 •内部数据:仅能在模块内部使用的局部量。 •程序代码:描述实现模块功能的具体方法和步骤。 西南交通大学 软件工程 《第五章》 第3页 模块化 模块化指将整个程序划分为若干模块,每个模块用于实现 一个特定功能。 问题复杂性、开发工作量和模块数之间的关系推理: 设: C(x):问题x所对应的复杂度函数 E(x):解决问题x所需要的工作量函数 两个问题P1和P2 若: C(P1) C(P2) 则: E(P1) E(P2) 一个有趣的规律:解决多个问题复合而成的大问题的复杂度大 于单独解决各问题的复杂度之和。即:C(P1+P2) C(P1)+C(P2) 即将复杂问题分解成若干小问题,各个击破,所需的工作量小 于直接解决复杂问题所需的工作量。即:E(P1+P2) E(P1)+E(P2) 西南交通大学 软件工程 《第五章》 第4页 模块化 模块化可以降低解决问题的复杂度,从而降低软件开 发的工作量。但同时也带来了缺点。  增加了设计模块接口的工作量。 模块化的优点  降低软件开发的难度  使程序结构清晰,增加易读性和易修改性  有利于提高代码的可重用性  有利于提高团队合作开发大型软件的可行性。 西南交通大学 软件工程 《第五章》 第5页 模块化 模块数与软件开 成本 (工作量) 发成本的关系图 软件总成本 最小成本区 接口成本 M 成本 / 模块 模块数  当划分的模块数处于最小成本区时,开发软件的总成本最低。  目前还不能得到模块数M的精确取值。 西南交通大学 软件工程 《第五章》 第6页 模块独立性 模块独立性(Module Independence )定义:

文档评论(0)

dzzn118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档