收藏 分销(赏)

需求分析解决系统做什么总体设计解决系统怎样做.pptx

上传人:丰**** 文档编号:3111978 上传时间:2024-06-18 格式:PPTX 页数:74 大小:572.77KB 下载积分:16 金币
下载 相关 举报
需求分析解决系统做什么总体设计解决系统怎样做.pptx_第1页
第1页 / 共74页
需求分析解决系统做什么总体设计解决系统怎样做.pptx_第2页
第2页 / 共74页


点击查看更多>>
资源描述
2024/6/17 周一1第五章 总体设计软件工程(Software Engineering)2024/6/17 周一2总体设计总体设计需求分析解决:系统做什么?总体设计解决:系统怎样做?2024/6/17 周一3总体设计总体设计 总总体体设设计计(Summary Design)又又称称为为概概要要设设计计或或初初步步设设计计。通通过过这这个个阶阶段段的的工工作作将将划划分分出出组组成成系系统统的的物物理理元元素素程程序序(Program)、文文件件(File)、数数据据库库(Dada base)、人人工工过过程程和和文文档档(Document)等等等等,但但是是每每个个物物理理元元素素仍仍然然处处于于黑黑盒盒子子(Black Box)级级,这这些些黑黑盒盒子子里里的的具具体体内内容容将将在在以以后后仔仔细细设计。总体设计阶段的另一项重要任务是:设计。总体设计阶段的另一项重要任务是:设计软件的结构设计软件的结构 确定系统中每个程序是由哪些模块组成确定系统中每个程序是由哪些模块组成 确定模块相互间的关系确定模块相互间的关系 前一页2024/6/17 周一4设计过程设计过程 设计原理设计原理 启发式规则启发式规则 描述软件结构的图形工具描述软件结构的图形工具 面向数据流的设计方法面向数据流的设计方法 本章主要内容本章主要内容前一页2024/6/17 周一5总体的设计过程总体的设计过程总体设计过程分为两个阶段系统设计阶段:确定系统的实现方案结构设计阶段:确定软件结构2024/6/17 周一6前一页总体的设计过程总体的设计过程设想供选择的方案设想供选择的方案 选取合理的方案选取合理的方案 推荐最佳方案推荐最佳方案 功能分解功能分解 设计软件结构设计软件结构 数据库设计数据库设计 制定测试计划制定测试计划 书写文档书写文档审核和复审审核和复审 2024/6/17 周一7前一页总总体体的的设设计计过过程程设想供选择的方案 分分析析员员考考虑虑各各种种可可能能的的实实现现方方案案(Project),并并且且力力求求从从中中选选出出最最佳佳方方案案。在在总总体体设设计计阶阶段段开开始始时时只只有有系系统统的的逻逻辑辑模模型型,分分析析员员有有充充分分的的自自由由分分析析比比较较不不同同的的物物理理实实现现方方案案,可可以以从从需需求求分分析析得得到到的的数数据流图入手。据流图入手。常用的方法是:设想在数据流图中处常用的方法是:设想在数据流图中处理分组的各种可能的方法,抛弃在技术上理分组的各种可能的方法,抛弃在技术上行不通的方法,余下的方法作为可能实现行不通的方法,余下的方法作为可能实现的策略,并且可以启发供选择的物理系统。的策略,并且可以启发供选择的物理系统。2024/6/17 周一8前一页总总体体的的设设计计过过程程选取合理方案 从上一步提供的方案中选取,至少从上一步提供的方案中选取,至少选取低成本、中等成本和高成本的三种选取低成本、中等成本和高成本的三种方案。对每个合理的方案分析员都应该方案。对每个合理的方案分析员都应该准备下列四份资料:准备下列四份资料:(1)系统流程图)系统流程图 (2)组成系统的物理元素的清单)组成系统的物理元素的清单(3)成本)成本/效益分析效益分析(4)实现这个系统的进度计划)实现这个系统的进度计划 2024/6/17 周一9前一页总总体体的的设设计计过过程程推荐最佳方案 分分析析员员应应该该综综合合分分析析对对比比各各种种合合理理的的方方案案,推推荐荐一一个个最最佳佳的的方方案案,并并且且为为推推荐荐的的方方案制定详细的实现计划。案制定详细的实现计划。用户和有关的技术专家审查推荐的最佳用户和有关的技术专家审查推荐的最佳系统,如果确定该系统符合用户的需要,并系统,如果确定该系统符合用户的需要,并且是在现有条件下完全能够实现的,则请使且是在现有条件下完全能够实现的,则请使用部门负责人进一步审批。在接受分析员所用部门负责人进一步审批。在接受分析员所推荐的方案之后,推荐的方案之后,系统设计完成系统设计完成,进入总体,进入总体设计过程的下一个重要阶段设计过程的下一个重要阶段结构设计。结构设计。2024/6/17 周一10前一页总总体体的的设设计计过过程程功能分解 为了最终实现目标系统,必须设计出组成为了最终实现目标系统,必须设计出组成这个系统的所有程序和文件(或数据库)。对这个系统的所有程序和文件(或数据库)。对程序(特别是复杂的大型程序)的设计,通常程序(特别是复杂的大型程序)的设计,通常分为两个阶段完成:分为两个阶段完成:结构设计结构设计(Structure Design):是总体设:是总体设计阶段的任务,确定程序由那些模块组计阶段的任务,确定程序由那些模块组成,以及这些模块之间的关系。成,以及这些模块之间的关系。过程设计过程设计(Process Design):是详细设计:是详细设计阶段的任务,确定每个模块的处理过程。阶段的任务,确定每个模块的处理过程。2024/6/17 周一11功能分解 为确定软件结构,首先需要从实现为确定软件结构,首先需要从实现角度把复杂的功能进一步分解。角度把复杂的功能进一步分解。功能分解导致数据流图进一步细化,功能分解导致数据流图进一步细化,同时使用图形工具描述算法。同时使用图形工具描述算法。2024/6/17 周一12前一页总总体体的的设设计计过过程程设计软件结构 即结构设计,包括确定系统各模块即结构设计,包括确定系统各模块间的关系。间的关系。通常程序中的一个模块完成一个适通常程序中的一个模块完成一个适当的子功能,而一个程序包含若干个当的子功能,而一个程序包含若干个模块,因此考虑把模块组织成良好的模块,因此考虑把模块组织成良好的层次系统。顶层模块调用它下层模块层次系统。顶层模块调用它下层模块以实现程序的完整功能,每个下层模以实现程序的完整功能,每个下层模块再调用更下层的模块,从而完成程块再调用更下层的模块,从而完成程序的一个子功能,最下层的模块完成序的一个子功能,最下层的模块完成最具体的功能最具体的功能。2024/6/17 周一13设计软件结构 顶层模块调用它下层模块以实现程序的顶层模块调用它下层模块以实现程序的完整功能,每个下层模块再调用更下层的完整功能,每个下层模块再调用更下层的模块,从而完成程序的一个子功能,最下模块,从而完成程序的一个子功能,最下层的模块完成最具体的功能层的模块完成最具体的功能。软件结构可以用层次图或结构图表示。软件结构可以用层次图或结构图表示。有些软件的结构可以通过细化的数据流图有些软件的结构可以通过细化的数据流图映射得到。映射得到。2024/6/17 周一14前一页总总体体的的设设计计过过程程数据库设计 对于需要使用数据库的系统,对于需要使用数据库的系统,工程师需要对数据库进行设计。工程师需要对数据库进行设计。2024/6/17 周一15前一页总总体体的的设设计计过过程程制定测试计划 在软件开发的早期阶段考虑测试在软件开发的早期阶段考虑测试(Testing)问题,能促使软件设计人员问题,能促使软件设计人员在设计时注意提高软件的可测试性在设计时注意提高软件的可测试性。2024/6/17 周一16前一页总总体体的的设设计计过过程程书写文档 1.系统说明系统说明 2.用户手册用户手册 3.测试计划测试计划 4.详细的实现计划详细的实现计划 5.数据库设计结果数据库设计结果 2024/6/17 周一17前一页总总体体的的设设计计过过程程审核和复审 最后应该对总体设计的结果进最后应该对总体设计的结果进行严格的技术审查,通过之后再由行严格的技术审查,通过之后再由使用部门从管理和应用的角度进行使用部门从管理和应用的角度进行复审。复审。2024/6/17 周一18软件设计的概念和原理模块化模块化 抽象抽象 逐步求精逐步求精信息隐蔽和局部化信息隐蔽和局部化 模块独立模块独立 前一页主主要要内内容容2024/6/17 周一19前一页软件设计的概念和原理模块化 模块模块(Modular)是数据说明、可执是数据说明、可执行语句等程序对象的集合,它是单独行语句等程序对象的集合,它是单独命名的而且可通过名字来访问。模块命名的而且可通过名字来访问。模块化就是把程序划分成若干个模块,每化就是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块个模块完成一个子功能,把这些模块集总起来组成一个整体,可以完成指集总起来组成一个整体,可以完成指定的功能满足问题的要求。定的功能满足问题的要求。2024/6/17 周一20前一页软件设计的概念和原理模块化 设设函函数数C(x)定定义义问问题题x的的复复杂杂程程度度,函函数数E(x)确确定定解解决决问问题题x需需要要的的工工作作量量(时间),对于两个问题(时间),对于两个问题p1和和p2,If C(p1)C(p2)Then E(p1)E(p2)C(p1p2)C(P1)+C(p2)E(p1p2)E(p1)+E(p2)2024/6/17 周一21前一页模块化与软件成本2024/6/17 周一22前一页软件设计的概念和原理抽 象 人类在认识复杂现象的过程中使人类在认识复杂现象的过程中使用的最强有力的思维工具抽象用的最强有力的思维工具抽象(Abstract)。人们在实践中认识到,在。人们在实践中认识到,在现实世界中一定事物、状态或过程之现实世界中一定事物、状态或过程之间总存在着某些相似的方面(共性间总存在着某些相似的方面(共性)。把这些相似的方面集中和概括起来,把这些相似的方面集中和概括起来,暂时忽略它们之间的差异,这就是抽暂时忽略它们之间的差异,这就是抽象。象。2024/6/17 周一23抽 象处理复杂系统的唯一有效的方法是用层次的方式构造和分析它。2024/6/17 周一24逐步求精逐步求精和模块化的概念,与抽象是密切相关的。如软件工程的每一步都是对软件解法的抽象层次的一次精化。可行性分析阶段,软件作为完整的部件;需求阶段,软件解法使用熟悉的问题描述;从总体设计到详细设计,抽象程度降低,逐步精化。抽象与求精互补。2024/6/17 周一25逐步求精定义:为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。原因:人类认知过程的局限Miller法则 一个人在任何时候都只能把注意力集中在(7+2)个知识块上。逐步求精的效果,把注意力集中在与当前开发最相关的问题上,忽略暂时不需要考虑的细节。2024/6/17 周一26前一页软件设计的概念和原理信息的隐蔽和局部化 信息隐藏:使得一个模块内包括的信信息隐藏:使得一个模块内包括的信息息(过程和数据)对于不需要这些信息的过程和数据)对于不需要这些信息的模块来说,是不能访问的。模块来说,是不能访问的。局部化:把一些关系密切的软件元素局部化:把一些关系密切的软件元素物理地放得彼此靠近。物理地放得彼此靠近。“隐蔽隐蔽”(Hiding)意味着有效的模块意味着有效的模块化可以通过定义一组独立的模块而实现,化可以通过定义一组独立的模块而实现,这些独立的模块彼此间仅仅交换那些为了这些独立的模块彼此间仅仅交换那些为了完成系统功能而必须交换的信息。完成系统功能而必须交换的信息。2024/6/17 周一27前一页模块独立 模块独立模块独立(Independence)的概念是模块化、的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。抽象、信息隐蔽和局部化概念的直接结果。开发具有独立功能而且和其他模块之间没开发具有独立功能而且和其他模块之间没有过多的相互作用的模块,就可以做到模块独有过多的相互作用的模块,就可以做到模块独立立。模块独立性的优点:模块独立性的优点:第一,有效的模块化(即具有独立的模块)第一,有效的模块化(即具有独立的模块)的软件比较容易开发出来。的软件比较容易开发出来。第二,独立的模块比较容易测试和维护。第二,独立的模块比较容易测试和维护。2024/6/17 周一28模块独立 模块的独立程度可以由两个定性标准模块的独立程度可以由两个定性标准度量,这两个标准分别称为度量,这两个标准分别称为内聚和耦合内聚和耦合,内聚衡量一个模块内部各个元素彼此结合内聚衡量一个模块内部各个元素彼此结合的紧密程度;耦合衡量不同模块彼此间互的紧密程度;耦合衡量不同模块彼此间互相依赖(连接)的紧密程度。相依赖(连接)的紧密程度。2024/6/17 周一29前一页软件设计的概念和原理模块独立 耦合耦合耦合(Coupling)耦合是对一个软件结构内不同模块之间耦合是对一个软件结构内不同模块之间互联程度的度量。互联程度的度量。在软件设计时应该追求松散耦合的系统。在软件设计时应该追求松散耦合的系统。如果两个模块中的每一个都能独立地工如果两个模块中的每一个都能独立地工作而不需要另一个模块地存在,那么它们彼作而不需要另一个模块地存在,那么它们彼此完全独立,这意味着模块间无任何连接,此完全独立,这意味着模块间无任何连接,耦合程度最低耦合程度最低。2024/6/17 周一30前一页几种类型的耦合模块独立 耦合数据耦合数据耦合(Data Coupling):如果两个模块彼:如果两个模块彼此间通过参数交换信息,而且交换的信息仅此间通过参数交换信息,而且交换的信息仅仅是数据,那么这种耦合称为数据耦合。仅是数据,那么这种耦合称为数据耦合。控制耦合控制耦合(Control Coupling):如果传递的信:如果传递的信息中有控制信息,则这种耦合称为控制耦合。息中有控制信息,则这种耦合称为控制耦合。数据耦合是数据耦合是低耦合低耦合。系统必须存在这种。系统必须存在这种耦合,因为只有当某些模块的输出数据作为耦合,因为只有当某些模块的输出数据作为另一些模块的输入数据时,系统才能完成有另一些模块的输入数据时,系统才能完成有价值的功能。价值的功能。2024/6/17 周一31前一页模块独立 耦合 公共环境耦合公共环境耦合(Common Coupling):当两个或多个模块通过一个公共数据环境当两个或多个模块通过一个公共数据环境相互作用时,它们之间的耦合称为公共环相互作用时,它们之间的耦合称为公共环境耦合。境耦合。内容耦合内容耦合(Contain Coupling):最高程:最高程度的耦合是内容耦合。度的耦合是内容耦合。原则:原则:尽量使用数据耦合,少用控制耦尽量使用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全不用合,限制公共环境耦合的范围,完全不用内容耦合内容耦合。几种类型的耦合2024/6/17 周一32前一页软件设计的概念和原理模块独立 内聚内聚内聚(Cohesion)内聚是一个模块内各个元素彼此结合的紧内聚是一个模块内各个元素彼此结合的紧密程度。设计时应该力求做到高内聚,通常中密程度。设计时应该力求做到高内聚,通常中等程度的内聚也是可以采用的。等程度的内聚也是可以采用的。内聚和耦合密切相关,模块内的高内聚意内聚和耦合密切相关,模块内的高内聚意味着模块间的松耦合。味着模块间的松耦合。按程度分类按程度分类:低内聚低内聚 中内聚中内聚 高内聚高内聚2024/6/17 周一33前一页模块独立 内聚低内聚低内聚 有如下几类有如下几类:偶然内聚、逻辑内聚、偶然内聚、逻辑内聚、时间内聚时间内聚 偶偶然然内内聚聚(Coincidental Cohesion):模模块块中中,元元素素之之间间没没有有实实质质的的联联系系,在在不不同同的的场场合合需需要要做不同的修改,导致出错概率高。做不同的修改,导致出错概率高。逻辑内聚逻辑内聚(Logical Cohesion):模块中,不:模块中,不同功能混在一起,合用部分程序代码,局部修同功能混在一起,合用部分程序代码,局部修改会影响全局,导致修改困难。改会影响全局,导致修改困难。时间内聚时间内聚(Temporal Cohesion):模块中,各:模块中,各处理单元必须在一个有限的时间间隔内执行完处理单元必须在一个有限的时间间隔内执行完成。成。几种类型的内聚2024/6/17 周一34前一页模块独立 内聚中内聚中内聚 主要有两类:主要有两类:过程内聚过程内聚(Procedural Cohesion)需要需要按特定顺序执行模块内的处理元素的称为过按特定顺序执行模块内的处理元素的称为过程内聚。程内聚。通信内聚通信内聚(Communication Cohesion)模模块中所有元素都使用同一个输入数据或输出块中所有元素都使用同一个输入数据或输出同一个数据,称为通信内聚。同一个数据,称为通信内聚。几种类型的内聚2024/6/17 周一35前一页模块独立 内聚高内聚高内聚 也有两类:也有两类:顺序内聚顺序内聚 功能内聚功能内聚 顺序内聚顺序内聚(Sequential Cohesion)模模块中一个处理单元的输出是另一个处理单块中一个处理单元的输出是另一个处理单元的输入。元的输入。功能内聚功能内聚(Functional Cohesion)模块模块中所有处理单元共同完成同一功能。中所有处理单元共同完成同一功能。功能内聚是最高程度的内聚。功能内聚是最高程度的内聚。几种类型的内聚2024/6/17 周一36前一页软件设计的概念和原理模块独立 内聚 高内聚高内聚 也有两类:也有两类:顺序内聚顺序内聚、功功能内聚能内聚。对内聚的参考评价:对内聚的参考评价:功能内聚功能内聚 10分分 时间内聚时间内聚 3分分 顺序内聚顺序内聚 9分分 逻辑内聚逻辑内聚 1分分 通信内聚通信内聚 7分分 偶然内聚偶然内聚 0分分 过程内聚过程内聚 5分分 2024/6/17 周一37启发式规则启发式规则改进软件结构提高模块独立性改进软件结构提高模块独立性模块规模应该适中模块规模应该适中 深度、宽度、扇出和扇入应适当深度、宽度、扇出和扇入应适当 模块的作用域应在控制域之内模块的作用域应在控制域之内 尽量降低模块接口的复杂程度尽量降低模块接口的复杂程度 设计单入口出口的模块设计单入口出口的模块 模块功能应该可以预测模块功能应该可以预测 前一页主要内容2024/6/17 周一38图形工具图形工具层次图和层次图和HIPO图图 结构图结构图 前一页主要内容2024/6/17 周一39前一页图形工具层次图 层层次次图图 用用来来描描绘绘软软件件的的层层次次结结构构,层层次次图图适适合合于于在在自自顶顶向向下下设设计计软软件件的的过程中使用。过程中使用。2024/6/17 周一40层次图层次图和层次方框图的区别层次图和层次方框图的区别层次图中一个矩形表示一个模块,矩形框之间的连线表示调用关系层次方框图一个矩形表示一个数据集合,矩形框之间的连线表示数据的层次2024/6/17 周一41前一页正文加工系统的层次图正文加工系统的层次图2024/6/17 周一42HIPO图HIPO图图 是美国是美国IBM公司发明的层次图加公司发明的层次图加“输入处理输出图输入处理输出图”的英文缩写为了能的英文缩写为了能使使HIPO图具有可追踪性,在图具有可追踪性,在H图(层次图)图(层次图)里除了最顶层的方框之外,每个方框都加里除了最顶层的方框之外,每个方框都加了编号。了编号。和和H图中每个方框对应,有一张图中每个方框对应,有一张IPO图描绘图描绘该模块的处理过程。该模块的处理过程。2024/6/17 周一43前一页带编号的层次图(带编号的层次图(H图)图)2024/6/17 周一44前一页结构图 Yourdon提出的进行软件结构设计的有力工提出的进行软件结构设计的有力工具。具。图中方框代表模块,方框之间的箭头图中方框代表模块,方框之间的箭头/连线连线表示模块的调用关系。表示模块的调用关系。用带注释的箭头表示模块调用过程中传递用带注释的箭头表示模块调用过程中传递的信息。并可以用箭头尾部的形状来区分传递的信息。并可以用箭头尾部的形状来区分传递信息的种类:尾部是信息的种类:尾部是空心圆空心圆表示传递的是表示传递的是数据数据,实心圆实心圆表示传递的是表示传递的是控制信息。控制信息。2024/6/17 周一45前一页产生最佳解的结构图2024/6/17 周一46前一页判定为真时调用判定为真时调用A为假时调用为假时调用BM循环调用循环调用A、B、C2024/6/17 周一47层次图和结构图层次图和结构图并没有表示出模块的调用次序。同时两种图也没有指明什么时候调用下层模块。2024/6/17 周一48面向数据流的设计方法前一页 面向数据流的设计方法的目标是给出面向数据流的设计方法的目标是给出设计软件结构的一个系统化的途径。设计软件结构的一个系统化的途径。在软件工程的需求分析阶段,信息流在软件工程的需求分析阶段,信息流是一个关键,通常用数据流图描绘信息在是一个关键,通常用数据流图描绘信息在系统中加工和流动的情况。系统中加工和流动的情况。面向数据流的面向数据流的设计方法即把数据流图变换成软件结构。设计方法即把数据流图变换成软件结构。通常所说的结构化设计方法(简称通常所说的结构化设计方法(简称SD方法)方法),也就是基于数据流的设计方法。,也就是基于数据流的设计方法。2024/6/17 周一49面向数据流的设计方法面向数据流的设计方法概念概念 变换分析变换分析事务分析事务分析设计优化设计优化 前一页主要内容2024/6/17 周一50前一页面向数据流的设计方法概念 变换流 根根据据基基本本系系统统模模型型,信信息息通通常常以以“外外部部世世界界”的的形形式式进进入入软软件件系系统统,经经过过处处理理以以后后再再以以“外外部世界部世界”的形式离开系统。的形式离开系统。2024/6/17 周一51前一页变换流图2024/6/17 周一52概念 变换流信息沿输入通路进入系统,同时由外部形信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。当数据流变换成外部形式离开软件系统。当数据流图具有这些特征时,这种信息流就叫作变图具有这些特征时,这种信息流就叫作变换流换流。2024/6/17 周一53前一页概念 事务流 数据沿输入通路到达一个处理数据沿输入通路到达一个处理T,这个,这个处理根据输入数据的类型再若干个动作序列处理根据输入数据的类型再若干个动作序列中选出一个来执行。这类数据流应该划为一中选出一个来执行。这类数据流应该划为一类特殊的数据流,称为事务流。类特殊的数据流,称为事务流。(1)接接收收输输入入数数据据(输输入入数数据据又又称称为为事事务务);(2)分析每个事物以确定它的类型;)分析每个事物以确定它的类型;(3)根据事物类型选取一条活动通道。)根据事物类型选取一条活动通道。处理处理T称为事务中心,完成的任务:称为事务中心,完成的任务:2024/6/17 周一54前一页事 务 流2024/6/17 周一55前一页概念设计过程2024/6/17 周一56前一页面向数据流的设计方法变换分析设计 把具有变换流特点的数据流图把具有变换流特点的数据流图按预先确定的模式映射成软件结按预先确定的模式映射成软件结构构。2024/6/17 周一57前一页面向数据流的设计方法变换流分析设计 设设计计一一个个安安装装在在汽汽车车上上的的数数字字仪仪表表板板,功功能如下:能如下:(1)通通过过模模数数转转换换实实现现传传感感器器和和微微处处理理机接口;机接口;(2)在发光二极管面板上显示数据;)在发光二极管面板上显示数据;(3)指指示示每每小小时时英英里里数数(mph),行行驶驶的的英里数(英里数(mpg),总里程等等;),总里程等等;(4)指示加速或减速;)指示加速或减速;(5)超速报警。)超速报警。2024/6/17 周一58前一页面向数据流的设计方法变换流分析设计第第1步步 复查基本系统模型。复查基本系统模型。第第2步步 复查并精化数据流图。复查并精化数据流图。2024/6/17 周一59前一页数字仪表板数据流图2024/6/17 周一60变换流分析设计第第3步步 确定数据流图具有变换特性还是事确定数据流图具有变换特性还是事务特性。务特性。上图中数据沿着两条输入通路进入系统,上图中数据沿着两条输入通路进入系统,然后沿着然后沿着5条通路离开,没有事务中心,所条通路离开,没有事务中心,所以是变换流。以是变换流。2024/6/17 周一61变换流分析设计第第4步步 确定输入流和输出流的边界,从而确定输入流和输出流的边界,从而孤立出变换中心。孤立出变换中心。即在数据流图中画出输入、处理和输出。即在数据流图中画出输入、处理和输出。不同的设计人员可能会选取不同的点作为不同的设计人员可能会选取不同的点作为边界的位置。边界的位置。边界移动,对软件结构影响小。边界移动,对软件结构影响小。2024/6/17 周一62前一页确定输入流和输出流的边界2024/6/17 周一63变换流分析设计第第5步步 完成完成“第一级分解第一级分解”。即在第即在第4步的基础上,将数据流图的各部分步的基础上,将数据流图的各部分映射为初级的层次图。映射为初级的层次图。2024/6/17 周一64变换流分析设计2024/6/17 周一65前一页2024/6/17 周一66变换流分析设计第第6步步 完成完成“第二级分解第二级分解”。即将数据流图中每个处理都映射为一个模块即将数据流图中每个处理都映射为一个模块方法:方法:先从变换中心的边界沿着输入向外映射先从变换中心的边界沿着输入向外映射再从变换中心沿着输出向外映射再从变换中心沿着输出向外映射最后映射变换中心的处理最后映射变换中心的处理2024/6/17 周一67前一页完成第二级的分解2024/6/17 周一68前一页未经精化的结构图2024/6/17 周一69变换流分析设计第第7步步 使用设计度量和启发式规则对第一使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化。次分割得到的软件结构进一步精化。2024/6/17 周一70前一页 精化的软件结构图2024/6/17 周一71面向事务流的设计方法前一页事务流的分析设计 事务分析的设计步骤和变换分析的设计步骤大部分相同或类似,主要差别仅在于由数据流图到软件结构的映射方法不同。2024/6/17 周一72前一页事务流分析的映射方法2024/6/17 周一73前一页设计优化先使它动起来,先使它动起来,再使它快起来再使它快起来。2024/6/17 周一74本章内容结束前一页回首页
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服