- 3
- 0
- 约4.1千字
- 约 34页
- 2017-03-18 发布于贵州
- 举报
9软件工程第十章9软件工第十章
第十章 软件复用 软件复用的基本概念 领域工程 基于构件的软件开发 面向对象与软件复用 软件复用的基本概念 软件复用的定义 在构造新的软件系统的过程中,对已存在的软件人工制品的使用技术。 制造软件构件的技术:独立于单个软件系统开发的,可服务于整个应用领域的构件生产技术 使用软件构件的技术:在软件系统开发中使用已有软件构件的技术,也称为“基于构件的软件开发” CBSE的一种过程模型 软件复用的重要性 软件复用的目的是能更快、更好、成本更低地生产软件制品。 一般地说,在软件开发中采用复用构件可以比从头开发这个软件更加容易。 企业需要解决的问题 充分认识软件复用的重要性,尽快建立支持软件复用的基础设施(例如构件库、制造可复用构件的辅助开发工具) 建立相应的培训计划,在企业内部形成一个使用复用技术的环境 采用更先进的,可以促进软件复用的软件开发方法。如面向对象的开发方法 采用相应的激励措施。例如改变传统的工作量计算方法——代码行 软件复用的粒度 ——四类 源代码复用:对构件库中用高级语言编写的源代码构件的复用。 优点:构件具有较高的可靠性,使用者只需设置参数而无需介入构件内部,降低复用的难度 缺点:构件的通用性、抽象性成为在具体使用时必须面对的问题 软件体系结构复用:对已有的软件体系结构的复用。 优点:可复用较大粒度的软件制品,其修改具有局部性 缺点:难以抽象出简明的描述,存放体系结构的库往往不易管理 软件复用的粒度 应用程序生成器:对整个软件系统的设计的复用,包括整个软件体系结构、相应的子系统和特定的数据结构及算法。 优点:自动化程度高,能获取某个特定领域的标准和以黑盒形式输出结果(应用程序)。 缺点:特定的应用程序生成器不易构造 领域特定的软件体系结构的复用:对特定领域中存在的一个公共体系结构及其构件的复用。 优点:复用的程度高,对可复用构件的组合提供了一个通用框架 缺点:前期投资很大 软件复用的形式 横向复用:也称为水平复用,是指复用活动的范围跨越了几个不同的应用领域,复用的软件产品主要包括数据结构、通用算法、人机界面等软件元素。 纵向复用也称为垂直复用,是指复用活动的范围限制在同一个应用领域或者是一类具有较多共性的应用领域内。 生产者复用:指建立、获取或者重新设计可复用构件的活动。涉及到的活动包括复用的规划、领域分析、构件的开发、构件库的组织和管理。 消费者复用:指使用可复用的构件建立新的系统的活动。涉及到的活动包括应用系统的规划、构件的检索和选择、应用系统中非复用部分的开发、应用系统的组装。 软件复用的困难 复用具有许多明显的优点,但目前应用不广泛的主要原因是: (1)技术因素 构件与应用系统之间的差异; 构件要达到一定的规模,才能支持有效的复用; 发现合用构件的困难; 基于复用的软件开发方法和软件过程需要一些新的理论、技术及支持环境。 (2)人的因素 喜欢自己创造而不喜欢使用别人的东西。 (3)管理因素 把复用构件和一般软件构件同等看待,把复用看作可有可无的事。 (4)教育因素 软件科学技术的教育与培训中,缺乏关于软件复用的内容,缺少专门教材和课程。 领域工程 所谓的“领域”,指的是一组具有相似或相近软件需求的应用系统所覆盖的功能区域。 最优复用——应用系统形成的功能最大交集 通过领域分析(domain analysis)找出最优复用,对它们进行设计和构造,形成为可复用构件,进而建立大规模的软件构件仓库的过程,就是领域工程。 领域分析 定义 领域分析是在特定应用领域寻找最优复用,以公共对象、类、子集合和框架等形式进行标识,然后对它们进行分析和规约。 目标 是获得“领域需求”及“领域模型” 作用 根据领域需求,领域工程师寻找领域的共性,进而确定软件的可复用构件 领域分析的输入和输出 领域分析的步骤 选择特定的领域 抽取具有最优复用的功能 标识该功能 建立领域分析模型 定义需求规约,得出需求规约构件和若干个连接子配置构成的领域模型 建造可复用构件 构件应具有的特性 通用性 可变性 易组装性 创建领域构件的设计框架 标准数据 标准接口协议 程序模板 构件模型 几种流行的构件技术 COM(组件对象模型)技术 CORBA(公共对象请求代理体系结构) OpenDoc开放式文档接口 可复用构件 建立可复用构件库 三种分类模式 枚举分类:定义一个层次结构来描述构件,构件库中的构件在该层次中定义软件构件的类以及不同层次的子类 。 建立可复用构件库 ②呈面分类 :对领域进行分析后,对构件可标识出一组呈面,呈面可以描述构件的基本特征,并根据特征重要性区分优先次序。 建立可复用构件库 ③属性-值分类 :为领域中的所有构件定义一组属性,然后赋给这
您可能关注的文档
- 6.3_嵌入式linux核的配置及编译6.3_嵌入式linux内核的配置及编译.ppt
- 6~7章作业题6~7章作题.ppt
- 6-1 铰链四杆机构的别及习题6-1 铰链四杆机构的判别及习题.ppt
- 6-4 能量均分定理 理气体的内能6-4 能量均分定理 理想气体的内能.ppt
- 6-2010-5-机械能.doc
- 6页妊娠期糖尿病6页妊娠糖尿病.ppt
- 6.新水、电解质、酸碱平衡.ppt
- 6.2运动的合成与分解6.doc
- 6信息网络相关法律规范6.ppt
- 6.死因调查和推断6.死调查和推断.ppt
- 初中英语七年级下册 Module 9 Life History 语法与写作整合复习课教学设计.docx
- 读后续写微技能对话描写课件-高三英语二轮复习.pptx
- 外研版英语三年级下册《I like football》教学设计及教学反思.docx
- 五年级上册英语期中核心短语复习课(Units 13):从识别、理解到初步应用.docx
- 人教版九年级英语Unit 10 You’re supposed to shake hands.docx
- 学科融合视域下小学英语五年级《学校科目》单元主题教学设计——以学习周计划制定项目为例.docx
- 沪教牛津版小学英语五年级上册 Module 2 Unit 6 Period 1 教学设计.docx
- Unit5OntheRoadDevelopingideasCoasttoCoast课文讲解课件高中英语外研版.pptx
- 成长叙事中的语言建构——外研版九年级上册Module 2 Unit 2素养导向的深度学习方案.docx
- 小学三年级语文《大禹治水》课外阅读教学设计.docx
最近下载
- 2025年度妇幼保健院工作总结及下一步工作打算.docx VIP
- 2025年电测仪表职业技能鉴定题库及答案(中级工).docx
- 【国盛-2025研报】华宏科技(002645):利润大幅增长,稀土价格上涨、产能释放提升盈利弹性.pdf
- 种猪场销售管理制度.docx VIP
- 2026年山东劳动职业技术学院单招《数学》考试历年机考真题集及答案详解【夺冠系列】.docx VIP
- ISO27001-2022 信息安全管理体系中文版.docx VIP
- 行政接待标准作业流程手册.docx VIP
- 亚投行介绍教学课件.pptx VIP
- 2025年技术培训合作合同范本.docx
- HEICO-LOCK楔入式防松系统-海阔紧固件.PDF VIP
原创力文档

文档评论(0)