第7部分 详细设计

上传人:lcm****20 文档编号:51461921 上传时间:2018-08-14 格式:PPT 页数:136 大小:1.06MB
返回 下载 相关 举报
第7部分 详细设计_第1页
第1页 / 共136页
第7部分 详细设计_第2页
第2页 / 共136页
第7部分 详细设计_第3页
第3页 / 共136页
第7部分 详细设计_第4页
第4页 / 共136页
第7部分 详细设计_第5页
第5页 / 共136页
点击查看更多>>
资源描述

《第7部分 详细设计》由会员分享,可在线阅读,更多相关《第7部分 详细设计(136页珍藏版)》请在金锄头文库上搜索。

1、第第4 4章章 详细设计详细设计4.1 4.1 详细设计的详细设计的 作业内容和作业步骤作业内容和作业步骤 l系统内部构造设计 l程序模块设计 l物理数据库设计 l性能/容量分析 l测试方针作成 l开发准备 l开发计划作业项目作业内容主要做成资料系统内部构造设 计系统内部模块划分 共通处理功能设计(共通模块, 共通数据库表和文件) 出错处理设计共通程序模块设计说明书 共通表样式 出错处理设计说明书程序模块设计程序功能结构图程序功能结构图 程序设计说明书 输入数据检查项目表 输出项目编辑说明程序模块详细设计物理数据库设计数据库物理设计数据库和表定义的脚本文件性能/容量分析数据库容量分析数据库容量

2、一览表性能测试性能推测结果清单测试方针作成作成系统的总体测试方针开发系统总体测试方针开发准备作出命名规则命名规则编程基准和编程方法指导编程基准和例子程序作成开发环境开发环境安装使用说明开发计划系统总体开发计划的调整 作出程序编码总体测试的 开发计划书总体开发计划书(大日程表) 下流工程的开发计划书(中日程表 )内部结构设 计程序模块设 计数据库物理 设计性能/容量分 析作成测试方针开发准 备作成开发 计划 作业步骤系统详细系统详细设计设计l系统的分解方法l模块结构图l基本设计原则 (模块耦合度与内聚度 )l设计策略 (变换型、事务型)l设计优化技巧 一、系统的分解方法一、系统的分解方法l系统分

3、解的方法是把一个复杂的问题分解成简单的要素,把一个统一的整体分解为各个组成部分,然后对各个要素和组成部分分别进行研究。l借助于目标系统的逻辑模型(DFD)并根据部门机构设置情况进行系统分解(1)(1)系统分解的原则系统分解的原则l明确系统分解前、后的功能尽量一致l每次分解的结果是可以独立开发的子系 统(或模块) l各子系统(或模块)间的关联尽量少l制定子系统(或模块)间的约束规范l区别稳定的和易变的子系统(或模块)(2)(2)系统分解的方法系统分解的方法(一)按企业业务管理部门划分如:生产、销售、供应管理等;按部门设置(二)按完成功能的类型来划分如:顾客服务、技术与生产数据管理;按实际职能设置

4、(3)(3)模块化模块化l结构化设计方法的基本思想就是模 块化l对每一个系统按功能逐步由顶向下 ,由抽象到具体的逐层分解l将系统分解成为多层次的独立功能 模块l一直分解到能简单地用程序实现为 止。(1 1) 模块模块l模块的定义:模块是可以组成、分解、更换的系统, 是易于处理的基本单位具有四种属性的一组程序语句称为一 个模块,这四种属性分别是:输入输出、逻辑功能;(外部特性)内部数据、程序代码。(内部特性)模块(另一种说法)模块(另一种说法)“ “模块模块” ”,又称,又称“ “组件组件” ”。它一般具有。它一般具有 如下三个基本属性如下三个基本属性: : 功能:描述该模块实现什么功能功能:描

5、述该模块实现什么功能 逻辑:描述模块内部怎么做逻辑:描述模块内部怎么做 状态:该模块使用时的环境和条件状态:该模块使用时的环境和条件模块模块( (续续) )l模块的例子:int max( int x, int y) int z;z=xy? x: y;return(z); 模块名数 据内部 数据内部 语句(2) (2) 模块化思想:模块化思想:l模块化是好的系统设计的一个基本准则高层模块 从整体上把握问题,暂不考虑细节l复杂问题 较小问题分解可减小解题所需的总的工作分解(3) (3) 模块和子系统的区别模块和子系统的区别模块和子系统的概念是有所区别的。子系统仍具有系统的特征(更大),模块则是指

6、为完成某项功能的程序集合体(较小),它 是一个不可分割的整体,但模块和子系统的 概念有时又是兼容和不可绝对区分的。在日 常工作中我们常将完成一个管理功能的程序 集称为模块,而它常常由多个很小的程序子 模块组成,所以有的地方可称为子系统。(4) (4) 模块结构图模块结构图MSCMSC1. 结构图的产生程序流程图 系统流程图和功能图 HIPO技术(功能图和IPO图) 结构图(Structure Chart)。(5)(5)结构图的主要成分结构图的主要成分n n模块模块用方框表示,方框中写上模块用方框表示,方框中写上模块 名字,反映了这个模块的功能名字,反映了这个模块的功能n n调用调用从调用模块指

7、向被调用模块的从调用模块指向被调用模块的 箭头箭头 n n数据数据调用箭头旁的小箭头,表示从调用箭头旁的小箭头,表示从 一个模块向另一个模块传送的数据,也一个模块向另一个模块传送的数据,也 指出了传送的方向指出了传送的方向 (6)(6)结构图基本符号及表示法结构图基本符号及表示法编辑学生记录读学生记录学生数据无此学生学号不加区分的数据数据信息控制信息4. 4.模块结构类型模块结构类型内导结构:是结构图中数据以最低层模块 输入,并逐级向高层传递,高一层模块接 收低一层模块的输入。主模块A1A4 A3A2外导结构:结构图中低一层模块接收上 一层模块的数据信息,并把它们转换给 下一级模块,直到输出给

8、使用者。wu子模块1 v主模块子模块2子模块2.1转换结构:数据要在模块内经过一定的 处理,下层模块从相应的上层模块接收 数据,经转换后返回同一上层模块中去 。wu子模块1 v主模块子模块2子模块2.1XMY4.4.结构图与数据流图的差别结构图与数据流图的差别l数据流程图是从数据流着眼,而结构图从程序模 块着眼;l数据流程图描述的是系统的逻辑模型,而结构图 是描述系统的物理模型;l数据流程图是用不同的图来表示不同的层次,是“ 平面图”,而结构图能反映系统的层次结构,是“ 立体图”;l数据流程图是从具体到抽象,描述系统的要求, 而结构图是从抽象到具体,描述系统的实现方法 。4.1.1 4.1.1

9、 系统内部结构设计系统内部结构设计 l 系统内部构造设计的主要内容就是系统内部 模块的划分,根据不同的着眼点系统内部模块 划分有多种不同的方法.l着眼于数据流的水平分割法/垂直分割法,着 眼于程序结构的高聚合低偶合的模块分割方法 ,回教寺庙房顶型的多层次模块分割法。l系统内部结构设计还需要注意把模块影响范围 限制在模块的控制区域内,进行模块之间的接 口设计评价,尽可能使每个模块功能容易理解 。(一)模块设计的原则(一)模块设计的原则系统的可维护性是系统评价的一个重要因素可维护性局部修改模块间的联系尽可能的少 (耦合耦合)而模块内的联系尽可能多(内聚内聚)(1 1)模块化准则)模块化准则 (1)

10、模块化准则模块化方法已经为所有工程 领域所接受。模块化的主要优点 是,模块化设计降低了软件系统 的复杂性,使得系统容易修改, 同时使得系统各个部分可以并行 开发,从而提高了软件的生产率 。并非模块分得越小越好,因为模块之间接口的复杂度和工 作量增加。显然,每个软件系统都有一个最佳模块数M。注意选 择分解的最佳模块数。图1.7描述了模块化与软件成本的关系。软件总成本图1.7 模块化与软件成本的关系成本模块 数目模块成本接口成本最小成本区M1.2.5 软件设计软件结构图表示软件的系统结构,它是软件模块间关系的表示 ,软件之间的各种关系,均可表示为层次结构。有关指标有关指标:深度:表示软件结构中 从

11、顶层模块到最底层模块 的层数;宽度:表示控制的总分 布;扇出数:指一个模块直 接控制下属的模块个数;扇入数:指一个模块的 直接上属模块个数。顶层1层2层ABCDEFGHIJKLMN深度扇入为2扇出为3扇入为33层4层宽度宽度宽度图1.6 软件结构示意图一个好的软件结构的形态准则是:顶部宽度小,中部宽度大 ,底部宽度次之;在结构顶部有较高的扇出数,在底部有较高 的扇入数。(2 2)软件的层次结构)软件的层次结构软件独立性的含义是指开发具有功能专一,模块之间无过多相互作用的模块。又称为模块独立性准则。软件独立性的度量标准是两个定性指标:耦合性 用于描述模块之间联系的紧密程度。内聚性 用于描述模块内

12、部联系的紧密程度。(3 3)软件独立性准则)软件独立性准则模块的独立性模块的独立性模块独立的含义:l模块完成独立、单一的功能l符合信息隐蔽和信息局部化原则l模块间关连和依赖程度尽量小模块独立性的度量之一:耦合度模块独立性的度量之一:耦合度* 耦合度是模块间的联结关系,衡量 不同模块间的相互依赖的紧密密程度, 耦合的强弱取决于模块间接口的复杂程 度;进入或访问一个模块的入口点;以 及通过接口的数据。* 耦合度越高,模块独立性越弱无耦合没有依赖关系松散耦合有 少量依赖关系紧密耦合有 很多依赖关系模块耦合度(续模块耦合度(续)(二)(二) 模块设计的原则模块设计的原则系统的可维护性是系统评价的一个重

13、要因素可维护性局部修改模块间的联系尽可能的少 (耦合耦合)而模块内的联系尽可能多(内聚内聚)耦合度强弱的因素:耦合度强弱的因素:l一模块对另一模块的引用l一模块向另一模块传递的数据量l一模块施加到另一模块的控制的数量l模块间接口的复杂程度模块间耦合的类型:模块间耦合的类型:低 非直接耦合 耦 数据耦合 合 标记耦合 性 控制耦合高 内容耦合模 块 独 立 性弱(低耦合)强(中耦合)(较强耦合)(强耦合)公共耦合公共耦合模块化设计对耦合度的要求:模块化设计对耦合度的要求:耦合是影响系统复杂程度和设计 质量的重要因素目标:建立模块间耦合度尽可能松散的系统(三)(三)如何降低模块间耦合度:如何降低模

14、块间耦合度:(1) 如模块必须存在耦合,选择适当的耦合类型 原则:尽量使用数据耦合少用控制耦合限制公共耦合的范围坚决避免使用内容耦合如何降低模块间耦合度:如何降低模块间耦合度:(2) 降低模块间接口的复 杂性接口复杂性与耦合类型的关系:接口复杂性与耦合类型的关系:接 口 复 杂 性接口方式接口数据 的复杂性无接口关系直接引用 过程调用语句数据项作参数数据结构,变 量名作参数内容耦合 其它耦合开关量,起 控制变量作用公用数据区全程变量,数据耦合标记耦合控制耦合公共耦合非直接耦合4. 4. 模块独立性的度量之二:模块独立性的度量之二:内聚度内聚度衡量一个模块内部各成分之间彼 此结合的紧密程度 设计

15、目标:高内聚(一模块的所有成分都直接参与并且对于完成同一功能来说都是最基本的)模块的内聚性类型:模块的内聚性类型:低 偶然内聚内 逻辑内聚聚 时间内聚性 过程内聚通信内聚顺序内聚高 功能内聚模 块 独 立 性弱(功能分散)强(功能单一)5. 5. 耦合、内聚与模块独立性关系耦合、内聚与模块独立性关系耦合与内聚都是模块独立性的 定性标准,都反映模块独立性 的良好程度。但耦合是直接的 主导因素,内聚则辅助耦合共 同对模块独立性进行衡量。内聚与耦合密切相关,同其它 模块强耦合的模块意味着弱内 聚,强内聚模块意味着与其它 模块间松散耦合.设计目标:力争 强内聚、弱耦合5. 5. 耦合、内聚与模块独立性关系耦合、内聚与模块独立性关系( (续续) )三三 数据流图导出初始结构图数据流图导出初始结构图从数据流程图导出系统的初始结构图,首先要区分数据流程图的结构类型, 然后根据不同的类型采用不同的方法把 数据流图映象成相应的模块结构。( (一一) )数据流程图数据流程图DFDDFD的结构类型的结构类型1变换型DFD 一个数据流程图可以明显地分成输入、 处理和输出三部分。 2事务型DFD 事务型数据流程图一般呈束状形。(1) (1) 变换型结构变换型结构由输入、变换中心(或称主加工) 和输出三部分组成。 基本模型:变换 中心输入 路径输出 路径变换流

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号