软件开发过程与质量保证-4-软件设计2009(3)复习进程_第1页
软件开发过程与质量保证-4-软件设计2009(3)复习进程_第2页
软件开发过程与质量保证-4-软件设计2009(3)复习进程_第3页
软件开发过程与质量保证-4-软件设计2009(3)复习进程_第4页
软件开发过程与质量保证-4-软件设计2009(3)复习进程_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

软件开发过程与质量保证-4-软件设计2009(3)1.分析过程2.分解结构银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人相关信息,并印出存款收据给用户;如果是取款,则系统首先核对储户密码,若密码正确,则系统计算利率并印利息清单给储户。结构化设计过程从软件的需求规格说明中弄清数据流加工的过程,修改数据流图,明确新系统做什么?确定新系统的逻辑模型四、结构化设计方法概述结构化设计思想主要是在20世纪70年代由Constantine和Yourdon等总结了一些优秀的程序设计实践而发展起来的。其最大的好处就是极大的增加了代码的复用能力。它的主要表示方法是一种分层次的结构图。认为一个程序、一组程序或者一组系统无非是由一组功能操作来构成的,并进而吸取了结构化分析的“黑盒子”的概念。结构化设计的目标将软件设计为结构互相独立、功能单一的模块,建立系统的模块结构图结构化设计模型从分析模型到设计模型之间的对应关系五、软件结构图软件结构图的组成传入模块─从下属模块取得数据,经过某些处理,再将其传送给上级模块。它传送的数据流叫做逻辑输入数据流。传出模块─从上级模块获得数据,进行某些处理,再将其传送给下属模块。它传送的数据流叫做逻辑输出数据流。变换模块─它从上级模块取得数据,进行特定的处理,转换成其它形式,再传送回上级模块。它加工的数据流叫做变换数据流。协调模块─对所有下属模块进行协调和管理的模块。软件结构图的类型软件结构图的类型源于数据流图的类型,根据不同的数据流类型将会产生对应的软件结构图。数据流图的类型变换型数据流图事务性数据流图对应的软件结构图变换型软件结构图事务性软件结构图1.软件结构图类型(1)变换型软件结构图变换型软件结构变换型数据处理问题的工作过程大致分为三步,即取得数据,变换数据和给出数据;相应于取得数据、变换数据、给出数据,变换型系统结构;图由输入、中心变换和输出等三部分组成。(2)事务型软件结构图事务型系统结构它接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。在事务型系统结构图中,事务中心模块按所接受的事务的类型,选择某一事务处理模块执行。各事务处理模块并列。每个事务处理模块可能要调用若干个操作模块,而操作模块又可能调用若干个细节模块。2.变换分析变换分析步骤重画数据流图;区分有效(逻辑)输入、有效(逻辑)输出和中心变换部分;进行一级分解,设计上层模块;进行二级分解,设计输入、输出和中心变换部分的中、下层模块。进行变换分析时需注意的内容在选择模块设计的次序时,必须对一个模块的全部直接下属模块都设计完成之后,才能转向另一个模块的下层模块的设计。在设计下层模块时,应考虑模块的耦合和内聚问题,以提高初始结构图的质量。使用“黑箱”技术在设计当前模块时,先把这个模块的所有下层模块定义成“黑箱”,在设计中利用它们时,暂时不考虑其内部结构和实现。在这一步定义好的“黑箱”,在下一步就可以对它们进行设计和加工。这样,又会导致更多的“黑箱”。最后,全部“黑箱”的内容和结构应完全被确定。在模块划分时,一个模块的直接下属模块一般在5个左右。如果直接下属模块超过10个,可设中间层次。如果出现了以下情况,就停止模块的功能分解:当模块不能再细分为明显的子任务时;当分解成用户提供的模块或程序库的子程序时;当模块的界面是输入/输出设备传送的信息时;当模块不宜再分解得过小时。变换分析是软件系统结构设计的主要方法。例子1格式检查3产生收据2计算汇费4记账汇款单合格的汇款单处理后的汇款单收据明细账变换中心输出输入业务数据练习汇款处理系统取得合格汇款单计算汇费记账输出处理后的汇款单输入汇款单格式检查产生收据打印收据合格的汇款单处理后的汇款单合格的汇款单业务数据处理后的汇款单汇款单合格的汇款单汇款单处理后的汇款单收据收据业务数据3.事务分析事务分析在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能。这种数据流就叫做事务。与变换分析一样,事务分析也是从分析数据流图开始,自顶向下,逐步分解,建立系统到结构图。事务分析具体步骤识别事务源利用数据流图和数据词典,从问题定义和需求分析的结果中,找出各种需要处理的事务。通常,事务来自物理输入装置。有时,设计人员还必须区别系统的输入、中心加工和输出中产生的事务。规定适当的事务型结构在确定了该数据流图具有事务型特征之后,根据模块划分理论,建立适当的事务型结构。识别各种事务和它们定义的操作从问题定义和需求分析中找出的事务及其操作所必需的全部信息,对于系统内部产生的事务,必须仔细地定义它们的操作。注意利用公用模块在事务分析的过程中,如果不同事务的一些中间模块可由具有类似的语法和语义的若干个低层模块组成,则可以把这些低层模块构造成公用模块。对每一事务,或对联系密切的一组事务,建立一个事务处理模块;

如果发现在系统中有类似的事务,可以把它们组成一个事务处理模块。对事务处理模块规定它们全部的下层操作模块对操作模块规定它们的全部细节模块一般,一个大型的软件系统是变换型结构和事务型结构的混合结构。所以,我们通常利用以变换分析为主,事务分析为辅的方式进行软件结构设计。例子调整后的软件结构图要求类型处理图书管理要求无效输入1.1新书入库1.2还入库单罚款单1.5注销图书1.3还书1.4目录文件借书单书单注销单借书借书文件罚款单事务中心图书处理系统取得图书处理要求修改目录文件操作层细节层新书入库注销图书借书还书打印罚款单修改借书文件………………图书管理要求入库单借书单还书单注销单4.优化设计优化设计将初始结构图根据模块独立性原则进行精化,对模块进行合并、分解修改、调整,得到高内聚、低耦合模块,得到易于实现、易于测试和易于维护的软件结构,产生设计文档的系统最终结构图。优化设计基本原则合理控制系统的深度与宽度合理控制模块的扇出数(扇出数5—7)模块的大小要适当消除重复的功能作用范围要在控制范围之内设计单入口单出口模块例子步骤1:评审和精化软件的数据流图。步骤2:确定DFD含有变换流还是事务流步骤3:刻画输入和输出流的边界,隔离变换中心。输入流被描述成信息从外部形式变换为内部信息的路径。输出流是信息从内部形式变换为外部形式的路径。步骤4:完成软件结构的顶层模块和第一层结构图步骤5:完成软件结构的第二层结构转化完成软件结构的第一次迭代步骤6:用提高软件质量的启发信息,精化第一次迭代得到的程序结构事务分析事务分析方法的具体步骤重画数据流图确定事务流和变换流标识事务中心、事务接收路径和事务处理路径设计软件结构的顶层和第一层设计软件结构的第二层具有边界的用户交互子系统的第2层DFD步骤1:评审和精化软件的数据流图步骤2:确定DFD含有变换流还是事务流特征。步骤3:标识事务中心和每条动作路径上的流特征。软件结构第一层图软件结构第二层图事务映射过程步骤4:将DFD映射到一个适合于进行事务处理的程序结构

温馨提示

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

评论

0/150

提交评论