软件工程第四章-1(软件设计)ppt课件.ppt

软件工程第四章-1(软件设计)ppt课件.ppt

ID:58999184

大小:476.50 KB

页数:75页

时间:2020-09-27

软件工程第四章-1(软件设计)ppt课件.ppt_第1页
软件工程第四章-1(软件设计)ppt课件.ppt_第2页
软件工程第四章-1(软件设计)ppt课件.ppt_第3页
软件工程第四章-1(软件设计)ppt课件.ppt_第4页
软件工程第四章-1(软件设计)ppt课件.ppt_第5页
资源描述:

《软件工程第四章-1(软件设计)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章软件设计主要内容:(1)如何将分析模型转换为软件设计?(2)作为软件工程师在软件设计方面应使用哪些基本原则和概念?软件结构设计人们不能在没有设计图的情况下建造房子,否则房子将难以建成,就算建成了也很难保证房子的质量。计算机软件比房子复杂的多,因此在开发软件时更需要一个”设计图”来指导软件的开发。经过了需求分析阶段的工作,开发人员已经正确理解了系统的需求并以需求规格说明书的文档形式表达了系统“做什么”的问题。软件设计阶段的任务是应用一组原理与方法并遵循质量的评价原则根据软件的需求对软件进行设计,解决“如何做”的问题。正确的软件设计软件设计是后续开发步骤及软件

2、维护工作的基础。如果没有设计,只能建立一个不稳定的系统结构§4.1软件设计的目标和目的软件需求:解决“做什么”软件设计:解决“怎么做”4.2软件设计的任务问题结构(软件需求)软件结构,从软件需求规格说明书出发,形成软件的具体设计方案。映射将分析模型转换为软件设计数据字典数据流图E-R图状态变迁图加工规约控制规约数据对描述象数据设计体系结构设计接口设计过程设计分析模型设计模型1.软件设计分为两个阶段:(1)概要设计(总体设计)将软件需求转化为数据结构和软件的系统结构。确定软件的结构以及各组成成分(子系统或模块)之间的相互关系。(2)详细设计即过程设计,通过对软件的

3、结构表示进行细化,确定模块内部的详细的数据结构和算法,产生描述各模块程序过程的详细文档。2软件设计过程1)制定规范在进入软件开发阶段之初,首先应为软件开发组制定在设计时应该共同遵守的标准,以便协调组内各成员的工作。⑴阅读和理解软件需求说明,确认用户要求是否可行⑵确定最合适的设计方法。⑶规定设计文档的编制标准。⑷规定编码的信息形式(代码体系),与硬件、操作系统的接口规约,命名规则等。2)概要设计(软件系统结构的总体设计)基于功能层次结构建立系统。☆确定每个模块的功能☆建立与已确定的软件需求的对应关系☆确定模块间的调用关系☆确定模块间的接口☆评估模块划分的质量主要任

4、务:设计软件的结构,也就是要确定需求分析的每个需求要分配给哪些模块,以及这些模块相互间的组成关系。必要性:可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。3)详细设计(处理方式设计)确定为实现系统的功能需求所必需的算法,评估算法的性能确定为满足系统的性能需求所必需的算法和模块间的控制方式4)数据结构设计确定软件涉及的文件系统的结构以及数据库的模式、子模式,进行数据完整性和安全性的设计确定输入,输出文件的详细的数据结构结合算法设计,确定算法所必需的

5、逻辑数据结构及其操作5)编写概要设计阶段的文档概要设计阶段完成时应编写以下文档:概要设计说明书数据库设计说明书用户手册制定初步的测试计划§4.3软件设计遵循的原则1.软件采用层次结构2.自顶向下,逐步细化3.模块化4.抽象5.信息隐蔽6.信息局部化4.3.1软件体系结构软件的体系结构通过一个划分过程来完成。该划分过程从需求分析确立的目标系统的模型出发,对整个问题进行分割,使其每个部分用一个或几个软件成份即模块加以解决,整个问题就解决了1.控制结构(程序结构)控制结构是软件模块间关系的表示对模块结构图的说明模块是指整个系统中一些相对独立的程序单元,每个程序单元完成

6、和实现一个相对独立的软件功能。模块被视为一个黑盒子,模块通过其外部特征(名字,输入/输出信息)来标识和调用。在模块结构图中,矩形表示相对独立的功能单元,称为“模块”。连接上下层模块的线段表示它们之间的调用关系。一个控制模块可以调用一个或多个下属模块;同时一个下属模块也可以被多个控制模块所调用。2.控制结构的层次规则只有一个顶层(0层)模块0层外任一模块都会在它的邻层存在一模块与它有关同层模块间不发生联系3.软件结构度量术语深度宽度扇出扇入(模块的层数)(同一层最大模块数)(一个模块直接调用的模块数)(调用一个给定模块的模块个数)4.3.2自顶向下,逐步细化将软件

7、的体系结构按自顶向下方式,对各个层次的过程细节和数据细节逐层细化,直到用程序设计语言的语句能够实现为止,从而最后确立整个的体系结构。编外人员工资取得工资数据计时制工资额薪金制工资额编外人员税款编外人员扣款常规扣款税收扣款计算实发工资计时工人实发工资计薪工人实发工资编外人员实发工资4.3.3模块化模块是数据说明、可执行语句等程序对象构成并执行相对独立功能的逻辑实体,它可以单独命名而且可以实现按名访问。例如,过程、函数、子程序、宏等等都可以看作模块。模块化是指把大型软件按照规定的原则划分为一个个较小的,相对独立但又相关的模块。模块化是一种“分而治之,各个击破”式的问

8、题求解方式,它降低了问题

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。