《软件重用技术》PPT课件.ppt
《《软件重用技术》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件重用技术》PPT课件.ppt(32页珍藏版)》请在三一办公上搜索。
1、第十章,第十章软件重用和构件技术,软件重用技术,10,10.1 软件重用概述,软件重用就是将已有的软件成分用于构造新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。可重用的软件成分,也称为可重用构件(Reusable Component)可从旧软件中提取,也可以专门为重用而开发。软件重用不仅是对程序的重用,它包括对软件生产过程中任何活动所产生的制成品的重用。如:项目计划、可行性报告、需求定义、分析模型、详细说明、源程序和测试用例等等。,10.1.1 软件重用的级别,包括目标代码,也包括文本形式的源代码。,受实际环境影响小,可重用机会多,所需修改少。,可被重用的分析结果是针对
2、问题域的某些事物或某些问题的抽象程度更高的解法。,主要包括测试用例(test case)的重用和测试过程信息的重用。,三种方式重用:从现有系统的分析结果中提取可重用构件用于新系统的分析;用一份完整的分析文档作为输入,成生针对不通软硬件平台和其它实现条件的多项设计;独立于具体应用,专门开发一些可重用的分析构件。,软件生产过程主要是正向过程,即软件产品从抽象级别较高的形态向抽象级别较低的形态演化,所以较高级别的重用容易带动较低级别的重用,反之则不然。重用级别越高,可得到的回报也越大,因此分析软件(Analysis Ware)和设计软件(Design Ware)的重用备受重视。,软件重用的优点:(1
3、)提高软件生产率,降低软件生产代价;(2)提高软件质量;(3)互操作性好;(4)推动标准化;(5)支持原型开发。,10.1.软件重用的形式,一、按照重用活动所跨越的应用领域的类型分1.横向重用(horizontal reuse)也称为水平重用,是指重用活动的范围跨越了几个不同的应用领域,重用的软件产品主要包括数据结构、通用算法、人机界面等软件元素。2.纵向重用(vertical reuse)也称为垂直重用,是指重用活动的范围限制在同一个应用领域或者是一类具有较多共性的应用领域内。,二、基于软件重用的软件开发过程的角度分.生产者重用(product reuse)指建立、获取或者重新设计可重用构件
4、的活动。涉及到的活动包括:重用的规划、领域分析、构件的开发、构件库的组织和管理。.消费者重用(consumer reuse)指使用可重用的构件建立新的系统的活动。涉及到的活动包括:应用系统的规划、构件的检索和选择、应用系统中非重用部分的开发、应用系统的组装。,重用具有许多明显的优点,目前应用不广泛的主要原因是:(1)技术因素 构件与应用系统之间的差异;构件要达到一定的规模,才能支持有效的重用;发现合用构件的困难;基于重用的软件开发方法和软件过程需要一些新的理论、技术及支持环境。,10.1.3 软件重用的困难,(2)人的因素 喜欢自己创造而不喜欢使用别人的东西。,重用具有许多明显的优点,目前应用
5、不广泛的主要原因是:,10.1.3 软件重用的困难,(4)教育因素 软件科学技术的教育与培训中,缺乏关于软件重用的内容,缺少专门教材和课程。,(3)管理因素 把重用构件和一般软件构件同等看待,把重用看作可有可无的事。,10.2 软件构件与构件工程,基于软件构件的软件工程也称为构件工程,是以面向对象的方法为基础,实现软件重用,构造新系统的过程。为了实现软件重用,基于软件构件的软件工程强调领域工程与软件工程同时进行。领域工程创建应用领域的模型,标识、构造、分类和传播一组可重用的软件。,图,重用的过程模型,典型的重用的过程模型,描述了领域工程与软件工程的关系。,一个软件只有在多个系统中被使用才可称为
6、“可重用构件”,必须具备的条件:(1)独立性 解决一个相对独立的问题,或大问题中某个相对独立的部分;(2)完整性 提供较完整的解决,不要遗留很多缺口,让重用者做大量补充;(3)可标识性 构件所解决的问题应该是可标识的,可命名,有简要介绍,便于理解和使用。,6.2.1 可重用构件,一个软件只有在多个系统中被使用才可称为“可重用构件”,必须具备的条件:(4)通用性 构件解决的问题,应在同类应用中具有一般性;(5)适应性 应用场合有某些变化时,构件仍是可用的,使构件的某些数据参数化和数据类型参数化;(6)可靠性 要求构件对预计将要使用它的系统时可靠的;(7)标准化 可重用构件的标准化对于软件重用是至
7、关重要的。,10.2.1 可重用构件,6.2.2 基于构件的软件工程,基于构件的软件工程与传统的或面向对象的软件工程相比,有显著的差异。它不是针对某个特定的软件系统,而是针对一类软件系统的共同的特征、知识和需求。基于构件的软件的开发过程包括两个并发的子过程,一个是领域工程,另一个是基于构件的开发。领域工程完成一组可重用构件的标示、构造、分类和传播;基于构件的开发完成使用可重用构件构造新的软件系统。,领域分析是对特定应用领域中共同的特征、知识、需求的标识、分析和规约。领域分析是特定领域内软件重用的基础,它的目标就是:发现和挖掘在特定领域内可以被重用的构件。领域分析活动中输入和输出如图所示:,10
8、.2.3 领域分析,领域分析,输入信息技术文献已有应用专家经验/建议当前与未来的需求,输出信息领域语言重用标准分类方法功能/行为模型,领域分析的输入和输出,领域分析(Domain Analysis)是对一类应用系统的共同应用领域进行系统化分析,以发现该领域的共同知识、需求及其应用系统的共同特征。领域分析又称领域工程(Domain Engineering),是软件工程的发展与延伸。领域分析是一项比系统分析更难的工作。领域分析方法可采用结构化方法和面向对象方法,而后者将成为主流。,领域分析不是针对某个特定的软件系统,而是针对一类软件系统的共同的特征、知识和需求。比需求分析更一般、更抽象、更广泛的特
9、征。,10.3 构件的开发与构件库,构件的开发领域分析的结果为构件的选取和开发提供了指导性的原则。除了有领域分析作为其基础,构件开发还需要遵循一定的设计概念和原则。构件应该具有相当的一般性和抽象性,能够用于满足一类相似的需求,一个过于特殊的构件是很难被重复使用的。即使一个通用性很高的构件也不可能完全适应用户的需求和运行环境,所以在一个构件被不同的应用重用时,对它的某些部分进行修改是不可避免的。所以构件开发时,需要为用户对构件的调整和修改留出余地。例如继承、参数化、模板和宏都是典型的提高构件灵活性和可调整性的机制。,10.3.1 构件库,构件库(Component Library)用于对可重用构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件重用技术 软件 重用 技术 PPT 课件
链接地址:https://www.31ppt.com/p-4860645.html