欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第4章 软件概要设计.ppt

    • 资源ID:68701236       资源大小:476KB        全文页数:58页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第4章 软件概要设计.ppt

    第第4章章 软件概要设计软件概要设计n n模块的划分模块的划分模块的划分模块的划分n n结构化设计方法结构化设计方法结构化设计方法结构化设计方法(SD)SD)n nParnasParnas方法方法方法方法n nJacksonJackson方法方法方法方法n n程序的逻辑构造程序的逻辑构造程序的逻辑构造程序的逻辑构造(LCP)LCP)方法方法方法方法n n概要设计文件与复审概要设计文件与复审概要设计文件与复审概要设计文件与复审第第4章章 软件概要设计软件概要设计n n需需需需求求求求分分分分析析析析阶阶阶阶段段段段解解解解决决决决了了了了让让让让软软软软件件件件“做做做做什什什什么么么么”的的的的问问问问题题题题,并且在软件需求说明书中得到了充分的表达并且在软件需求说明书中得到了充分的表达并且在软件需求说明书中得到了充分的表达并且在软件需求说明书中得到了充分的表达n n进进进进入入入入设设设设计计计计阶阶阶阶段段段段,开开开开始始始始软软软软件件件件需需需需求求求求的的的的实实实实施施施施工工工工作作作作,也也也也就就就就是解决是解决是解决是解决“怎么做怎么做怎么做怎么做”的问题的问题的问题的问题n n概概概概要要要要设设设设计计计计 (总总总总体体体体设设设设计计计计或或或或结结结结构构构构设设设设计计计计)工工工工作作作作由由由由设设设设计计计计员员员员完完完完成,设计员应该是经验丰富的软件人员成,设计员应该是经验丰富的软件人员成,设计员应该是经验丰富的软件人员成,设计员应该是经验丰富的软件人员第第4章章 软件概要设计软件概要设计n n通常,设计阶段的工作分成两步通常,设计阶段的工作分成两步通常,设计阶段的工作分成两步通常,设计阶段的工作分成两步n n概要设计概要设计概要设计概要设计着重解决程序模块的设计问题着重解决程序模块的设计问题着重解决程序模块的设计问题着重解决程序模块的设计问题n n考虑如何把软件系统划分成若干个模块考虑如何把软件系统划分成若干个模块考虑如何把软件系统划分成若干个模块考虑如何把软件系统划分成若干个模块n n决定各模块的接口,即模块间的相互关系决定各模块的接口,即模块间的相互关系决定各模块的接口,即模块间的相互关系决定各模块的接口,即模块间的相互关系n n模块之间传递的信息模块之间传递的信息模块之间传递的信息模块之间传递的信息n n详详详详细细细细设设设设计计计计 (也也也也称称称称为为为为程程程程序序序序设设设设计计计计)决决决决定定定定每每每每个个个个模模模模块块块块内内内内部部部部的的的的具体算法具体算法具体算法具体算法n n设设设设计计计计完完完完成成成成以以以以后后后后,要要要要进进进进行行行行必必必必要要要要的的的的阶阶阶阶段段段段评评评评审审审审,使使使使设设设设计计计计中中中中发发发发生生生生的的的的问问问问题题题题能能能能够够够够及及及及时时时时发发发发现现现现并并并并得得得得到到到到解解解解决决决决,而而而而不不不不致致致致将将将将其其其其带带带带到到到到开发的后期,造成更大的危害开发的后期,造成更大的危害开发的后期,造成更大的危害开发的后期,造成更大的危害4.1 模块的划分模块的划分n n需求分析中新系统基本模型设计表达了各个业务需求分析中新系统基本模型设计表达了各个业务需求分析中新系统基本模型设计表达了各个业务需求分析中新系统基本模型设计表达了各个业务处理之间的自然逻辑,但没有表达出计算机处理处理之间的自然逻辑,但没有表达出计算机处理处理之间的自然逻辑,但没有表达出计算机处理处理之间的自然逻辑,但没有表达出计算机处理的流程的流程的流程的流程n n概要设计要对基本模型中计算机处理的部分进行概要设计要对基本模型中计算机处理的部分进行概要设计要对基本模型中计算机处理的部分进行概要设计要对基本模型中计算机处理的部分进行处理模块的划分,以明确其处理的流程处理模块的划分,以明确其处理的流程处理模块的划分,以明确其处理的流程处理模块的划分,以明确其处理的流程n n模块模块模块模块是数据说明、可执行语句等程序对象的集合是数据说明、可执行语句等程序对象的集合是数据说明、可执行语句等程序对象的集合是数据说明、可执行语句等程序对象的集合,,它单独命名而且可通过名字来访问,例如,过,它单独命名而且可通过名字来访问,例如,过,它单独命名而且可通过名字来访问,例如,过,它单独命名而且可通过名字来访问,例如,过程、函数、子程序、宏等都可作为模块程、函数、子程序、宏等都可作为模块程、函数、子程序、宏等都可作为模块程、函数、子程序、宏等都可作为模块n n模块化模块化模块化模块化就是把程序划分成若干个模块,每个模块就是把程序划分成若干个模块,每个模块就是把程序划分成若干个模块,每个模块就是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块组成一个整体,可完成一个子功能,把这些模块组成一个整体,可完成一个子功能,把这些模块组成一个整体,可完成一个子功能,把这些模块组成一个整体,可以完成指定的功能以完成指定的功能以完成指定的功能以完成指定的功能4.1 模块的划分模块的划分4.1.1 系统性能的衡量标准系统性能的衡量标准n n衡量软件系统性能的一般标准衡量软件系统性能的一般标准衡量软件系统性能的一般标准衡量软件系统性能的一般标准n n系统效率系统效率系统效率系统效率(批处理系统在单位时间内处理的业务量,或批处理系统在单位时间内处理的业务量,或批处理系统在单位时间内处理的业务量,或批处理系统在单位时间内处理的业务量,或者,实时处理系统的响应时间等者,实时处理系统的响应时间等者,实时处理系统的响应时间等者,实时处理系统的响应时间等)n n系统工作质量系统工作质量系统工作质量系统工作质量(数据精度、输出报表的易读性等数据精度、输出报表的易读性等数据精度、输出报表的易读性等数据精度、输出报表的易读性等)n n系统可靠性系统可靠性系统可靠性系统可靠性(抵御各种外界干扰的能力抵御各种外界干扰的能力抵御各种外界干扰的能力抵御各种外界干扰的能力)n n系统的可维护性系统的可维护性系统的可维护性系统的可维护性(纠正系统错误和缺陷,以及为满足新纠正系统错误和缺陷,以及为满足新纠正系统错误和缺陷,以及为满足新纠正系统错误和缺陷,以及为满足新的要求进行扩充或压缩的容易程度的要求进行扩充或压缩的容易程度的要求进行扩充或压缩的容易程度的要求进行扩充或压缩的容易程度)4.1.2 软件结构软件结构n n软软软软件件件件结结结结构构构构以以以以层层层层次次次次表表表表示示示示程程程程序序序序的的的的系系系系统统统统结结结结构构构构,即即即即一一一一种种种种控控控控制的层次体系,并不表示软件的具体过程制的层次体系,并不表示软件的具体过程制的层次体系,并不表示软件的具体过程制的层次体系,并不表示软件的具体过程 n n软软软软件件件件结结结结构构构构表表表表示示示示了了了了软软软软件件件件元元元元素素素素 (模模模模块块块块)之之之之间间间间的的的的关关关关系系系系,例例例例如如如如调调调调用用用用关关关关系系系系、包包包包含含含含关关关关系系系系、从从从从属属属属关关关关系系系系和和和和嵌嵌嵌嵌套套套套关关关关系系系系等等等等MMNNOOP PQQGGHHI ICCDDAAT TJ JKKL LE EF FBBRRS S宽度宽度宽度宽度深深度度4.1.2 软件结构软件结构n n深度深度深度深度表示软件结构中控制层数表示软件结构中控制层数表示软件结构中控制层数表示软件结构中控制层数n n能能能能粗粗粗粗略略略略表表表表示示示示一一一一个个个个系系系系统统统统的的的的大大大大小小小小和和和和复复复复杂杂杂杂程程程程度度度度,深深深深度度度度和和和和程程程程序序序序长长长长度度度度之之之之间间间间存存存存在在在在着某种对应关系着某种对应关系着某种对应关系着某种对应关系n n宽度宽度宽度宽度是软件内同一层次上的模块总数是软件内同一层次上的模块总数是软件内同一层次上的模块总数是软件内同一层次上的模块总数n n一般来说,结构的宽度越大,则系统就越复杂一般来说,结构的宽度越大,则系统就越复杂一般来说,结构的宽度越大,则系统就越复杂一般来说,结构的宽度越大,则系统就越复杂n n扇出扇出扇出扇出是由一个模块直接控制的其他模块数的一种度量是由一个模块直接控制的其他模块数的一种度量是由一个模块直接控制的其他模块数的一种度量是由一个模块直接控制的其他模块数的一种度量n n扇扇扇扇出出出出过过过过大大大大,表表表表示示示示模模模模块块块块过过过过分分分分复复复复杂杂杂杂,需需需需要要要要控控控控制制制制和和和和协协协协调调调调的的的的下下下下级级级级模模模模块块块块太太太太多多多多。扇出的上限一般为扇出的上限一般为扇出的上限一般为扇出的上限一般为 5 59 9,平均一般为,平均一般为,平均一般为,平均一般为3 3或或或或4 4n n扇入扇入扇入扇入表示有多少个上级模块直接控制一个给定的模块表示有多少个上级模块直接控制一个给定的模块表示有多少个上级模块直接控制一个给定的模块表示有多少个上级模块直接控制一个给定的模块n n扇扇扇扇入入入入过过过过大大大大,意意意意味味味味着着着着共共共共享享享享该该该该模模模模块块块块的的的的上上上上级级级级模模模模块块块块数数数数目目目目多多多多,这这这这有有有有一一一一定定定定的的的的益益益益处处处处,但是决不能违背模块的独立性原则而片面追求高扇入但是决不能违背模块的独立性原则而片面追求高扇入但是决不能违背模块的独立性原则而片面追求高扇入但是决不能违背模块的独立性原则而片面追求高扇入M MA AG GB BC CD DE EF F4.1.3 模块划分的基本原则模块划分的基本原则n n通通通通常常常常,一一一一个个个个系系系系统统统统由由由由若若若若干干干干个个个个子子子子系系系系统统统统组组组组成成成成;每每每每个个个个子子子子系系系系统统统统又又又又可可可可分分分分解成更小的子系统解成更小的子系统解成更小的子系统解成更小的子系统n n在在在在实实实实际际际际中中中中,要要要要求求求求改改改改变变变变整整整整个个个个系系系系统统统统的的的的结结结结构构构构的的的的情情情情况况况况是是是是极极极极为为为为少少少少见见见见的的的的。所所所所谓谓谓谓系系系系统统统统的的的的修修修修改改改改往往往往往往往往只只只只是是是是对对对对某某某某些些些些子子子子系系系系统统统统的的的的某某某某些些些些细细细细节节节节作作作作一一一一些些些些变动,也就是说,这些修改通常都是局部的变动,也就是说,这些修改通常都是局部的变动,也就是说,这些修改通常都是局部的变动,也就是说,这些修改通常都是局部的n n由由由由于于于于各各各各子子子子系系系系统统统统之之之之间间间间是是是是相相相相互互互互关关关关联联联联的的的的,对对对对其其其其中中中中某某某某个个个个子子子子系系系系统统统统的的的的修修修修改改改改,可可可可能能能能会会会会通通通通过过过过这这这这些些些些相相相相互互互互关关关关系系系系而而而而影影影影响响响响到到到到其其其其他他他他子子子子系系系系统统统统,乃乃乃乃至至至至波及整个系统波及整个系统波及整个系统波及整个系统n n要使系统易于修改,应使每一个修改都尽可能地局部化要使系统易于修改,应使每一个修改都尽可能地局部化要使系统易于修改,应使每一个修改都尽可能地局部化要使系统易于修改,应使每一个修改都尽可能地局部化4.1.3 模块划分的基本原则模块划分的基本原则n n进进进进行行行行系系系系统统统统模模模模块块块块划划划划分分分分时时时时,要要要要使使使使模模模模块块块块的的的的内内内内部部部部联联联联系系系系尽尽尽尽可可可可能能能能地地地地强强强强,而而而而模模模模块块块块间间间间的的的的外外外外部部部部联联联联系系系系尽尽尽尽可可可可能能能能地地地地弱弱弱弱,即即即即尽尽尽尽可可可可能能能能地地地地提提提提高高高高模模模模块块块块的的的的相对独立性相对独立性相对独立性相对独立性n n评价模块结构质量的具体标准是评价模块结构质量的具体标准是评价模块结构质量的具体标准是评价模块结构质量的具体标准是n n模模模模块块块块的的的的内内内内聚聚聚聚度度度度(模模模模块块块块强强强强度度度度)指指指指一一一一个个个个模模模模块块块块内内内内部部部部各各各各成成成成分分分分之之之之间间间间的的的的联联联联系系系系。内聚度高,则模块的相对独立性高。内聚度可划分为七级内聚度高,则模块的相对独立性高。内聚度可划分为七级内聚度高,则模块的相对独立性高。内聚度可划分为七级内聚度高,则模块的相对独立性高。内聚度可划分为七级n n模模模模块块块块的的的的耦耦耦耦合合合合度度度度(模模模模块块块块结结结结合合合合度度度度)是是是是模模模模块块块块结结结结构构构构中中中中各各各各模模模模块块块块之之之之间间间间相相相相互互互互联联联联系系系系的的的的一一一一种种种种度度度度量量量量。耦耦耦耦合合合合度度度度越越越越弱弱弱弱,意意意意味味味味着着着着模模模模块块块块独独独独立立立立性性性性越越越越高高高高,模模模模块块块块间间间间相相相相互影响就越小。互影响就越小。互影响就越小。互影响就越小。耦合度分四个方面耦合度分四个方面耦合度分四个方面耦合度分四个方面4.1.4 内聚度内聚度n n偶然内聚偶然内聚偶然内聚偶然内聚 模块内各成分间无实质性联系,只是偶然地被凑合到一起模块内各成分间无实质性联系,只是偶然地被凑合到一起模块内各成分间无实质性联系,只是偶然地被凑合到一起模块内各成分间无实质性联系,只是偶然地被凑合到一起n n逻逻逻逻辑辑辑辑内内内内聚聚聚聚 将将将将几几几几个个个个逻逻逻逻辑辑辑辑上上上上相相相相似似似似 (实实实实际际际际上上上上并并并并无无无无必必必必然然然然联联联联系系系系)的的的的功功功功能能能能放放放放入入入入一一一一个模块个模块个模块个模块n n时时时时间间间间内内内内聚聚聚聚 将将将将若若若若干干干干在在在在同同同同一一一一个个个个时时时时间间间间带带带带内内内内进进进进行行行行的的的的工工工工作作作作集集集集中中中中在在在在一一一一起起起起所所所所形形形形成成成成的的的的模块,但这些工作彼此间毫无关系模块,但这些工作彼此间毫无关系模块,但这些工作彼此间毫无关系模块,但这些工作彼此间毫无关系n n过过过过程程程程内内内内聚聚聚聚 模模模模块块块块内内内内的的的的各各各各成成成成分分分分是是是是相相相相关关关关的的的的,且且且且必必必必须须须须以以以以特特特特定定定定的的的的次次次次序序序序执执执执行行行行,中中中中间不能穿插其他工作间不能穿插其他工作间不能穿插其他工作间不能穿插其他工作n n通通通通讯讯讯讯内内内内聚聚聚聚 模模模模块块块块中中中中的的的的各各各各成成成成分分分分引引引引用用用用相相相相同同同同输输输输入入入入数数数数据据据据和和和和 (或或或或)产产产产生生生生相相相相同同同同的的的的输输输输出数据,但各成分的执行次序可以是任意的出数据,但各成分的执行次序可以是任意的出数据,但各成分的执行次序可以是任意的出数据,但各成分的执行次序可以是任意的n n顺顺顺顺序序序序内内内内聚聚聚聚 模模模模块块块块内内内内各各各各成成成成分分分分间间间间具具具具有有有有这这这这样样样样的的的的特特特特征征征征:前前前前一一一一成成成成分分分分所所所所产产产产生生生生的的的的输输输输出出出出是另一成分的输入是另一成分的输入是另一成分的输入是另一成分的输入n n功能内聚功能内聚功能内聚功能内聚 模块内所有成分属于一个整体,为完成同一个功能而存在模块内所有成分属于一个整体,为完成同一个功能而存在模块内所有成分属于一个整体,为完成同一个功能而存在模块内所有成分属于一个整体,为完成同一个功能而存在4.1.5 耦合度耦合度n n数据耦合度数据耦合度数据耦合度数据耦合度 两个模块之间的通讯信息是若干个数据两个模块之间的通讯信息是若干个数据两个模块之间的通讯信息是若干个数据两个模块之间的通讯信息是若干个数据n n由于两者之间没有控制信号的交换,因此相互间的影响最小由于两者之间没有控制信号的交换,因此相互间的影响最小由于两者之间没有控制信号的交换,因此相互间的影响最小由于两者之间没有控制信号的交换,因此相互间的影响最小n n控控控控制制制制耦耦耦耦合合合合度度度度 两两两两个个个个模模模模块块块块之之之之间间间间传传传传递递递递的的的的信信信信息息息息中中中中含含含含有有有有控控控控制制制制信信信信号号号号,使得一个模块控制了另一个模块的内部逻辑使得一个模块控制了另一个模块的内部逻辑使得一个模块控制了另一个模块的内部逻辑使得一个模块控制了另一个模块的内部逻辑n n公共耦合度公共耦合度公共耦合度公共耦合度 两个模块通过对公共数据的访问建立联系两个模块通过对公共数据的访问建立联系两个模块通过对公共数据的访问建立联系两个模块通过对公共数据的访问建立联系n n因因因因为为为为若若若若干干干干个个个个模模模模块块块块共共共共用用用用某某某某几几几几个个个个数数数数据据据据,就就就就使使使使联联联联结结结结关关关关系系系系复复复复杂杂杂杂起起起起来来来来,增增增增加加加加了模块修改的难度了模块修改的难度了模块修改的难度了模块修改的难度n n内容耦合度内容耦合度内容耦合度内容耦合度 一个模块不经调用直接使用另一模块的内容一个模块不经调用直接使用另一模块的内容一个模块不经调用直接使用另一模块的内容一个模块不经调用直接使用另一模块的内容n n例例例例如如如如模模模模块块块块A A用用用用绝绝绝绝对对对对地地地地址址址址直直直直接接接接使使使使用用用用模模模模块块块块B B的的的的数数数数据据据据就就就就是是是是一一一一例例例例。这这这这是是是是最最最最坏坏坏坏的一种联结形式,给模块维护带来很大困难的一种联结形式,给模块维护带来很大困难的一种联结形式,给模块维护带来很大困难的一种联结形式,给模块维护带来很大困难4.1.6 高内聚和低耦合高内聚和低耦合n n内内内内聚聚聚聚和和和和耦耦耦耦合合合合是是是是密密密密切切切切相相相相关关关关的的的的,模模模模块块块块内内内内的的的的高高高高内内内内聚聚聚聚往往往往往往往往意味着模块间的低耦合意味着模块间的低耦合意味着模块间的低耦合意味着模块间的低耦合n n内内内内聚聚聚聚度度度度和和和和耦耦耦耦合合合合度度度度要要要要说说说说明明明明的的的的是是是是同同同同一一一一内内内内容容容容,即即即即模模模模块块块块的的的的独独独独立立立立性性性性,它它它它们们们们是是是是衡衡衡衡量量量量这这这这种种种种独独独独立立立立性性性性的的的的两两两两个个个个不不不不同同同同的的的的方方方方面面面面4.1.6 高内聚和低耦合高内聚和低耦合n n在软件设计中,应该追求高内聚、低耦合在软件设计中,应该追求高内聚、低耦合在软件设计中,应该追求高内聚、低耦合在软件设计中,应该追求高内聚、低耦合(即即即即块块块块内要紧,块间要松内要紧,块间要松内要紧,块间要松内要紧,块间要松)的系统的系统的系统的系统n n可以研究、测试或维护任何一个模块,而不需要对系可以研究、测试或维护任何一个模块,而不需要对系可以研究、测试或维护任何一个模块,而不需要对系可以研究、测试或维护任何一个模块,而不需要对系统的其他模块有很多了解统的其他模块有很多了解统的其他模块有很多了解统的其他模块有很多了解n n由于模块间联系简单,发生在某处的错误传播到整个由于模块间联系简单,发生在某处的错误传播到整个由于模块间联系简单,发生在某处的错误传播到整个由于模块间联系简单,发生在某处的错误传播到整个系统的可能性很小系统的可能性很小系统的可能性很小系统的可能性很小n n模块间的耦合程度强烈地影响着系统的可理解性、模块间的耦合程度强烈地影响着系统的可理解性、模块间的耦合程度强烈地影响着系统的可理解性、模块间的耦合程度强烈地影响着系统的可理解性、可测试性、可靠性和可维护性等性能可测试性、可靠性和可维护性等性能可测试性、可靠性和可维护性等性能可测试性、可靠性和可维护性等性能4.1.7 模块划分的方法模块划分的方法n n根根据据模模块块间间的的结结合合方方式式,可可以以把把模模块块划划分分的方法分成的方法分成n n按控制流划分按控制流划分按控制流划分按控制流划分n n按数据流划分按数据流划分按数据流划分按数据流划分控制流结合的模块划分法控制流结合的模块划分法n n按功能调用关系按功能调用关系按功能调用关系按功能调用关系(控制流控制流控制流控制流)来进行模块划分来进行模块划分来进行模块划分来进行模块划分n n设设设设有有有有一一一一个个个个主主主主模模模模块块块块,这这这这个个个个主主主主模模模模块块块块通通通通过过过过调调调调用用用用关关关关系系系系将将将将各各各各处处处处理理理理模模模模块块块块组组组组织织织织起起起起来,同时用参数等形式进行数据传递来,同时用参数等形式进行数据传递来,同时用参数等形式进行数据传递来,同时用参数等形式进行数据传递n n时时时时间间间间结结结结合合合合的的的的功功功功能能能能调调调调用用用用划划划划分分分分法法法法以以以以时时时时间间间间为为为为基基基基础础础础来来来来考考考考虑虑虑虑模模模模块块块块的划分的划分的划分的划分n n该模块只处理一种业务该模块只处理一种业务该模块只处理一种业务该模块只处理一种业务n n具有时间执行顺序具有时间执行顺序具有时间执行顺序具有时间执行顺序n n功功功功能能能能结结结结合合合合的的的的功功功功能能能能调调调调用用用用划划划划分分分分法法法法按按按按业业业业务务务务类类类类型型型型 (每每每每一一一一类类类类业业业业务务务务执行某一个功能执行某一个功能执行某一个功能执行某一个功能)来划分模块来划分模块来划分模块来划分模块主模块输入模块处理模块输出模块调用关系调用关系调用关系调用关系数据流数据流数据流数据流图图图图4-2 4-2 4-2 4-2 时间结合的功能调用划分法时间结合的功能调用划分法时间结合的功能调用划分法时间结合的功能调用划分法业务类型判断调度输入模块处理一处理二处理三业务类型业务类型业务类型业务类型图图图图4-3 4-3 4-3 4-3 功能结合的功能调用划分法功能结合的功能调用划分法功能结合的功能调用划分法功能结合的功能调用划分法数据流结合的模块划分法数据流结合的模块划分法n n数据流划分法也叫变换为中心划分法数据流划分法也叫变换为中心划分法数据流划分法也叫变换为中心划分法数据流划分法也叫变换为中心划分法n n逐次运用逐次运用逐次运用逐次运用“黑盒黑盒黑盒黑盒”的工程定义将问题进行功能分解的工程定义将问题进行功能分解的工程定义将问题进行功能分解的工程定义将问题进行功能分解n n即即即即按按按按数数数数据据据据变变变变换换换换的的的的阶阶阶阶段段段段划划划划分分分分模模模模块块块块,其其其其中中中中每每每每个个个个模模模模块块块块都都都都看看看看成成成成是一个是一个是一个是一个“黑盒黑盒黑盒黑盒”n n对对对对这这这这个个个个“黑黑黑黑盒盒盒盒”进进进进行行行行输输输输入入入入、输输输输出出出出以以以以及及及及输输输输入入入入、输输输输出出出出间间间间的的的的变换的考察变换的考察变换的考察变换的考察n n考考考考察察察察的的的的结结结结果果果果又又又又划划划划分分分分成成成成若若若若干干干干更更更更小小小小的的的的模模模模块块块块,然然然然后后后后将将将将这这这这些些些些模模模模块作为新的块作为新的块作为新的块作为新的“黑盒黑盒黑盒黑盒”,再进行考察,再进行考察,再进行考察,再进行考察n n最后细分到每个最后细分到每个最后细分到每个最后细分到每个“黑盒黑盒黑盒黑盒”都能用简单程序实现为止都能用简单程序实现为止都能用简单程序实现为止都能用简单程序实现为止I1I1I1I1P1P1P1P1D1D1D1D1I2I2I2I2P2P2P2P2D2D2D2D2P3P3P3P3输入数据输入数据输入数据输入数据处理程序处理程序处理程序处理程序中间数据中间数据中间数据中间数据D3D3D3D3P4P4P4P4O1O1O1O1O2O2O2O2输出数据输出数据输出数据输出数据图图图图4-4 4-4 4-4 4-4 数据流结合的数据流结合的数据流结合的数据流结合的模块划分模块划分模块划分模块划分模块划分法的选择模块划分法的选择n n在实际工作中,上述划分方法是交替使用的在实际工作中,上述划分方法是交替使用的在实际工作中,上述划分方法是交替使用的在实际工作中,上述划分方法是交替使用的n n研研研研究究究究系系系系统统统统的的的的主主主主要要要要输输输输入入入入、输输输输出出出出数数数数据据据据的的的的结结结结构构构构,如如如如果果果果之之之之间间间间存存存存在在在在对对对对应应应应关关关关系系系系,则则则则进进进进行行行行与与与与该该该该对对对对应应应应关关关关系系系系相相相相符符符符合合合合的的的的控控控控制制制制流流流流模模模模块划分。这相当于功能结合的功能调用划分块划分。这相当于功能结合的功能调用划分块划分。这相当于功能结合的功能调用划分块划分。这相当于功能结合的功能调用划分n n如如如如果果果果主主主主要要要要的的的的输输输输入入入入、输输输输出出出出数数数数据据据据之之之之间间间间没没没没有有有有明明明明确确确确的的的的对对对对应应应应关关关关系系系系,则则则则可可可可引引引引入入入入中中中中间间间间数数数数据据据据,并并并并通通通通过过过过这这这这些些些些中中中中间间间间数数数数据据据据进进进进行行行行数数数数据据据据流流流流划分,以使输入、输出数据能逐次对应划分,以使输入、输出数据能逐次对应划分,以使输入、输出数据能逐次对应划分,以使输入、输出数据能逐次对应n n如如如如果果果果从从从从输输输输入入入入到到到到输输输输出出出出,整整整整个个个个处处处处理理理理存存存存在在在在着着着着明明明明显显显显的的的的数数数数据据据据变变变变换换换换过程,那么可以考虑采用数据流划分过程,那么可以考虑采用数据流划分过程,那么可以考虑采用数据流划分过程,那么可以考虑采用数据流划分4.2 结构化设计方法结构化设计方法(SD)n nSDSD方方方方法法法法适适适适合合合合于于于于软软软软件件件件系系系系统统统统的的的的总总总总体体体体设设设设计计计计,是是是是从从从从整整整整个个个个程程程程序序序序的的的的结结结结构出发,突出程序模块的一种设计方法构出发,突出程序模块的一种设计方法构出发,突出程序模块的一种设计方法构出发,突出程序模块的一种设计方法n n它它它它对对对对确确确确定定定定结结结结构构构构采采采采用用用用了了了了面面面面向向向向贯贯贯贯穿穿穿穿系系系系统统统统的的的的数数数数据据据据流流流流的的的的方方方方法法法法,同同同同时,它对软件结构质量的评价提供了一个指导原则时,它对软件结构质量的评价提供了一个指导原则时,它对软件结构质量的评价提供了一个指导原则时,它对软件结构质量的评价提供了一个指导原则n nSDSD方法用模块结构图来表达程序模块之间的关系方法用模块结构图来表达程序模块之间的关系方法用模块结构图来表达程序模块之间的关系方法用模块结构图来表达程序模块之间的关系n n由由由由于于于于数数数数据据据据流流流流程程程程图图图图和和和和模模模模块块块块结结结结构构构构图图图图之之之之间间间间有有有有着着着着一一一一定定定定的的的的联联联联系系系系,结结结结构构构构化化化化设设设设计计计计方方方方法法法法可可可可以以以以和和和和需需需需求求求求分分分分析析析析中中中中采采采采用用用用的的的的结结结结构构构构化化化化分分分分析析析析方方方方法法法法 (SA)SA)很好地衔接很好地衔接很好地衔接很好地衔接n n使用结构化设计方法的关键是恰当地划分模块使用结构化设计方法的关键是恰当地划分模块使用结构化设计方法的关键是恰当地划分模块使用结构化设计方法的关键是恰当地划分模块n n这一方法还能和结构化程序设计这一方法还能和结构化程序设计这一方法还能和结构化程序设计这一方法还能和结构化程序设计(SP)SP)相适应相适应相适应相适应4.2.1 变换与事务型数据流分析变换与事务型数据流分析n n系统设计的策略是根据数据流程图,按信息类型系统设计的策略是根据数据流程图,按信息类型系统设计的策略是根据数据流程图,按信息类型系统设计的策略是根据数据流程图,按信息类型的不同转换成不同的软件结构,然后用软件设计的不同转换成不同的软件结构,然后用软件设计的不同转换成不同的软件结构,然后用软件设计的不同转换成不同的软件结构,然后用软件设计的原则优化软件结构的原则优化软件结构的原则优化软件结构的原则优化软件结构优化数据流优化数据流优化数据流优化数据流数据流类型数据流类型数据流类型数据流类型确定事务中心确定事务中心确定事务中心确定事务中心和数据获取路径和数据获取路径和数据获取路径和数据获取路径区分输入、输出区分输入、输出区分输入、输出区分输入、输出分支分支分支分支映射成事务结构映射成事务结构映射成事务结构映射成事务结构映射成事务结构映射成事务结构映射成事务结构映射成事务结构详细设计详细设计详细设计详细设计用系统设计原则用系统设计原则用系统设计原则用系统设计原则优化软件结构优化软件结构优化软件结构优化软件结构导出接口描述导出接口描述导出接口描述导出接口描述及全程数据结构及全程数据结构及全程数据结构及全程数据结构复复复复 审审审审Y Y Y YN N N N事务型事务型事务型事务型变换型变换型变换型变换型图图图图4-5 4-5 4-5 4-5 面向数据流面向数据流面向数据流面向数据流的设计过程的设计过程的设计过程的设计过程4.2.1 变换与事务型数据流分析变换与事务型数据流分析n n信息流有两种类型信息流有两种类型n n变变变变换换换换流流流流类类类类型型型型 指指指指信信信信息息息息由由由由输输输输入入入入源源源源经经经经过过过过软软软软件件件件系系系系统统统统的的的的变换变换变换变换(处理处理处理处理)再进入外部世界再进入外部世界再进入外部世界再进入外部世界(输出对象输出对象输出对象输出对象)n n事事事事务务务务流流流流类类类类型型型型 指指指指信信信信息息息息由由由由输输输输入入入入源源源源进进进进入入入入系系系系统统统统后后后后可可可可能能能能有有有有多多多多种种种种路路路路径径径径进进进进行行行行处处处处理理理理,需需需需要要要要选选选选择择择择其其其其中中中中之之之之一一一一进进进进行行行行处理处理处理处理图图图图4-6 4-6 4-6 4-6 变换流类型变换流类型变换流类型变换流类型图图图图4-7 4-7 4-7 4-7 事务流类型事务流类型事务流类型事务流类型4.2.2 模块化设计模块化设计n n结结结结构构构构化化化化设设设设计计计计方方方方法法法法基基基基本本本本思思思思想想想想是是是是将将将将系系系系统统统统设设设设计计计计成成成成由由由由相相相相对对对对独独独独立立立立、单单单单一功能的模块组成的结构一功能的模块组成的结构一功能的模块组成的结构一功能的模块组成的结构n n由由由由于于于于模模模模块块块块之之之之间间间间是是是是相相相相对对对对独独独独立立立立的的的的,所所所所以以以以每每每每个个个个模模模模块块块块可可可可以以以以独独独独立立立立地地地地被被被被理理理理解解解解、编码、测试、排错或修改,使复杂的软件开发工作得以简化编码、测试、排错或修改,使复杂的软件开发工作得以简化编码、测试、排错或修改,使复杂的软件开发工作得以简化编码、测试、排错或修改,使复杂的软件开发工作得以简化n n模模模模块块块块的的的的相相相相对对对对独独独独立立立立性性性性也也也也能能能能有有有有效效效效地地地地防防防防止止止止错错错错误误误误在在在在模模模模块块块块之之之之间间间间扩扩扩扩散散散散蔓蔓蔓蔓延延延延,使使使使错误的影响控制在最小的范围,从而提高系统的可靠性错误的影响控制在最小的范围,从而提高系统的可靠性错误的影响控制在最小的范围,从而提高系统的可靠性错误的影响控制在最小的范围,从而提高系统的可靠性n n模模模模块块块块的的的的相相相相对对对对独独独独立立立立性性性性是是是是结结结结构构构构化化化化设设设设计计计计方方方方法法法法最最最最主主主主要要要要的的的的优优优优点点点点,它它它它提提提提高高高高了了了了系系系系统的质量,也减少了系统开发的工作量统的质量,也减少了系统开发的工作量统的质量,也减少了系统开发的工作量统的质量,也减少了系统开发的工作量n n模模模模块块块块独独独独立立立立性性性性还还还还为为为为扩扩扩扩充充充充已已已已有有有有的的的的系系系系统统统统、建建建建立立立立新新新新系系系系统统统统带带带带来来来来许许许许多多多多方方方方便便便便,因因因因为可以充分利用现有的模块作积木式的扩展为可以充分利用现有的模块作积木式的扩展为可以充分利用现有的模块作积木式的扩展为可以充分利用现有的模块作积木式的扩展4.2.2 模块化设计模块化设计n n用用用用SDSDSDSD方法进行系统设计时,一般可分两步进行方法进行系统设计时,一般可分两步进行方法进行系统设计时,一般可分两步进行方法进行系统设计时,一般可分两步进行n n建建建建立立立立初初初初始始始始结结结结构构构构图图图图应应应应该该该该审审审审查查查查分分分分析析析析这这这这个个个个结结结结构构构构,通通通通过过过过模模模模块分解或合并力求降低耦合,提高内聚,逐步改进块分解或合并力求降低耦合,提高内聚,逐步改进块分解或合并力求降低耦合,提高内聚,逐步改进块分解或合并力求降低耦合,提高内聚,逐步改进n n改进初始结构图改进初始结构图改进初始结构图改进初始结构图4.2.2 模块化设计模块化设计n n改进初始结构图改进初始结构图改进初始结构图改进初始结构图n n减减减减少少少少块块块块间间间间联联联联系系系系,降降降降低低低低耦耦耦耦合合合合性性性性:可可可可从从从从方方方方式式式式、作作作作用用用用、数数数数量量量量等方面着手,最常用的是减少模块间传递的参数个数等方面着手,最常用的是减少模块间传递的参数个数等方面着手,最常用的是减少模块间传递的参数个数等方面着手,最常用的是减少模块间传递的参数个数n n消消消消除除除除管管管管道道道道性性性性模模模模块块块块,提提提提高高高高内内内内聚聚聚聚性性性性 (管管管管道道道道性性性性模模模模块块块块只只只只是是是是像像像像管管管管道道道道一样将一些参数从主模块传送到它的几个下层模块一样将一些参数从主模块传送到它的几个下层模块一样将一些参数从主模块传送到它的几个下层模块一样将一些参数从主模块传送到它的几个下层模块)n n适当考虑系统将来可能发生的变化适当考虑系统将来可能发生的变化适当考虑系统将来可能发生的变化适当考虑系统将来可能发生的变化n n注意模块的大小:是降低复杂性的手段之一注意模块的大小:是降低复杂性的手段之一注意模块的大小:是降低复杂性的手段之一注意模块的大小:是降低复杂性的手段之一n n适适适适当当当当控控控控制制制制调调调调用用用用或或或或被被被被调调调调用用用用的的的的次次次次数数数数,即即即即深深深深度度度度、宽宽宽宽度度度度、扇扇扇扇出出出出和扇入都要适当和扇入都要适当和扇入都要适当和扇入都要适当n n整整整整体体体体考考考考虑虑虑虑问问问问题题题题:尽尽尽尽可可可可能能能能研研研研究究究究整整整整张张张张结结结结构构构构图图图图,而而而而不不不不是是是是分分分分别别别别考虑一张结构图的各个部分考虑一张结构图的各个部分考虑一张结构图的各个部分考虑一张结构图的各个部分4.2.3 模块结构图模块结构图(SC)n n模模模模块块块块结结结结构构构构图图图图 (又又又又称称称称程程程程序序序序结结结结构构构构图图图图)是是是是采采采采用用用用结结结结构构构构化化化化设设设设计计计计方法进行

    注意事项

    本文(第4章 软件概要设计.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开