深圳外文网站制作,seo公司软件,郑州机械网站制作,容桂免费网站建设公司1.软件架构复用的定义及分类 软件产品线是指一组软件密集型系统#xff0c;它们共享一个公共的、可管理的特性集#xff0c;满足某个特定市场或任务的具体需要#xff0c;是以规定的方式用公共的核心资产集成开发出来的。即围绕核心资产库进行管理、复用、集成新的系统。核心…1.软件架构复用的定义及分类 软件产品线是指一组软件密集型系统它们共享一个公共的、可管理的特性集满足某个特定市场或任务的具体需要是以规定的方式用公共的核心资产集成开发出来的。即围绕核心资产库进行管理、复用、集成新的系统。核心资产库包括软件架构及其可剪裁的元素更广泛地它还包括设计方案及其文档、用户手册、项目管理的历史记录如预算和进度、软件测试计划和测试用例。复用核心资产特别是软件架构更进一步采用产品线将会惊人地提高生产效率、降低生产成本和缩短上市时间。 软件复用是指系统化的软件开发过程开发一组基本的软件构造模块以覆盖不同的需求/体系结构之间的相似性从而提高系统开发的效率、质量和性能。软件复用是一种系统化的软件开发过程通过识别、开发、分类、获取和修改软件实体以便在不同的软件开发过程中重复的使用它们。 软件架构复用的类型包括机会复用和系统复用。机会复用是指开发过程中只要发现有可复用的资产就对其进行复用。系统复用是指在开发之前就要进行规划以决定哪些需要复用。
2.软件架构复用的原因 软件架构复用可以减少开发工作、减少开发时间以及降低开发成本提高生产力。不仅如此它还可以提高产品质量使其具有更好的互操作性。同时软件架构复用会使产品维护变得更加简单。
3.软件架构复用的对象及形式 基于产品间共性的“软件”产品线代表了软件工程中一个创新的、不断发展的概念。软件产品线的本质是在生产产品家族时以一种规范的、策略性的方法复用资产。可复用的资产非常广包括以下几个方面。 1需求。许多需求与早期开发的系统相同或部分相同如网上银行交易与银行柜面交易。 2架构设计。原系统在架构设计方面花费了大量的时间与精力系统成功验证了架构的合理性如果新产品能复用已有的架构将会取得很好的效益。 3元素。元素复用不只是简单的代码复用它旨在捕获并复用设计中的可取之处避免不要重复设计失败的地方。 4建模与分析。分类分析方法如性能分析及各类方案模型如容错方案、负载均衡方案都可以在产品中得到复用。 5测试。采用产品线可积累大量的测试资源即在考虑测试时不是以项目为单位而是以产品线为单位。这样整个测试环境都可以得到复用如测试用例、测试数据、测试工具甚至测试计划、过程、沟通渠道都可以得到复用。 6项目规划。利用经验对项目的成本、预算、进度及开发小组的安排等进行预测既不必每次都建立工作分解结构。 7过程、方法和工具。有了产品线这面旗帜企业就可以建立产品线级的工作流程、规范、标准、方法和工具环境供产品线中所有产品复用。如编码标准就是一例。 8人员。以产品线来培训的人员适应于整个系列的各个产品的开发。 9样本系统。将已部署投产的产品作为高质量的演示原型和工程设计原型。 10缺陷消除。产品线开发中积累的缺陷消除活动可使新系统受益特别是整个产品家族中的性能、可靠性等问题的一次性解决能取得很高的回报。同时也使得开发人员和客户心中有“底”。 一般形式的复用主要包括函数的复用库的复用比如在C、C语言中以及在面向对象开发中的类、接口和包的复用。
4.软件架构复用的基本过程 复用的基本过程主要包括3个阶段首先构造/获取可复用的软件资产其次管理这些资产最后针对特定的需求从这些资产中选择可复用的部分以开发满足需求的应用系统见图1。 图1 软件架构复用的基本过程 1复用的前提获得可复用的软件资产 首先需要构造恰当的、可复用的资产并且这些资产必须是可靠的、可被广泛使用的、易于理解和修改的。 2管理可复用资产 该阶段最重要的是构件库Component Library由于对可复用构件进行存储和管理它是支持软件复用的必要设施。 构件库中必须有足量的可复用构件才有意义。构件库应提供的主要功能包括构件的存储、管理、检索以及库的浏览和维护等以及支持使用者有效地、准确地发现所需的可复用构件。 在这个过程中存在两个关键问题一是构件分类构件分类是指将数量众多的构件按照某种特定方式组织起来二是构件检索构件检索是指给定几个查询需求能够快速准确地找到相关构件。 3使用可复用资产 在最后阶段通过获取需求检索复用资产库获取可复用资产并定制这些可复用资产修改、扩展、配置等最后将它们组装与集成形成最终系统。