复用过程讲座(new)

上传人:woxinch****an2018 文档编号:44745593 上传时间:2018-06-14 格式:PPT 页数:76 大小:985.50KB
返回 下载 相关 举报
复用过程讲座(new)_第1页
第1页 / 共76页
复用过程讲座(new)_第2页
第2页 / 共76页
复用过程讲座(new)_第3页
第3页 / 共76页
复用过程讲座(new)_第4页
第4页 / 共76页
复用过程讲座(new)_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《复用过程讲座(new)》由会员分享,可在线阅读,更多相关《复用过程讲座(new)(76页珍藏版)》请在金锄头文库上搜索。

1、软件复用过程 如何在企业实施软件复用王亚沙 北京大学软件工程国家工程研究中心 北京大学信息学院软件研究所1内容提要v引言 What,Why,How v复用过程框架 一般的过程框架,引入复用后新增的内容 v复用过程框架中的软件过程2引言3什么是软件复用?v有人写了段程序我COPY过来,然后再改改 v使用标准的或者购买来的函数库、SDK、类 库 v有个现成的控件(例如:COM控件、EJB、 CORBA对象),我把它嵌入到我的软件系统 中v正解:重复使用为复用目的而开发的软件资 产4v软件复用可从三个不同维来看: 时间维软件维护,使用以前的软件版本作为新版本 的基础,加入新功能,适应新需求。 平台维

2、软件移植,以某平台上的软件为基础,修改 其和运行平台相关的部分,使运行于新平台。 应用维真正的复用,将某软件(或其中构件)用于 其他应用系统中,新系统具有不同功能和用途。v这三维均体现了复用概念,但是,真正的复用及复 用的主旨是 为了支持软件跨应用(领域)的演化 使用“为复用而开发的软件(构件)”来更快、更好地开 发新的应用系统5为什么要复用?v降低成本、提高生产率 不在“从零开始”,充分复用已有的资产和经验以已有的工作为基础,重点关注应用的特色 v提高产品质量 复用成熟的资产,比重新开发的资产更可信看似矛盾的两个需求质量和成本,通过“ 复用”获得了“和谐”6复用是软件工程化、工业化的必由之路

3、v传统工业 如机械、建筑等行业以及年轻的计算机硬件产业 其成功的基本模式是 符合标准的构件生产 基于标准构件的产品生产(组装) 其中构件是核心和基础,复用是必需的手段 v实践证明 这种模式是产业工程化、工业化的必由之路 是软件产业发展的良好借鉴 这正是软件复用受到高度重视的根本原因7为什么可以复用?v 世界上没有两个完全相同的软件(完全相同就不是两 个软件了)v 但是,任何一个新开发的软件,一个新的软件项目和 产品中一般有超过80%的成分是前人曾经开发过的 特定于计算机系统的构成成分通用基本构件 应用系统所属领域的共性构成成分领域共性构件 每个应用系统的特有构成成分应用专用构件领域共性构件包含

4、领域知识,是最具价值的可复用资产 丰富的领域共性构件(包括构架)构成了软件企业的核心竞争 力 8软件复用真的那么简单吗?v 一个故事:当A公司 遇见 软件复用v 背景:A公司,一家中小型软件企业 v 主角:张三、李四,两位软件工程师,技术骨干居然没复用!复用不好用!构件在哪呢?复用好委屈!9成功的实施复用需要面向复 用的软件过程v在过程中缺乏对复用的重视(就是所谓 的“即兴”复用)将导致: 总是与潜在的复用机会失之交臂; “事后的”复用使复用的质量和效率都无法 提高; 可复用资产的管理很无序,资产不是找不 到就是用不好; 缺乏管理层的关注,复用无法在组织级别 全面的展开,而且缺乏持续发展的动力

5、。10企业需要基于复用的过程标准v要制定企业的基于复用的过程标准 交流 共享最好的复用实践 戴明(Deming)的全面质量管理指出:更好的 过程生产更好的产品; 借鉴世界上最好的过程实践(IEEE、ISO等标 准); 企业中各个项目团队的复用实践经验,通过标 准固化为企业的财富。11软件复用过程框架12两个相关的国际标准 vISO/IEC 12207标准与IEEE/EIA 12207标准v 标准制定者: ISO/IEC 12207标准:国际标准化组织(ISO)和国际电子技术委 员会(IEC)联合制定 IEEE/EIA 12207标准:电器和电子工程师协会(IEEE)和电子工 业联盟(EIA)联

6、合制定 v 二者的关系 全称都是“信息技术软件生命周期过程”。 IEEE/EIA 12207标准是ISO/IEC 12207标准的美国版本 v 内容简介: 为软件生存周期过程建立了一个公共框架,可供软件工业界参考 。它包括在含有软件的系统、独立软件产品和软件服务的获取期 间以及在软件产品的供应、开发、运作和维护期间需应用的过程 、活动和任务。 是软件过程的需求规约。132. IEEE 1517标准v 制订者: 电器和电子工程师协会(IEEE) v 标准全称: 信息技术软件生命周期过程复用过程 v 简介: IEEE 1517标准是由软件行业认可的最好的复用实践的集合。它将 这一集合组织在了一组可

7、理解的复用过程、活动和任务中,这组 过程、活动和任务必须被包含在软件生命周期中以支持系统化的 复用。与12207标准一样,是过程的需求规约。 v 与12207标准的关系 IEEE 1517标准是完全遵从12207标准的,只是针对软件复用作出 了专门的补充。14IEEE或ISO 12207标准的过程框架v 基本:基本过程为基本的团体服 务。该团体负责执行软件产品的 开发、操作或者维护。v 支持:每一个支持过程都是按照 一个明确的目的为另一个过程提 供支持的,并对整个软件项目的 成功做出贡献。v 组织:组织过程由组织使用,用 来建立和实现该软件生命周期的 底层支持结构。组织生命周期过程管理 基础设

8、施基本生命周期过程支持生命周期过程改进 培训文档编制 配置管理质量保证 验证审核 问题解决确认 联合评审获取 供应开发 运行维护15过程、活动、任务三级结构12207的过程框 架中,过程由 若干个活动组 成,而活动由 若干个任务组 成,如此形成 一个过程、活 动、任务的三 级结构。过程1活动1任务1任务n1活动2任务1任务n216阐述复用过程框架前需要明确的 几个概念(1/3) 即兴复用还是系统化复用 即兴复用(ad hoc reuse):复用是无计划的 、是将其作为软件生命周期的隐含的副产 品。 系统化复用(systematic reuse):按照定义 良好的可重复过程进行复用的实践活动。

9、17阐述复用过程框架前需要明确的 几个概念(2/3)l生产者复用还是消费者复用 生产者复用(producer reuse) Develop for reuse 消费者复用(consumer reuse) Develop with reuse18阐述复用过程框架前需要明确的 几个概念(3/3)l组织级别还是项目级别 复用过程应该适应于组织级别的一族相关 软件和应用 生产者复用的角度:组织级别才有可能辨识软 件的哪些部件具有最强的复用潜质,并且有可 能在将来的软件开发、维护和项目改进中有计 划的使用这些复用。 消费者复用的角度:处在组织级别才会有更多 的机会在很多软件项目中、软件系统或软件应 用中

10、使用软件部件,由此公司有更好的机会在 对以复用目的的软件部件的投资中得到回报。19复用过程框架vIEEE 1517标准的复用过程框架的框图组织生命周期过程管理 基础设施 改进 培训基本生命周期过程 获取 供应 开发支持生命周期过程文档编制 配置管理 质量保证 验证确认 联合评审 审核 问题解决运行 维护 支持生命周期过程复用程序管理跨项目生命周期过程领域工程资产管理管理层面技术层面复用程序管理跨项目生命周期过程领域工程资产管理20基本生命周期过程组织生命周期过程管理 基础设施 改进 培训支持生命周期过程文档编制 配置管理 质量保证 验证确认 联合评审 审核 问题解决基本生命周期过程 获取 供应

11、 开发运行 维护 支持生命周期过程复用程序管理跨项目生命周期过程领域工程资产管理21基本生命周期过程v 与12207过程框架相同,IEEE 1517复用过程框架的基 本过程依然包含获取、供应、开发、运行和维护这5 个过程。 v 与12207过程框架不同的是: 对象:在12207标准中,基本过程是与软件系统或应用 的开发、运行和维护有关,然而在IEEE 1517标准中, 基本过程是与使用到资产的软件系统或应用的开发、 运行和维护有关。 内容:IEEE 1517过程框架中的每一个基本过程都包含 在12207标准的相应过程中阐明的所有活动和任务,除 此而外,还包含新的与有关复用的新任务,用以阐明 在

12、构造过程制品中对资产的使用。 资产包括领域模型、领域构架和其他诸如需求规约、源码、测 试用例集的资产。 22消费者复用(consumer reuse)v概念:使用资产开发软件生命周期制品 的途径。 基于构件的开发(CBD)是消费者复用的 一种形式。 v内容:消费者复用关乎利用所有的机会 ,从资产中构建每一个生命周期过程的 制品。 v目标:保证从零开始构造制品是最后的 手段。23基本过程与消费者复用v在软件生命周期中引入消费者复用 将消费者复用加入到软件生命周期会改变 生命周期的每一阶段,因为在每一阶段产 生的制品都可以由资产组装而成。 更进一步说,采用同样的方式将消费者复 用引入到生命周期的各

13、个阶段。24基本过程与消费者复用复用袖珍生命周期 将复用袖珍生命周期集 成到12207过程框架中的 每一个基本过程中。 尽管在每一个基本过程中 的消费者复用袖珍生命周 期的通用步骤都是一样的 ,但是特定的任务却是依 过程而不同的。 消费者复用袖珍生命周期第一步:寻找候选资产第二步:选择合适的资产第三步:利用资产构造制品第四步:评价可复用性IEEE 1517基本过程 12207基本过程消费者复用袖珍生命周期25基本过程与消费者复用v 搜索用来开发软件项目制品的资产的通常的来源 : 现存的遗产软件系统 应用包和应用模版的提供商 类库和框架的提供商 其他组织中正在构造的项目 组织中的复用目录和复用库

14、 战略性系统计划和企业模型和构架 在Internet上或合作的Intranets上可获得的资产 市场报告、商业出版社、客户/使用者调查 软件开发者和维护者 领域工程小组26基本过程与消费者复用v选择资产的准则 资产的代价(构造、获取和维护资产的代价) 资产的质量(如可靠性、与组织标准的兼容性) 资产的领域 资产的可获得性 资产的限制(如:许可证限制、目标运行环境、 性能限制) 资产的使用需求(如:软件工具,软件培训) 利用资产构造软件项目制品的预期利益27跨项目生命周期过程组织生命周期过程管理 基础设施 改进 培训支持生命周期过程文档编制 配置管理 质量保证 验证确认 联合评审 审核 问题解决

15、基本生命周期过程 获取 供应 开发运行 维护 支持生命周期过程复用程序管理跨项目生命周期过程领域工程资产管理28跨项目生命周期过程v 这是IEEE 1517过程框架中为支持复用新加入的过程类别。 v 跨项目生命周期过程类包含那些跨越多于一个软件项目的过程 ,也就是说,这些过程满足多个项目的需求,并且(或者)产 生可以用在多个软件项目中的制品。 领域工程是唯一被分在跨项目生命周期过程类中的过程。 领域工程使消费者复用成为可能。资产软件生命周期框架基本过程跨项目过程领域工程过程29生产者复用(producer reuse)v 领域工程也被认为是生产者复用。 v 目的:生产资产。 这些资产包括在开发

16、和维护领域中软件产品时使用的领域模 型和领域构架。 v 生产者复用与消费者复用的区别: 消费者复用涵盖了软件产品的生命周期,然而领域工程涵盖 了资产的生命周期。 消费者复用适用于项目级别的,单为一个项目的复用;生产 者复用适用于领域级别的一族资产,这一族资产属于同一领 域且目的是要在大量软件项目中使用。 30领域工程过程在IEEE 1517标准中定义的 领域工程过程包含5个活动 : 过程实施:制定领域工程计 划 领域分析:定义领域、领域 词汇表(domain vocabulary )和定义领域模型 领域设计:提出领域构架和 资产设计规约 资产提供:开发或获得领域 资产 资产维护:维护领域资产领域工程过程过程实施活动领域分析活动领域设计活动资产提供活动资产

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 高中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号