《软件工程》 课件 7.5 实现与集成_第1页
《软件工程》 课件 7.5 实现与集成_第2页
《软件工程》 课件 7.5 实现与集成_第3页
《软件工程》 课件 7.5 实现与集成_第4页
《软件工程》 课件 7.5 实现与集成_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

软件工程7.5实现与集成

第七章实现7.5实现与集成一种方案:先实现各模块,

然后集成。疑问:先实现调用模块、还是先实现被调用模块?方法1、先实现调用模块先实现模块A,它需要调用模块B和C,才能保证完成其流程,那么就需要分别制作模块B和C的存根stub;//B()的存根B(){ print(“Biscalled.");}存根可以是一个空模块,更加有效的方式是打印一条提示信息;如果需要的话,返回预先设计好的返回值。如果先实现模块B,它需要模块A来调用它,那么需要一个能够一次或多次调用它的驱动器driver//A()是一个驱动A(){ B();}方法2、先实现被调用模块如果先实现模块B,则需要一个驱动A和两个存根D和E方法3、先实现中间模块如果,先实现各模块,然后集成7.5实现与集成先实现后集成的问题以上的方法缺少错误隔离bug可能存在于这13个模块以及12个接口的任何地方如果200个模块和200个接口这些花费大量精力制作的存根与驱动,在模块单元测试后就会被抛弃,造成很大的浪费。所以,软件模块的实现和集成应该按照一定方法并行开展。自顶向下实现与集成top-down自底向上实现与集成bottom-up三明治实现与集成sandwich7.5实现与集成1.自顶向下实现与集成1.自顶向下实现与集成A、B、D、H、E、C、F、I、J、L、M、K、GA、B、C、D、E、F、G、H、I、J、K、L、M可能的实现与集成顺序1.自顶向下实现与集成优势1:错误隔离。优势2:主要的设计错误能够尽早地被发现。软件系统中的众多模块可分为两大类:逻辑模块LogicModule和操作模块OperationalModule。在实现与集成操作模块之前,就能够发现重大的逻辑错误,从而避免按照错误的设计开发软件系统而将造成的更大损失。1.自顶向下实现与集成缺点:底层的操作模块得不到充分的测试,从而导致这些操作模块的可重用性大大降低保护性编程defensiveprogramming,也称错误屏蔽faultshieldingif(radius>=0)y=area_Circle(radius);软件系统设计越好,这个问题就会越严重2.自底向上实现与集成2.自底向上实现与集成L、M、H、I、J、K、D、E、F、G、B、C、AH、D、E、B、I、L、M、J、K、F、G、C、A可能的实现与集成顺序2.自底向上实现与集成优势1:错误隔离优势2:可重用的操作模块能够得到充分的测试,这样获得操作模块的可重用性和可靠性非常高。2.自底向上实现与集成缺点:重大的设计错误发现较晚重大的设计错误如果有,要到实现与集成工作的后期,实现与集成顶层逻辑模块时才会发现,就意味着整个软件系统设计都要推倒重来,那么底层的操作模块也将随着整个系统框架设计的改变而改变,已经实现与集成了的模块很可能都白做了,这是很大的损失。3.三明治实现与集成对逻辑模块采用自顶向下的实现与集成;对操作模块采用自底向上的实现与集成;最后处理两组模块之间的接口。优势1:能够做

温馨提示

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

评论

0/150

提交评论