网站大量收购闲置独家精品文档,联系QQ:2885784924

软件体系结构(SA)SoftwareArchitecture讲述.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mrchenq@263.net 软件体系结构(SA) Software Architecture 陈虔 mrchenq@263.net 第五讲:软件产品线技术 软件生产线技术 举例 软件产品线技术 陈虔 mrchenq@263.net 软件产品线方法 1、软件产品线方法简介 2、软件产品线的关键活动 3、软件产品线实践域 4、两个产品线实践范例 5、面临的挑战 6、小结 1、软件产品线方法-背景介绍 在同一领域存在多个商业项目的情况下,独立的“一次开发一个”的方式在经济上将不再可行,而有计划的软件复用是实现可预测的、低代价的软件生产和维护的关键。 为此,卡耐基-梅隆大学(CMU/SEI)提出了软件产品线(software Product Line)的概念。 什么是软件产品线 一个软件产品线是一组具有共同特征的软件密集型的系统,这些特征用来满足一类特定市场部门或商业行为的需求;同时这些系统是以一种预定义的方式、利用一组共享的核心资产来开发的。 产品线软件开发的特点 在开发过程中使用公共的软件资产,包括产品线体系结构、构件和过程模型等。 产品线的产品是根据特定的用户需求对标准的产品体系结构进行定制,将可复用构件与系统特有的部分集成而得到的。 产品线方法集中体现了一种大规模、大粒度的软件复用。 产品线的益处与代价1/5 产品线体系结构提供了产品线中产品的公共结构、构件间的关系和约束。一旦定义好了产品线体系结构意味着产品线中所有产品的系统设计已基本完成,因此产品线体系结构支持了大粒度的复用。 产品线体系结构必须支持产品线内部固有的变化性,所以除了定义构件本身和构件之间的约束(必需的,可选的,可替换的),还要定义在产品线中开发系统时支持变化性的机制,增加了产品线体系结构的复杂性。 产品线的益处与代价2/5 对于被复用的构件来说,真正被复用的是其中的设计决策、数据结构、算法、文档、编码和调试信息等,它们在产品线的所有产品中可被反复使用; 因为构件要适应不同产品之间的差异,所以要求构件有足够通用的特性,同时要保证构件性能不被降低,增加了构件设计的复杂性。 产品线的益处与代价3/5 性能建模和分析:可以认为产品线的每一个新系统在实时性和分布性方面是没有问题的,因为过程调度、网络负载平衡、死锁检测、数据一致性等性能问题已经在产品线的建设中被解决,这种软件性能和分析在产品线中所有产品中被复用。 性能分析的复用可能导致对处理器之间进程的迁移产生约束,特别是新进程的创建或者已有进程的同步。 产品线的益处与代价4/5 为软件开发购买的开发环境、配置管理工具、设备管理工具可以在整个产品线中使用,相当于投资的“分期付款”; 要求这些可复用的工具和环境有足够的适应性来适应一个产品线的通用性又可以适应单独产品的变化性 ,因此对这些工具和环境的要求较高。 产品线的益处与代价5/5 由于产品线是面向特定领域的,所以基于产品线中产品的共性,开发人员具有适应整个产品线的经验,可以按照需要随时转换项目,提高生产效率; 代价:专业人员的培训需要花很大代价。 核心资产库(Core assets) 核心资产库是产品线的基础,是管理支持产品开发的可复用资源的机构。 核心资产库中的资产通常包括: 领域模型 领域知识 产品线体系结构 测试计划和过程 通讯协议描述 需求描述 用户界面描述 代码构件 性能模型和度量 工作流程 预算和规划 应用生成器 原形 过程构件(方法,工具) 设计标准和设计决策 … 领域 领域是指一组具有相似或相近软件需求的应用系统所覆盖的功能区域。 domain is a specialized body of knowledge, an area of expertise, or a collection of related functionality. 软件产品线实践 软件产品线实践(Software Product Line Practice)是系统化地使用核心资产集成、实例化或生成多个组成产品线的产品。 Software product line practice is the systematic use of core assets to assemble, instantiate, or generate the multiple products that constitute a software product line. 产品族 产品族(product family)是一组相关的软件系统,它们是基于一个公共的软件核心资产库开发的。 内容 软件产品线方法简介 软件产品

文档评论(0)

aa15090828118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档