欢迎来到天天文库
浏览记录
ID:50077715
大小:755.50 KB
页数:92页
时间:2020-03-08
《软件工程 第4版 教学课件 作者 张海藩 吕云翔 编著 16.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、北航软件学院吕云翔第十六章软件重用重用(reuse)也称为再用或复用,是指同一事物不做修改或稍加改动就可多次重复使用。显然,软件重用是降低软件成本、提高软件生产率和软件质量的非常合理、有效的途径。引言16.1可重用的软件成分广义地说,软件重用可划分成以下3个层次:知识重用(如软件工程知识的重用);方法和标准的重用(如面向对象方法或国家标准局制定的软件开发规范或某些国际标准的重用);软件成分的重用。本节仅讨论软件成分的重用问题。软件成分的重用可以划分为以下3个级别。16.1可重用的软件成分(1)代码重用◇源代码剪贴:这
2、是最原始的重用形式。这种重用方式的缺点是,复制或修改原有代码时可能出错。更糟糕的是,存在严重的配置管理问题,人们几乎无法跟踪原始代码块多次修改重用的过程。16.1可重用的软件成分◇源代码包含:许多程序设计语言都提供包含(include)库中源代码的机制。使用这种重用形式时,配置管理问题有所缓解,因为修改了库中源代码之后,所有包含它的程序自然都必须重新编译。16.1可重用的软件成分◇继承:利用继承机制重用类库中的类时,无须修改已有的代码,就可以扩充或具体化在库中找出的类,因此,基本上不存在配置管理问题。16.1可重用的
3、软件成分(2)设计结果重用设计结果重用指的是,重用某个软件系统的设计模型(即求解域模型)。这个级别的重用有助于把一个应用系统移植到完全不同的软、硬件平台上。16.1可重用的软件成分(3)分析结果重用这是一种更高级别的重用,即重用某个系统的分析模型。这种重用特别适用于用户需求未改变,但系统体系结构发生了根本变化的场合。16.1可重用的软件成分◇项目计划。软件项目计划的基本结构和许多内容(如SQA计划)都是可以跨项目重用的。这样做减少了用于制定计划的时间,也降低了与建立进度表和进行风险分析等活动相关联的不确定性。◇成本估
4、计。因为在不同项目中经常含有类似的功能,所以有可能在只做极少修改或根本不做修改的情况下,重用对该功能的成本估计结果。16.1可重用的软件成分◇体系结构。即使在考虑不同的应用领域时,也很少有截然不同的程序和数据体系结构,因此,有可能创建一组类属的体系结构模板(如事务处理体系结构),并把那些模板作为可重用的设计框架。16.1可重用的软件成分◇需求模型和规格说明。类和对象的模型及规格说明是明显的重用的候选者,此外,用传统软件工程方法开发的分析模型(如数据流图),也是可重用的。◇设计。用传统方法开发的体系结构、数据、接口和过
5、程设计结果,是重用的候选者,更常见的是,系统和对象设计是可重用的。16.1可重用的软件成分◇源代码。用兼容的程序设计语言书写的、经过验证的程序构件,是重用的候选者。◇用户文档和技术文档。即使针对的应用是不同的,也经常有可能重用用户文档和技术文档的大部分。16.1可重用的软件成分◇用户界面。这可能是最广泛被重用的软件成分,GUI(图形用户界面)软件经常被重用。因为它可占到一个应用程序的60%代码量,因此,重用的效果非常显著。◇数据。在大多数经常被重用的软件成分中,被重用的数据包括内部表、列表和记录结构,以及文件和完整的
6、数据库。16.1可重用的软件成分◇测试用例。一旦设计或代码构件将被重用,相关的测试用例应该“附属于”它们。16.2软件重用过程16.2.1构件组装模型16.2.2类构件16.2.3重用过程模型16.2.1构件组装模型重用”应该是每个软件过程的一个不可缺少的组成部分。图16.1所示的构件组装模型,举例说明了怎样把一个可重用的软件构件库集成到典型的演化过程模型中。16.2.1构件组装模型16.2.1构件组装模型构件组装模型包含了螺旋模型的许多特征,它本质上是演化的,支持迭代的软件开发方法。构件组装模型利用预先存储在类库中
7、的软件构件来构造应用程序。16.2.1构件组装模型软件开发活动从对候选类的标识开始,这通过检查将被应用程序加工的数据及用于实现该加工功能的算法来完成。数据和相应的算法被封装成一个类。在以前的软件工程项目中创建出来的类,被存储在一个类库中。16.2.1构件组装模型一旦标识出候选类,就搜索该类库以确定这些候选类是否已经存在。如果已经存在,就从类库中提取出来重用;如果不存在,就用面向对象方法开发它。16.2软件重用过程16.2.1构件组装模型16.2.2类构件16.2.3重用过程模型16.2.2类构件利用面向对象技术,可以
8、比较方便、有效地实现软件重用。面向对象技术中的“类”,是比较理想的可重用的软构件。不妨称之为类构件。在上一小节中讲述的构件组装模型,就是利用类构件来构造应用程序。16.2.2类构件1.可重用的软构件应具备的特点(1)模块独立性强。具有单一、完整的功能,且经过反复测试被确认是正确的。它应该是一个不受或很少受外界干扰的封装体,其内部实现在外面是不可
此文档下载收益归作者所有