- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十章 软件复用 软件复用的基本概念 领域工程 基于构件的软件开发 面向对象与软件复用 软件复用的基本概念 软件复用的定义 在构造新的软件系统的过程中,对已存在的软件人工制品的使用技术。 制造软件构件的技术:独立于单个软件系统开发的,可服务于整个应用领域的构件生产技术 使用软件构件的技术:在软件系统开发中使用已有软件构件的技术,也称为“基于构件的软件开发” CBSE的一种过程模型 软件复用的重要性 软件复用的目的是能更快、更好、成本更低地生产软件制品。 一般地说,在软件开发中采用复用构件可以比从头开发这个软件更加容易。 企业需要解决的问题 充分认识软件复用的重要性,尽快建立支持软件复用的基础设施(例如构件库、制造可复用构件的辅助开发工具) 建立相应的培训计划,在企业内部形成一个使用复用技术的环境 采用更先进的,可以促进软件复用的软件开发方法。如面向对象的开发方法 采用相应的激励措施。例如改变传统的工作量计算方法——代码行 软件复用的粒度 ——四类 源代码复用:对构件库中用高级语言编写的源代码构件的复用。 优点:构件具有较高的可靠性,使用者只需设置参数而无需介入构件内部,降低复用的难度 缺点:构件的通用性、抽象性成为在具体使用时必须面对的问题 软件体系结构复用:对已有的软件体系结构的复用。 优点:可复用较大粒度的软件制品,其修改具有局部性 缺点:难以抽象出简明的描述,存放体系结构的库往往不易管理 软件复用的粒度 应用程序生成器:对整个软件系统的设计的复用,包括整个软件体系结构、相应的子系统和特定的数据结构及算法。 优点:自动化程度高,能获取某个特定领域的标准和以黑盒形式输出结果(应用程序)。 缺点:特定的应用程序生成器不易构造 领域特定的软件体系结构的复用:对特定领域中存在的一个公共体系结构及其构件的复用。 优点:复用的程度高,对可复用构件的组合提供了一个通用框架 缺点:前期投资很大 软件复用的形式 横向复用:也称为水平复用,是指复用活动的范围跨越了几个不同的应用领域,复用的软件产品主要包括数据结构、通用算法、人机界面等软件元素。 纵向复用也称为垂直复用,是指复用活动的范围限制在同一个应用领域或者是一类具有较多共性的应用领域内。 生产者复用:指建立、获取或者重新设计可复用构件的活动。涉及到的活动包括复用的规划、领域分析、构件的开发、构件库的组织和管理。 消费者复用:指使用可复用的构件建立新的系统的活动。涉及到的活动包括应用系统的规划、构件的检索和选择、应用系统中非复用部分的开发、应用系统的组装。 软件复用的困难 复用具有许多明显的优点,但目前应用不广泛的主要原因是: (1)技术因素 构件与应用系统之间的差异; 构件要达到一定的规模,才能支持有效的复用; 发现合用构件的困难; 基于复用的软件开发方法和软件过程需要一些新的理论、技术及支持环境。 (2)人的因素 喜欢自己创造而不喜欢使用别人的东西。 (3)管理因素 把复用构件和一般软件构件同等看待,把复用看作可有可无的事。 (4)教育因素 软件科学技术的教育与培训中,缺乏关于软件复用的内容,缺少专门教材和课程。 领域工程 所谓的“领域”,指的是一组具有相似或相近软件需求的应用系统所覆盖的功能区域。 最优复用——应用系统形成的功能最大交集 通过领域分析(domain analysis)找出最优复用,对它们进行设计和构造,形成为可复用构件,进而建立大规模的软件构件仓库的过程,就是领域工程。 领域分析 定义 领域分析是在特定应用领域寻找最优复用,以公共对象、类、子集合和框架等形式进行标识,然后对它们进行分析和规约。 目标 是获得“领域需求”及“领域模型” 作用 根据领域需求,领域工程师寻找领域的共性,进而确定软件的可复用构件 领域分析的输入和输出 领域分析的步骤 选择特定的领域 抽取具有最优复用的功能 标识该功能 建立领域分析模型 定义需求规约,得出需求规约构件和若干个连接子配置构成的领域模型 建造可复用构件 构件应具有的特性 通用性 可变性 易组装性 创建领域构件的设计框架 标准数据 标准接口协议 程序模板 构件模型 几种流行的构件技术 COM(组件对象模型)技术 CORBA(公共对象请求代理体系结构) OpenDoc开放式文档接口 可复用构件 建立可复用构件库 三种分类模式 枚举分类:定义一个层次结构来描述构件,构件库中的构件在该层次中定义软件构件的类以及不同层次的子类 。 建立可复用构件库 ②呈面分类 :对领域进行分析后,对构件可标识出一组呈面,呈面可以描述构件的基本特征,并根据特征重要性区分优先次序。 建立可复用构件库 ③属性-值分类 :为领域中的所有构件定义一组属性,然后赋给这
您可能关注的文档
最近下载
- 北师版七年级数学上册精品培优讲义(必威体育精装版版;可直接打印).doc VIP
- 8.《公路工程地质勘察规范》(JTGC20-2011).pdf
- 新外研版(三起)三年级上册英语全册教学课件(2024年新版教材).pptx
- 超智融合发展趋势与技术路径研究报告.pdf
- 精细化护理管理提升护理品质汇报课件.ppt VIP
- 食堂承包项目需求的理解及相应的难点解决方案.docx VIP
- 猫砂生产制备工艺技术.doc VIP
- MD780 10PIN手咪接口定义及二次开发配件接口定义标准20110805.doc VIP
- 外研版(三起)英语四年级下学期阅读理解专题练习(含答案)1.pdf VIP
- ROCKWELL-罗克韦尔(AB)变频器资料使用说明.pdf
文档评论(0)