《信息系统设计》课件_第1页
《信息系统设计》课件_第2页
《信息系统设计》课件_第3页
《信息系统设计》课件_第4页
《信息系统设计》课件_第5页
已阅读5页,还剩351页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章信息系统设计主要内容:针对信息系统设计的各项任务介绍这一阶段的开发方法和对策。1a第四章信息系统设计主要内容:针对信息系统设计的各项任务介4.1信息系统设计概述

4.1.1系统设计的任务确定系统功能结构依据系统分析文档资料,采用正确的方法来确定系统各功能模块在计算机内应该由哪些程序组成,它们之间用什么方式联结在一起以构成一个最好的系统机内结构;表达设计成果使用一定的工具将所设计的成果表达出来;详细设计与实现考虑到实现系统功能的需要,进行数据库的详细设计、编码设计、输入/输出界面(人—机界面)设计等等2a4.1信息系统设计概述4.1.1系统设计的任务2a4.1.2系统设计步骤

第一步进行数据库的物理设计。第二步进行编码设计。第三步进行界面设计。第四步进行系统功能设计。根据总体方案及系统分析的实际需求考虑数据库的存储方式(集中式或分布式);考虑物理库的数量及每一个物理库所包含的数据库表的内容;从查询处理效率等方面考虑数据库表的索引问题等等。3a4.1.2系统设计步骤第一步进行数据库的物理设计。根据总4.1.2系统设计步骤

第一步进行数据库的物理设计。第二步进行编码设计。第三步进行界面设计。第四步进行系统功能设计。编码是系统的重要组成部分,与数据的规范性和交换性密切相关,编码一旦被设计处理将会永久使用并常驻于数据库中,因此需要在系统设计阶段给出具有永久性、稳定性的编码设计方案。4a4.1.2系统设计步骤第一步进行数据库的物理设计。编码是4.1.2系统设计步骤

第一步进行数据库的物理设计。第二步进行编码设计。第三步进行界面设计。第四步进行系统功能设计。构造良好的界面是未来系统能够顺利运行的重要前提,要使信息系统使用起来更加舒适、更加高效就需要在界面设计方面具有一个全新的设计策略,这个设计策略要在程序设计之前完成。5a4.1.2系统设计步骤第一步进行数据库的物理设计。构造良4.1.2系统设计步骤

第一步进行数据库的物理设计。第二步进行编码设计。第三步进行界面设计。第四步进行系统功能设计。基于前述所有工作进行,采用“自顶向下”的原则考虑模块的划分与设计,使模块内部以及模块与模块之间的连接具有合理的结构。功能设计结果的表达方式可以有两种:利用“结构图”来描述模块的功能和模块之间的信息交换;用RationalRose工具来描述。有一组评价标准来对设计结果进行评价,用一组设计原则对系统模块进行优化设计。6a4.1.2系统设计步骤第一步进行数据库的物理设计。基于前4.1.3系统设计评价标准

1、运行效率

2、可靠性3、可修改性4、灵活性5、通用性6、实用性

7a4.1.3系统设计评价标准1、运行效率7a影响系统处理能力的因素:①系统中间文件的数量临时的、用后抛弃,应减少之②数据文件的次数检索方案:例:数据库表中包含3种类型的记录:A、B、C每次从头到尾仅一次,遇到就相应处理③外存访问次数文件访问时间主要用于:(记录定位、磁头定位、传输到指定位置)定位和传输建立外存访问次数少的系统④程序的调用和其它的系统开销所花费的时间⑤程序的执行时间程序的执行时间与程序的质量有关8a影响系统处理能力的因素:①系统中间文件的数量8a4.1.3系统设计评价标准

1、运行效率

2、可靠性3、可修改性4、灵活性5、通用性6、实用性

9a4.1.3系统设计评价标准1、运行效率9a可靠性应考虑的问题:①校验码例:银行账号10位,最后1位是校验码特点:增加处理时间,防止一些错误的发生②批量控制预定批处理事务的总数若批处理事务运行与人工计算总数不一致则有错,计算机不予处理。③建立运行日志和信息追踪降低运行效率,但非常必要④文件的存取限制预定义用户操作权限,以备系统检查⑤可靠性指标10a可靠性应考虑的问题:①校验码10a可靠性指标:“平均故障间隔时间”(Mean_Time_Between_Failures,—MTBF)“平均修复时间”(Mean_Time_To_Repairs,—MTTR)平均每次所用的修理时间(排除故障时间)系统的有效性=MTBF/(MTBF+MTTR)越接近1,系统的有效性越高11a可靠性指标:“平均故障间隔时间”11a4.1.3系统设计评价标准

1、运行效率

2、可靠性3、可修改性4、灵活性5、通用性6、实用性

12a4.1.3系统设计评价标准1、运行效率12a提高系统可修改性的原因:①、客观数据和功能需求的变化系统是在一个实际的客观环境中运行,其数据来自于客观现实,而客观世界是在不断地变化的,它导致客观数据的变化和功能需求的变化,为适应不断变化需求,必然要求信息系统也随之而变化,即对信息系统做相应的修改。②、计算机技术在不断地发展计算机技术在不断地发展,硬件价格越来越便宜,新的操作系统和程序语言在不断地出现或升级,计算机网络技术和通讯技术也在不断地发展,这些必然对信息系统产生影响,迫使用户考虑使用新的技术、更新设备、提高系统运行效率、完善系统功能等等。③、系统本不完善无论是在系统分析、系统设计、程序设计及调试阶段,都可能会发现一些问题导致对前一阶段的工作进行修正,到了系统测试阶段也必然会发现一些问题和故障需要给予解决,这些都意味着对系统的修改。④、错误在系统运行阶段才能暴露对于一个复杂的系统来说,不可能在系统测试阶段就能够完全彻底地把故障全部排除,有的错误可能会在系统运行阶段才能暴露出来,要把这些错误纠正过来称为运行纠错,这同样意味着对系统进行修改和维护。13a提高系统可修改性的原因:①、客观数据和功能需求的变化13a4.2数据库设计和编码设计

4.2.1数据库设计

14a4.2数据库设计和编码设计4.2.1数据库设计14数据库系统的三级模式结构15a数据库系统的三级模式结构15a数据库设计内容:

1、用户权限的设计例,教学管理系统设计用户权限表2、索引文件的设计数据检索的一般方法顺序索引文件的查找方法:折半查找等索引特点:占空间、维护复杂3、中间文件或临时文件的设计4、视图(View)的设计视图是虚表,只保留定义16a数据库设计内容:1、用户权限的设计16a4.2.2编码设计

1、编码设计的地位和作用信息系统建设的指导思想数据位于现代数据处理的中心,数据模型是稳定的而处理是多变的。信息分类编码17a4.2.2编码设计1、编码设计的地位和作用17a编码设计步骤

对编码对象进行科学分类按照一定的规则设计代码

18a编码设计步骤对编码对象进行科学分类18a2、分类的原则和方法

分类的原则:科学性:选择事物或概念(即分类对象)中最稳定的本质属性或特征作为分类的基础和依据。系统性:将选定的事物或概念的属性特征按一定的排列顺序予以系统化,并形成一个合理的科学分类体系。可扩展性:要具有可拓展的类目,以保证增加新的事物或概念时,不致于打乱已建立的分类体系,同时还应为下级信息系统在本分类体系的基础上进行延拓细化创造条件。兼容性:与有关标准(包括国际标准、国家标准、行业标准等)协调一致。综合实用性:要从系统出发,把全局问题放在系统整体中处理,以达到全系统最优

19a2、分类的原则和方法

分类的原则:科学性:19a信息分类的基本方法:线分类法和面分类法。

(1)线分类法(层级分类法):是将初始的分类对象(即被划分的事物或概念)按所选定的若干属性或特征(作为分类的划分基础)逐次地分成相应的若干层级的类目,并排成一个有层次的、逐级展开的分类体系。上位类:即在线分类体系中一个类目相对于由它直接划分出来的下一级类目而言,称为上位类。下位类:即在线分类体系中,由上位直接划分出来的下一级类目相对于上位类而言,称为下位类。同位类:即在线分类体系中由一个类目直接划分出来的下一级中的各类目,彼此称为同位类。

20a信息分类的基本方法:线分类法和面分类法。(1)线分类法(层例如:GB2260-86《中华人民共和国行政区划代码》采用的是线分类法,将全国行政区划分为三层:第一层为省(自治区、直辖市)第二层为地区(市、州、盟)第三层为县(市、旗、镇、区)。

21a例如:GB2260-86《中华人民共和国行政区划代码》采用的线分类法的原则:

下位类类目的总范围应与上位类类目相等由某一上位类划分出来的下位类类目的总范围应与上位类类目相等;划分基准当某一个上位类类目划分成若干个下位类类目时,应选择一个划分基准:同位类类目之间不交叉、不重复,并只对应于一个上位类;分类要依次进行,不应有空层或加层。

22a线分类法的原则:下位类类目的总范围应与上位类类目相等22a线分类法的优点是:层次性好,能较好地反映类目之间的逻辑关系使用方便,既符合手工处理信息的传统习惯,又便于计算机处理信息线分类法的缺点是:结构弹性较差,分类结构一经确定,不易改动;分类层次较多时,为其所设计的代码位数会较大,影响数据处理的效率与速度。23a线分类法的优点是:23a(2)面分类法

将所选定的分类对象的若干个属性或特征视为若干个“面”,每个“面”中有可分成彼此独立的若干个类目,再按一定的顺序将各个“面”平行排列。使用时可根据需要将这些“面”中的类目按指定的顺序组合在一起,形成一个新的复合类目。

24a(2)面分类法将所选定的分类对象的若干个属性或特征视为若干例如:服装的分类采用面分类法,选择服装材料、男女式样、服装款式三个属性作为三个“面”,每个“面”又可分成若干个类目,如下表。

材料男女式样服装款式纯棉男式中山装纯毛女式西服中长纤维……连衣裙…………25a例如:服装的分类采用面分类法,选择服装材料、男女式样、服装款面分类法的原则:面选择分类对象本质的属性或特征作为分类对象的各个“面”类目不同面内的类目不应相互交叉,也不能重复出现“面”位置每个“面”有严格的固定位置“面”的选择以及位置的确定,根据实际需要而定。26a面分类法的原则:面26a面分类法的优点:具有较大的弹性,一个“面”内类目改变,不会影响其它的“面”适应性强,可根据需要组成任何类目,同时也便于计算机处理信息易于添加和修改类目面分类法的缺点:不能充分利用容量,可组配的类目很多,但有时实际应用的类目不多难于手工处理信息27a面分类法的优点:27a3、代码设计的原则和方法(1)代码的功能:信息代码:是一个或一组有序的、易于计算机和人识别与处理的符号,有时也称为“码”。功能如下:标识:鉴别编码对象的唯一标志分类:当按编码对象的属性或特征分类,并赋予不同的类别代码时,代码又可以作为区分编码对象类别的标志排序:当按编码对象发现(产生)的时间、所占有的空间或其他方面的顺序关系分类,并赋予不同的代码时,代码又可作为编码对象排序的标志特定含义:代码是在一定分类体系下产生的,因此代码可提供一定的特定含义28a3、代码设计的原则和方法(1)代码的功能:28a(2)代码设计的基本原则:唯一性

合理性可扩充性简单性适用性规范性在一个分类编码标准中:每一个编码对象仅有一个代码,一个代码只惟一表示一个编码对象。29a(2)代码设计的基本原则:唯一性在一个分类编码标准中:29(2)代码设计的基本原则:唯一性合理性

可扩充性简单性适用性规范性代码结构要与分类体系相适应。30a(2)代码设计的基本原则:唯一性代码结构要与分类体系相适应(2)代码设计的基本原则:唯一性合理性可扩充性

简单性适用性规范性留适当的后备容量以适应不断扩充的需要。31a(2)代码设计的基本原则:唯一性留适当的后备容量31a(2)代码设计的基本原则:唯一性合理性可扩充性简单性

适用性规范性代码结构应简单:以节省存储空间减少代码差错率提高处理计算机效率。32a(2)代码设计的基本原则:唯一性代码结构应简单:32a(2)代码设计的基本原则:唯一性合理性可扩充性简单性适用性

规范性代码要反映编码对象的特点:有助记忆、填写。33a(2)代码设计的基本原则:唯一性代码要反映编码对象的特点:(2)代码设计的基本原则:唯一性合理性可扩充性简单性适用性规范性

在一个分类编码标准中,代码:类型、结构以及编写格式必须统一。34a(2)代码设计的基本原则:唯一性在一个分类编码标准中,代码(3)常用代码设计方案顺序码:是一种用连续数字代表项目名的编码。例如:

00学校

01数学系

02物理系

……特点:代码位数少,一个项目一个连续号处理容易设计和管理较容易35a(3)常用代码设计方案顺序码:35a表意码是把直接或间接表示编码化对象属性的某些文字、数字、记号原封不动作为编码

编码中文英文MT米MeterCM厘米Conti-meterMM毫米Milli-meterTN吨TonKG公斤Kilo-guamLR克Litre………………(3)常用代码设计方案特点:见码知意,易记、易理解编码数量增加时,位数据增加,使处理不变36a表意码编码中文英文MT米MeterCM厘米C位别码:是用不同的位来代表不同的类别,每一位具有某一类别含义。例如:在行政区划代码(GB2260—84)中:第一、二位描述省(自治区、直辖市)、第三、四位描述市(市、州、盟)、第五、六位描述县(市、旗、镇、区)123456省市区(3)常用代码设计方案37a位别码:123456省市区(3)常用代码设计方案37a合成码:是把编码对象用两种以上的代码方案进行组合。例1:代码名称…………210000

辽宁省210100

沈阳市210200

大连市210201

大连市中山区210202

大连市沙河口区…………(3)常用代码设计方案编码方案:省、市、县用顺序码,各位用位别码。位别码和顺序码相结合。38a合成码:代码名称…………210000辽宁省210100服装代码:“0101001”表示一款纯棉男式中山装“0102002”表示一款纯棉女式西服材料男女式样服装款式01纯棉01男式001中山装02纯毛02女式002西服03中长纤维…………003连衣裙……………………特点:容易分类、增加编码层次可从多方面去识别,做各种分类统计容易位数和数据项个数较多。(3)常用代码设计方案例2:位别码:描述分类属性;顺序码:每类中用39a服装代码:材料男女式样服装款式01纯棉01男式0014、分类编码的设计步骤①选定编码化的对象确定对象所属子系统,即:需编码的项目,编码的名称②明确编码化的目的及编码在系统中的作用③确定编码使用范围应适用于一个企业中各部门还可在外单位使用④确定编码使用期限无特殊情况,应作永久性使用⑤决定编码方法合适的分类方法和代码种类及校验方式40a4、分类编码的设计步骤①选定编码化的对象40a5、编码设计实例例:教学管理系统,确定编码对象如表4-5。课程编码设计方案:5位数字组成编码对象使用范围使用期限建议使用的编码方法学生学号整个系统长期合成码课程编码整个系统长期合成码教师编号整个系统长期合成码教室编码整个系统长期合成码位数含义取值及含义1课程大类号0:人文社科、体育、外语;1:经济、管理学科;2:自然学科;3:工程与技术;2、3课程中类号大类号0:01政治;02哲学;03文学;04法律;05历史;…大类号1:01经济;02管理。大类号2:01数学;02物理(包括实验物理);03化学。大类号3:01机械工程;02电气技术;03电子技术与信息技术;…大类号4:01毕业设计;02课程设计;03各类实习;…;05军训4、5某一类下的课程顺序号00101:政治经济学;10101:计量经济学20101:高等数学:20102:线性代数;40501:军训…41a5、编码设计实例例:教学管理系统,确定编码对象如表4-5。编4.3人机界面设计

4.3.1

输入/输出方式

4.3.2

操作模式的设计4.3.3

界面统一性设计42a4.3人机界面设计4.3.1输入/输出方式42a4.3.1输入/输出方式

输入/输出方式校对方式4.3人机界面设计43a4.3.1输入/输出方式输入/输出方式4.3人机界面设4.3.1输入/输出方式

输入/输出方式4.3人机界面设计①键盘输入

②A/D,D/A(即模→数、数→模)转换③网络或通讯传输

④报表

⑤图形输出

⑥批处理/实时处理44a4.3.1输入/输出方式输入/输出方式4.3人机界面设4.3.1输入/输出方式

输入/输出方式校对方式4.3人机界面设计①人工校对②二次键入③利用统计中的平衡关系或财务帐目中的平衡关系进行校对入学年份本科生人数大专生人数学生总数1993

1589

189

1778

1994

1487

127

1614

1995

2001

193

2194

1996

1983

270

2253

合计7060

779

7839

45a4.3.1输入/输出方式输入/输出方式4.3人机界面设4.3.2操作模式的设计

1.界面4.3人机界面设计界面:是系统的感知器官。界面的特点:用户系统功能界面操作信息系统操作动作动作结果46a4.3.2操作模式的设计1.界面4.3人机界面设计界面4.3.2操作模式的设计

1.界面4.3人机界面设计界面:是系统的感知器官。界面的特点:可见性、可供性。可见性:有充分的提示信息,说明哪些是用于操作的以及它们的操作方法,提示用户如何实现人机交互,这就是功能的“可见性”。用户系统功能界面操作信息系统操作动作动作结果47a4.3.2操作模式的设计1.界面4.3人机界面设计界面4.3.2操作模式的设计

1.界面4.3人机界面设计界面:是系统的感知器官。界面的特点:可见性、可供性。可供性:每一项功能及其操作方法对于界面所处环境中的大多数用户来说是显而易见的,只需看一眼就可以有所了解,具有这种特点的控制方法成为“可供性”。用户系统功能界面操作信息系统操作动作动作结果48a4.3.2操作模式的设计1.界面4.3人机界面设计界面4.3.2操作模式的设计

1.界面4.3人机界面设计界面:是系统的感知器官。界面的特点:可见性、可供性。可供性的作用:提供了大量的与操作有关的线索。用户系统功能界面操作信息系统操作动作动作结果49a4.3.2操作模式的设计1.界面4.3人机界面设计界面4.3.2操作模式的设计

2.元动作4.3人机界面设计含义:是用户实现各种操作最基本的单元。作用:可以实现在元动作的集合上的所有人机交互。设计方法:自顶向下。例如,输入日期可分解为元动作:年、月、日。50a4.3.2操作模式的设计2.元动作4.3人机界面设计含4.3.2操作模式的设计

3.操作模式4.3人机界面设计属性值的键盘输入:功能值的实现方法:等待系统处理的形式:属性值的A/D输入:文本输入下拉菜单表格选择功能按钮功能菜单图标按钮进度条漏斗条形码51a4.3.2操作模式的设计3.操作模式4.3人机界面设计4.3.2操作模式的设计

4.步骤4.3人机界面设计分解元动作进行操作模式的设计进行界面的统一性设计(后面讲)52a4.3.2操作模式的设计4.步骤4.3人机界面设计分解4.3.2操作模式的设计

5.示例4.3人机界面设计学生基本信息表管理,采用屏幕--键盘交互方式。实现的功能:输入新生信息、修改错误信息、修正学籍变动信息、删除退学学生信息、删除已毕业学生信息、查询信息。(1)查询功能所需的属性值:学号、姓名、班级、出生日期、专业、年级、学院。(2)分析查询条件的数据类型,分解出元动作集合:学号、姓名、班级、专业、学院;出生日期:分解为年、月、日。(3)分解功能性动作:输入学生信息、修改学生信息、删除学生信息、查询信息分析53a4.3.2操作模式的设计5.示例4.3人机界面设计学生4.3.2操作模式的设计

5.示例4.3人机界面设计学生基本信息表管理,采用屏幕--键盘交互方式。实现的功能:输入新生信息、修改错误信息、修正学籍变动信息、删除退学学生信息、删除已毕业学生信息、查询信息。(1)设计属性值的操作方案:学号、姓名、班级:键盘输入,可有可无,文本方式输入。出生日期:键盘输入,年、月、日。专业、学院:键盘输入。(2)设计功能性动作方案:输入学生信息、修改学生信息、删除学生信息、查询信息:功能按钮、功能菜单、图标按钮。设计54a4.3.2操作模式的设计5.示例4.3人机界面设计学生4.3.2操作模式的设计

6.注意事项4.3人机界面设计操作要尽可能地:①发挥计算机的优势;②符合用户的操作习惯;③简单、明了,使用方便。55a4.3.2操作模式的设计6.注意事项4.3人机界面设计4.3.2界面统一性设计1.风格设计4.3人机界面设计2.导航设计3.可靠性设计具有统一的风格色彩适中突出主题56a4.3.2界面统一性设计1.风格设计4.3人机界面设计4.3.2界面统一性设计1.风格设计4.3人机界面设计2.导航设计3.可靠性设计57a4.3.2界面统一性设计1.风格设计4.3人机界面设计4.3.2界面统一性设计1.风格设计4.3人机界面设计2.导航设计3.可靠性设计减少操作错误的措施:

输入操作符尽可能简单、易记忆,提示要简短、明了;对一些参数设置缺省值;容忍用户操作失误;有运行状态提示,防止错误积累;检测用户错误,屏蔽输入错误,及时提供出错信息。良好的容错性充分的提示信息光标当前位置运行状态58a4.3.2界面统一性设计1.风格设计4.3人机界面设计4.3.2界面统一性设计操作模式、界面风格统一的目标:4.3人机界面设计①简单性②可靠性③易学习与易使用性④立即反馈性59a4.3.2界面统一性设计操作模式、界面风格统一的目标:44.4功能设计的基本方法

原则自顶向下。方法把系统或其组成部分视为暗盒,基于输入与输出及对数据变换功能的模块的逐层分解。模块具有4种属性的一组程序语句。4种属性:模块输入/l输出逻辑功能运行程序内部数据60a4.4功能设计的基本方法原则模块输入/l输出逻辑功能运4.4功能设计的基本方法

示例计算“圆的面积”模块。4种属性:输入:R(半径);输出:S(面积)。逻辑功能:从调用者处获得R;将产生的S返回给调用者。内部数据:π(圆周率)。运行程序:计算圆面积(S)程序。模块输入/l输出逻辑功能运行程序内部数据61a4.4功能设计的基本方法示例模块输入/l输出逻辑功能运4.4功能设计的基本方法

表示结构图。步骤(1)将逻辑结构(数据流程图)转换成初始的结构图;(2)对初始结构图进行优化设计。62a4.4功能设计的基本方法表示62a4.4.1结构图

符号:模块模块之间的调用关系数据传递关系数据可以是:一个数据元素一组数据元素构成的数据结构

标识:一些关于处理结果的标志例如:没找到相应记录的标志、文件结束标志等。4.4功能设计的基本方法AB63a4.4.1结构图符号:4.4功能设计的基本方法AB4.4.1结构图

符号:判断调用关系4.4功能设计的基本方法CDBABA(a)满足某一个条件值时的调用(b)满足条件中三个不同的取值时的调用(a)在A模块中有语句结构:如果条件1成立则调用B(B)在A模块中有语句结构:如果条件取值为1则调用B如果条件取值为2则调用C如果条件取值为3则调用D64a4.4.1结构图符号:4.4功能设计的基本方法CD4.4.1结构图

符号:循环调用关系4.4功能设计的基本方法BAB转接符号Bdd65a4.4.1结构图符号:4.4功能设计的基本方法BA4.4.1结构图

符号:4.4功能设计的基本方法BAB转接BddCDBABA(a)满足某一个条件值时的调用AB调用判断调用循环调用数据标识(b)满足条件中三个不同取值时的调用66a4.4.1结构图符号:4.4功能设计的基本方法BA4.4.1结构图

示例:根据期末考试成绩发补考通知单的结构图如下。4.4功能设计的基本方法产生补考通知确定补考学生获得成绩单成绩单发补考通知单的结构图成绩单获得学生地址打印补考通知打印补考通知学生地址学生学号67a4.4.1结构图示例:4.4功能设计的基本方法产生4.4.1结构图

优点:4.4功能设计的基本方法1、很高的可读性,便于理解和讨论。2、“自顶向下”的原则。3、具有较高的严密性、灵活性。4、结构图是后期各阶段工作的重要保证。1、很高的可读性,便于理解和讨论。68a4.4.1结构图优点:4.4功能设计的基本方法1、4.4.1结构图

优点:4.4功能设计的基本方法1、很高的可读性,便于理解和讨论2、“自顶向下”的原则3、具有较高的严密性、灵活性。4、结构图是后期各阶段工作的重要保证。2、“自顶向下”的原则。逐层扩展得到系统总体结构图。分散整个设计任务由若干个设计人员进行不同部分的设计工作;既便于管理,又能够加快设计进度,提高工作效率。69a4.4.1结构图优点:4.4功能设计的基本方法1、4.4.1结构图

优点:4.4功能设计的基本方法1、很高的可读性,便于理解和讨论。2、“自顶向下”的原则。3、具有较高的严密性、灵活性。4、结构图是后期各阶段工作的重要保证。3、具有较高的严密性、灵活性。能准确地表达系统中各个组成部分以及它们之间的联结关系;能随着数据流程图的改变而改变,灵活性强,易于修改和维护。70a4.4.1结构图优点:4.4功能设计的基本方法1、4.4.1结构图

优点:4.4功能设计的基本方法1、很高的可读性,便于理解和讨论。2、“自顶向下”的原则。3、具有较高的严密性、灵活性。4、结构图是后期各阶段工作的重要保证。4、结构图是后期各阶段工作的重要保证。是系统设计的重要工具是程序设计、系统测试、系统维护工作顺利进行的重要保证。71a4.4.1结构图优点:4.4功能设计的基本方法1、4.4.2功能模块转换策略

1.事务分析高层的数据流程图特别是一级数据流图所表示的处理功能都是相对独立的,可把它们看成是一类类特定的事务,将其转换为结构图。4.4功能设计的基本方法72a4.4.2功能模块转换策略1.事务分析4.4功能例:将教学管理系统二级数据流程图转换成结构图4.4功能设计的基本方法73a例:将教学管理系统二级数据流程图转换成结构图4.4功能设图4-13教学管理系统高层次结构图例:将教学管理系统二级数据流程图转换成结构图4.4功能设计的基本方法74a图4-13教学管理系统高层次结构图例:将教学管理系统二级将学籍处理三级数据流程图转换成结构图4.4功能设计的基本方法75a将学籍处理三级数据流程图转换成结构图4.4功能设计的基本将排课管理三级数据流程图转换成结构图4.4功能设计的基本方法76a将排课管理三级数据流程图转换成结构图4.4功能设计的基本将“制定教学计划”三级数据流图转换成结构图4.4功能设计的基本方法77a将“制定教学计划”三级数据流图转换成结构图4.4功能设计将“统计报表处理”三级数据流程图转换成结构图4.4功能设计的基本方法78a将“统计报表处理”三级数据流程图转换成结构图4.4功能设教学管理系统扩展后的结构图(各三级数据流图的组合)4.4功能设计的基本方法79a教学管理系统扩展后的结构图(各三级数据流图的组合)4.4教学管理系统扩展后的结构图(各三级数据流图的组合)4.4功能设计的基本方法80a教学管理系统扩展后的结构图(各三级数据流图的组合)4.44.4.2功能模块转换策略

2.变换分析是一种把叶子层模块转换成结构图的方法。4.4功能设计的基本方法处理功能的分类第一类:输入功能。第二类:变换功能。第三类:输出功能。特点对数据的变换只是一些形式上的加工,如编辑、验证、排列等。假设输入数据流是X,该处理功能为G,它产生的数据流是X’;则X'=G(X)。81a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析是一种把叶子层模块转换成结构图的方法。4.4功能设计的基本方法处理功能的分类第一类:输入功能。第二类:变换功能。第三类:输出功能。特点对数据流X’进行实质性的变换,即真正的处理;假设它的功能为F,它所产生的数据流是Y’;则Y'=F(X')。82a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析是一种把叶子层模块转换成结构图的方法。4.4功能设计的基本方法处理功能的分类第一类:输入功能。第二类:变换功能。第三类:输出功能。特点它对输入数据流Y’进行形式上的加工,如排列显示格式等等;假设它的功能是H,输出数据流Y,则Y=H(Y')。83a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析是一种把叶子层模块转换成结构图的方法。4.4功能设计的基本方法处理功能的分类第一类:输入功能。第二类:变换功能。第三类:输出功能。步骤(1)对叶子层模块中的处理功能进行分类;(2)确定变换中心(第二类处理功能),画出结构图。84a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析4.4功能设计的基本方法示意图采用变换分析方法进行模块结构设计的示意图:输入变换输出85a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析4.4功能设计的基本方法示意图采用变换分析方法进行模块结构设计的示意图:输入变换输出86a4.4.2功能模块转换策略2.变换分析4.4功能4.4.2功能模块转换策略

2.变换分析4.4功能设计的基本方法示意图采用变换分析方法进行模块结构设计的示意图:输入变换输出87a4.4.2功能模块转换策略2.变换分析4.4功能实例利用事务分析和变换分析绘制的“教师基本信息管理”功能结构图4.4功能设计的基本方法88a实例利用事务分析和变换分析绘制的“教师基本信息管理”功能结构实例:“教师基本信息管理”功能结构图利用事务分析和变换分析绘制教师基本信息管理的一级数据流图→一级功能结构图4.4功能设计的基本方法89a实例:“教师基本信息管理”功能结构图利用事务分析和变换分析实例:“教师基本信息管理”功能结构图利用事务分析和变换分析绘制教师基本信息管理的二级数据流图添加教师基本信息→二级功能结构图4.4功能设计的基本方法90a实例:“教师基本信息管理”功能结构图利用事务分析和变换分析实例:“教师基本信息管理”功能结构图利用事务分析和变换分析绘制“教师基本信息管理”总的功能结构图4.4功能设计的基本方法91a实例:“教师基本信息管理”功能结构图利用事务分析和变换分析4.4.3功能模块优化设计原则1.模块之间的耦合原则4.4功能设计的基本方法2.模块的内聚性原则3.模块的分解原则4.模块的扇入和扇出原则92a4.4.3功能模块优化设计原则1.模块之间的耦合原则44.4.3功能模块优化设计原则1.模块之间的耦合原则4.4功能设计的基本方法耦合:是对一个软件结构内不同模块之间互连程度的度量。影响耦合的主要因素:模块之间信息传递的复杂性。耦合分类:简单耦合、数据耦合;控制耦合、特征耦合;公共环境耦合;内容耦合。低中高AB简单耦合:模块之间仅存在调用与被调用关系,而没有任何的信息传递。93a4.4.3功能模块优化设计原则1.模块之间的耦合原则44.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块之间存在调用与被调用关系;并且还存在着数据通讯,即通过参数交换信息,而且交换的信息仅仅是数据,则称为数据耦合。(1)数据耦合ABx示例:94a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块之间存在调用与被调用关系;并且还存在着数据通讯,即通过参数交换信息,而且交换的信息仅仅是数据,则称为数据耦合。(1)数据耦合ABx示例:95a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块之间存在调用与被调用关系;而且模块A向模块B传递的信息控制了模块B的内部逻辑,那么模块A、B之间的耦合称为控制耦合。(2)控制耦合ABc示例:96a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块之间存在调用与被调用关系;而且模块A向模块B传递的信息控制了模块B的内部逻辑,那么模块A、B之间的耦合称为控制耦合。(2)控制耦合ABc示例:97a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块之间存在调用与被调用关系;同时还存在着数据通讯,并且B模块仅使用了A模块传递的数据结构中的一部分数据元素,则模块A、B之间的耦合称为特征耦合。(3)特征耦合ABX,YX示例:本月用水量本月用电量98a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法如果两个模块或多个模块通过一个公共数据环境相互作用时,它们之间的耦合称为公共环境耦合。(4)公共环境耦合A①数据耦合的形式:一个模块往公共环境送数据,另一个模块从公共环境取数据。B公用数据②介于数据耦合和控制耦合之间:两个模块都既往公共环境送数据又从里面取数据。这种耦合比较紧密。99a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法(4)公共环境耦合全局变量:示例:AB公用数据CDEX假设有一个全局变量X是这5个模块的公用数据;那么模块E和C之间存在着公共耦合。100a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法(5)公共环境耦合全局变量:示例:AB公用数据CDEX假设有一个全局变量X是这5个模块的公用数据;那么模块E和C之间存在着公共耦合。101a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合分类:4.4功能设计的基本方法(5)内容耦合有下述几种情况:AB①一个模块访问另一个模块的内部数据;②一个模块不通过正常入口而转移到另一个模块的内部;③两个模块有一部分程序代码重叠(只出现在汇编程序中);④一个模块有多个入口(一个模块有多种功能)。ABABEntry1Entry2......Entryn......①②③④102a4.4.3功能模块优化设计原则耦合分类:4.4功能设4.4.3功能模块优化设计原则耦合小结:4.4功能设计的基本方法耦合是影响软件复杂程度的一个重要因素。应该采取下述设计原则:尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合。思考题:请同学们例举出各种耦合的实例。103a4.4.3功能模块优化设计原则耦合小结:4.4功能设4.4.3功能模块优化设计原则2.模块的内聚性原则4.4功能设计的基本方法内聚:标志一个模块内各个元素彼此结合的紧密程度。即一个模块内部的各个部分其处理动作的组合强度。内聚与耦合的关系:高内聚意味着模块间的松耦合。X、Y、Z理想内聚的模块:只做一件事情。高内聚→松耦合高内聚>松耦合求和104a4.4.3功能模块优化设计原则2.模块的内聚性原则4.4.4.3功能模块优化设计原则2.模块的内聚性原则4.4功能设计的基本方法内聚分类:10分中高功能内聚顺序内聚通信内聚过程内聚时间内聚逻辑内聚偶然内聚9分7分5分3分1分0分低105a4.4.3功能模块优化设计原则2.模块的内聚性原则4.4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(1)功能内聚10分如果模块内所有处理元素属于一个整体,完成一个单一的功能,则称为功能内聚。功能内聚是最高程度的内聚。示例计算水费执行修改存盘计算机自动排课计算某工厂职工的实发工资计算水费用水量水费106a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(2)顺序内聚9分如果一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行(通常一个处理元素的输出数据作为下一个处理元素的输入数据),则称为顺序内聚。示例查询并显示查询结果先获得查询条件,再执行显示功能登录模块107a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(3)通信内聚7分如果模块中所有元素都使用同一个输入数据和(或)产生同一个输出数据,则称为通信内聚。示例一个模块,是某工厂“产生职工工资报表和计算职工的平均工资”,他们都使用职工的工资记录信息。职工工资记录产生工资报表计算平均工资职工工资报表平均工资108a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(3)通信内聚7分如果模块中所有元素都使用同一个输入数据和(或)产生同一个输出数据,则称为通信内聚。示例一个模块有两个动作,他们是“打印货物交接单”和“港口作业委托单”。这两个动作都使用了船舶货物数据库中的数据。打印货物交接单港口作业委托单船舶货物数据库这两个例子都是使用了同一个数据,而产生了不同的输出。109a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(4)过程内聚如果一个模块内部各组成部分的处理动作各不相同,彼此也没有什么关系,但它们都受同一个控制流支配,以决定它们的执行顺序,则称为过程内聚。使用程序流程图设计软件时,常常通过研究流程图确定模块的划分,这样得到的往往是过程内聚的模块。如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。5分110a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(4)过程内聚示例如果将“学籍处理”设计成一个模块,则该模块接受的是同一个控制流--学籍处理申请的支配,其内部的各个处理动作执行着各不相同的运动作:基本信息管理、奖励信息管理、处分信息管理、变动信息管理、课外活动管理。提高内聚的方法:将模块分解为功能模块。5分111a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(4)过程内聚5分示例如果一个模块中的读入成绩单与查询成绩单必须顺序执行。如果一个模块中的统计成绩与打印成绩必须顺序执行。提高内聚的方法:将模块分解为功能模块。读入成绩单查询成绩单统计成绩打印成绩112a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(5)时间内聚3分如果一个模块包含的任务必须在同一段时间内执行,就叫时间内聚。“初始化”模块。示例“初始化”模块。在系统或程序启动时必须做完一系列的初始化工作,如变量初始化、数组初始化等,它与时间有关,但执行次序不重要,所处理的变量、数组与其后调用的许多程序有关。不同专业(不同的任务)的学生选同一节课。紧急故障处理系统。学生选课113a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(6)逻辑内聚1分如果一个模块完成的任务在逻辑上属于相同或相似的一类,则称为逻辑内聚。“逻辑相似”假设学生回家,可以乘火车、汽车、飞机,这几种方式在逻辑上相似,都是交通工具,但每个交通工具又完全不同,而且只能选择其中一种,即所执行的功能不同。114a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(6)逻辑内聚1分如果一个模块完成的任务在逻辑上属于相同或相似的一类,则称为逻辑内聚。“审核会计报表”模块示例一个工厂需要统计男职工人数和技术员人数。资金平衡表固定资产表男职工技术员利润表......会计报表统计人数115a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚分类4.4功能设计的基本方法(7)偶然内聚0分如果一个模块内的各个任务间的关系很松散,则称为偶然内聚。如果一个模块内的各部分的处理动作彼此没有任务关系,则称这些部分的组合为偶然内聚。示例宣传部门生产部门工厂产品一个工厂(产品)的宣传部门与生产部门。116a4.4.3功能模块优化设计原则内聚分类4.4功能设计4.4.3功能模块优化设计原则内聚类型判断树4.4功能设计的基本方法模块仅有一个功能?模块内各部分关系?次序重要?次序重要?逻辑相似?功能内聚顺序内聚通信内聚过程内聚时间内聚逻辑内聚偶然内聚是否数据流控制流两者皆非是否是否是否117a4.4.3功能模块优化设计原则内聚类型判断树4.4功4.4.3功能模块优化设计原则3.模块的分解原则4.4功能设计的基本方法模块的分解:指把一个模块分解成若干个从属于它的新模块。分解原则:主要是按功能进行分解,直到无法做出明确的功能定义为止。在分解时既要考虑到模块的内聚性,又要考虑到模块之间的耦合程度,并在这两者之间选择一个最佳的方案。

118a4.4.3功能模块优化设计原则3.模块的分解原则4.44.4.3功能模块优化设计原则3.模块的分解原则4.4功能设计的基本方法示例:119a4.4.3功能模块优化设计原则3.模块的分解原则4.44.4.3功能模块优化设计原则4.模块的深度、宽度、扇出、扇入原则4.4功能设计的基本方法深度AB深度3CD软件结构中控制的层数。层数过多,有可能许多管理模块过分简单,应考虑合并。EF120a4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出、扇入原则4.4功能设计的基本方法深度AB宽度3CD软件结构中同一层次上模块总数的最大值。影响因素:模块的扇出。EF宽度121a4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出、扇入原则4.4功能设计的基本方法扇出(Fan_Out)AB扇出3CD一个模块直接控制(调用)的模块数目。或一个模块对它的直属下级模块的控制范围。扇出系数:指其直属下级模块的个数。平均扇出:3-4,上限为5-9EF122a4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出、扇入原则4.4功能设计的基本方法扇出(Fan_Out)ABCD一个模块有多少个上级模块直接调用它。扇入系数:指其直接上级模块的个数。扇入越大,由共享该模块的上级模块数目越多。扇入(Fan_In)E扇入3123a4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出、扇入原则4.4功能设计的基本方法扇出(Fan_Out)ABCD小结扇入(Fan_In)E扇入3很好的软件结构顶层扇出比较高;中层扇出较少;底层高扇入(底扇入到公共的实用模块中去)。AB扇出3CDEF124a4.4.3功能模块优化设计原则4.模块的深度、宽度、扇出利用事务分析和变换分析绘制的“教师基本信息管理”功能结构图4.4.3功能模块优化设计原则4.4功能设计的基本方法125a利用事务分析和变换分析绘制的“教师基本信息管理”功能结构图44.4.3功能模块优化设计原则4.4功能设计的基本方法“教师基本信息管理”模块优化结果:126a4.4.3功能模块优化设计原则4.4功能设计的基本方4.4.4功能设计小结结构化设计方法(简称SD方法),是基于数据流的设计方法。4.4功能设计的基本方法信息流有两种类型:事务流变换流127a4.4.4功能设计小结结构化设计方法(简称SD方法),4.4.4.4功能设计小结结构化设计方法(简称SD方法),是基于数据流的设计方法。4.4功能设计的基本方法信息流有两种类型:事务流变换流设计方法:分析变换128a4.4.4功能设计小结结构化设计方法(简称SD方法),4.4.4.5功能设计案例4.4功能设计的基本方法[例子]汽车数字仪表板的设计。假设的仪表板将完成的功能有:(1)通过模数转换实现传感器和微处理机接口;(2)在发光二极管面板上显示数据;(3)指示每小时英里数(mph),行驶的里程,每加仑油行驶的英里数(mpg)等等;(4)指示加速或减速;(5)超速警告:如果车速超过55英里/小时,则发出超速警告铃声。软件需求分析阶段对上述每条要求以及系统的其他特点进行全面的分析评价;建立起必要的文档资料,特别是数据流图。129a4.4.5功能设计案例4.4功能设计的基本方法[例4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。第4步确定输入流和输出流的边界,从而孤立出变换中心。第5步完成“第一级分解”。第6步完成“第二级分解”。第7步使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化。130a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤确保系统的输入/输出数据符合实际。第1步复查基本系统模型。输入读旋转信号读燃料流传感器信号输出产生加/减速显示产生里程显示发出铃声产生mph显示产生mpg显示131a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法读旋转信号收集和求和信号/秒(SPS)旋转信号确定加速/减速产生加/减速显示转换成转/分(rpm)计算里程产生里程显示计算燃料消耗发出铃声产生mph显示读和校核计算gph计算mph和超速值△SPS箭头批示rpm英里钤声超速值gph燃料流燃料流传感器信号SPS产生mpg显示rpmmphmpgmphmpg显示mph显示水平线上箭头下箭头显示(1)通过模数转换实现传感器和微处理机接口;(2)在发光二极管面板上显示数据;(3)指示每小时英里数(mph),行驶的里程,每加仑油行驶的英里数(mpg)等等;(4)指示加速或减速;(5)车速超过55英里/小时,发出超速警告铃声。132a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第2步复查并精化数据流图。确保数据流图给出了目标系统的正确的逻辑模型;数据流图中的每个处理都代表一个规模适中相对独立的子功能。已知需求分析阶段产生的数字仪表板系统的数据流图如图1所示。该数据流图已经足够详细,不需要精化就可以进行下一个设计步骤。133a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法读旋转信号收集和求和信号/秒(SPS)旋转信号确定加速/减速产生加/减速显示转换成转/分(rpm)计算里程产生里程显示计算燃料消耗发出铃声产生mph显示读和校核计算gph计算mph和超速值△SPS箭头批示rpm英里钤声超速值gph燃料流燃料流传感器信号SPS产生mpg显示rpmmphmpgmphmpg显示mph显示水平线上箭头下箭头显示(1)通过模数转换实现传感器和微处理机接口;(2)在发光二极管面板上显示数据;(3)指示每小时英里数(mph),行驶的里程,每加仑油行驶的英里数(mpg)等等;(4)指示加速或减速;(5)车速超过55英里/小时,发出超速警告铃声。图1134a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。通常,系统中的所有信息流都可以认为是变换流;但是,当有明显事务特性的信息流时,应采用事务分析方法设计。由数据流图图1所示:数据沿着2条通路进入系统;然后沿着5条通路离开系统。无明显的事务中心变换流135a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。第4步确定输入流和输出流的边界,从而孤立出变换中心。第5步完成“第一级分解”。第6步完成“第二级分解”。第7步使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化。136a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法读旋转信号收集和求和信号/秒(SPS)旋转信号确定加速/减速产生加/减速显示转换成转/分(rpm)计算里程产生里程显示计算燃料消耗发出铃声产生mph显示读和校核计算gph计算mph和超速值△SPS箭头批示rpm英里钤声超速值gph燃料流燃料流传感器信号SPS产生mpg显示rpmmphmpgmphmpg显示mph显示水平线上箭头下箭头显示(1)通过模数转换实现传感器和微处理机接口;(2)在发光二极管面板上显示数据;(3)指示每小时英里数(mph),行驶的里程,每加仑油行驶的英里数(mpg)等等;(4)指示加速或减速;(5)车速超过55英里/小时,发出超速警告铃声。图1137a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。第4步确定输入流和输出流的边界,从而孤立出变换中心。第5步完成“第一级分解”。第6步完成“第二级分解”。第7步使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化。138a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第5步完成“第一级分解”。软件结构:对控制的自顶向下的分配。分解:就是分配控制的过程。具有变换流的数据流图分解:将数据流图映射成一个特殊的软件结构;软件结构的特点:控制输入、变换和输出等信息处理过程。139a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第5步完成“第一级分解”。方法如图:软件结构最顶层的控制模块Cm协调其从属的控制功能:输入信息处理控制模块Ca,协调对所有输入数据的接收;变换中心控制模块Ct,管理对内部形式的数据的所有操作;输出信息处理控制模块Ce,协调输出信息的产生过程。140a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第5步完成“第一级分解”。方法如图:图2第一级分解的方法141a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第5步完成“第一级分解”。图3数字仪表板系统的第一级分解数字仪表板一级分解后的结构图每个控制模块的名字表明其控制的模块的功能。142a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。第4步确定输入流和输出流的边界,从而孤立出变换中心。第5步完成“第一级分解”。第6步完成“第二级分解”。第7步使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化。143a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤(1)分解目标:第6步完成“第二级分解”。把数据流图中的每个处理映射成软件结构中一个适当的模块。(2)分解方法:从变换中心的边界开始沿着输入通路向外移动,把输入通路中每个处理映射成软件结构中Ca控制下的一个低层模块;然后沿输出通路向外移动,把输出通路中每个处理映射成直接或间接受模块Ce控制的一个低层模块;最后把变换中心内的每个处理映射成受Ct控制的一个模块。下图表示进行第二级分解的普遍途径。144a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤图a未经精化的输入结构图b未经精化的变换结构图c未经精化的输出结构第6步完成“第二级分解”。(3)分解结果:如图a、b、c。这是软件结构的初步设计结果。145a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤(4)分解后的工作(为每个模块写简要说明与描述):第6步完成“第二级分解”。进出该模块的信息(接口描述);模块内部的信息;过程陈述,包括主要判定点及任务等;对约束和特殊特点的简短讨论。这些描述是第一代的设计规格说明,在设计时期进一步的精化和补充工作经常发生。146a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第1步复查基本系统模型。第3步确定数据流图的特性(变换流或事务流)第2步复查并精化数据流图。第4步确定输入流和输出流的边界,从而孤立出变换中心。第5步完成“第一级分解”。第6步完成“第二级分解”。第7步对第二次分解得到的软件结构进行精化。147a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案例(续)4.4功能设计的基本方法设计步骤第7步对第二次分解得到的软件结构进行精化。根据模块独立原理进行精化。对模块进行再分解或合并。(1)精化方法:(2)对“数字仪表板”软件结构的精化步骤:输入结构中的模块“转换成rpm”和“收集sps”合并;模块“确定加速/减速”放在模块“计算mph”下面,以减少耦合;模块“加速/减速显示”放在模块“显示mph”的下面。(3)“数字仪表板”软件结构的精化结果:148a4.4.5功能设计案例(续)4.4功能设计的基本方法4.4.5功能设计案

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论