软件设计的概念课件.ppt

软件设计的概念课件.ppt

ID:57029153

大小:95.50 KB

页数:38页

时间:2020-07-26

软件设计的概念课件.ppt_第1页
软件设计的概念课件.ppt_第2页
软件设计的概念课件.ppt_第3页
软件设计的概念课件.ppt_第4页
软件设计的概念课件.ppt_第5页
资源描述:

《软件设计的概念课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件设计的任务软件设计基本概念模块化设计其他设计问题的处理设计文档及其复审第四章软件设计概述1主要内容介绍软件设计的一般概念,包括软件设计的任务、基本原理、模块化设计和设计文档等内容。这些概念适用于任何开发方法和开发过程,可以为后面两章的教学奠定基础。重点掌握软件设计的任务、基本概念,模块化设计,设计文档。难点模块与构件,抽象与细化,信息隐藏等24.1软件设计的任务软件设计的任务把分析阶段产生的软件需求说明转换为用适当手段表示的软件设计文档。----解决“如何做”的问题内容数据设计:信息模型软件数据结构;体系结构设计:定义软件主要

2、组成部件之间的关系;接口设计:软件内部、外部及与人之间的通信(数据流和控制流)过程设计:将软件体系结构的组成部件转变为对软件组件的过程性描述。3传统的设计任务的两阶段概要设计阶段结构设计接口设计编写概要设计说明书详细设计阶段确定各个软件组件的数据结构和操作产生描述各软件组件的详细设计文档4软件设计工作流程总体设计需求说明书复审详细设计复审软件结构可接受模块描述设计说明书修改NY修改NY5软件设计目标软件设计高可靠性高效率高可理解性高可维护性64.2软件设计基本概念模块与构件抽象与细化信息隐藏软件复用74.2.1模块与构件模块(Mo

3、dule)是一个拥有明确定义的输入、输出和特征的程序实体。如函数、过程、子程序、宏等若模块的所有输入都是实现功能必不可少的,所有输出都有动作产生,即成为定义明确的模块。软件构件(SoftwareComponent)可重复使用的软件组件。现有的可复用构件,大多是在对象的基础上创建。84.2.2抽象与细化抽象提取客观世界中一群事物的某些本质共性,而暂时忽略他们的非本质的细节,是一个从特殊到一般的过程。分层次考虑和处理问题(数据和过程)过程抽象:把完成一个特定功能的动作序列抽象为一个过程名和参数表,以后通过指定过程名和实际参数调用此过程

4、。数据抽象:把一个数据对象的定义抽象为一个数据类型名,用此类型名可定义多个具有相同性质的数据对象。细化从高到低的逐步分解过程。94.2.3信息隐藏定义把系统分解为模块时应遵守的指导思想。基本思想模块内部的数据和过程,不需要这些信息的模块不可访问;每一个模块只完成一个相对独立的特定功能;模块之间仅仅交换那些完成系统功能必须交换的信息。目的提高模块的独立性,当修改或维护模块时减少把一个模块的错误扩散到其他模块中去的机会。104.2.4软件复用Designwithreuse,designforreuse114.3模块化设计定义把大型软件

5、按照规定的原则划分成一个个较小的、相对独立但又相互关联的模块。指导思想分解模块独立性内容分解模块独立性自顶向下与由底向上124.3.1分解分解是处理复杂问题的常用方法传统软件工程:利用分解画分层DFD图;设计阶段:利用分解实现模块化设计;OO软件工程:利用分解划分类和对象。将复杂问题分解可以降低解题的总工作量和复杂度已知若C(p1)>C(p2),则E(p1)>E(p2)由经验:C(p1+p2)>C(p1)+C(p2)所以:E(p1+p2)>E(p1)+E(p2)13模块数接口成本最小成本区M软件开发工作量总成本模块成本将模块数控制

6、在最小成本区内可以使总的开发工作量保持最小。144.3.2模块独立性概括了把软件划分为模块时要遵守的准则,也是判断模块构造是不是合理的标准。坚持模块的独立性,是获得良好设计的关键。衡量标准模块本身的内聚模块内部各个成分之间的联系又称块内联系或模块强度模块间的耦合一个模块与其他模块之间的联系又称块间联系模块独立性越高,块内联系越强,块间联系越弱。151.内聚cohesion弱强1  2  3  4  5  6  7偶然性内聚逻辑性内聚时间性内聚过程性内聚通信性内聚顺序性内聚功能性内聚低内聚     中内聚    高内聚从功能角度对模

7、块内部聚合能力的度量。16偶然性内聚块内各组成部分在功能上是互不相关的。模块内部成分的组合纯属偶然。时间性内聚模块所包含的成分,是由相同的执行时间将他们连接到一起。要求在同一时间内执行。低内聚17逻辑性内聚由若干个逻辑功能相似的成分组成。执行时须从模块外引入判断量,增大块间耦合。读入分数平均/最高?计算平均分计算最高分输出结果18中内聚过程性内聚模块中包含的一组任务必须按照某一个特定的次序执行。建立方程组系数矩阵高斯消去法回代19通信性内聚模块内部的各成分使用同一种数据输入,或产生同一个数据输出。他们靠公用数据连接在一起。开领书单

8、登记售书发票领书单售书登记表删除修改文件20高内聚顺序性内聚/信息内聚各个功能都在同一数据结构上操作,每项功能有唯一的入口点。如对符号表有查找、登录、删除、修改等操作,把查找、登录、删除、修改等功能设计在一个模块中,以实现信息的隐蔽。功能性内聚模块

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

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

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