免费论文查重: 大雅 万方 维普 turnitin paperpass

研讨产品线基于组件软件产品线办法

最后更新时间:2024-01-01 作者:用户投稿原创标记本站原创 点赞:8757 浏览:33535
论文导读:
摘 要: 软件产品线方法通过在软件开发的各个阶段引入不同重量级别的重用,可使软件产品开发如同在流水线上批量生产工业产品,一方面软件产品的成本可以大幅降低,另一方面软件产品的生产周期可以大大缩短,同时其质量也可以得以显著提高。基于软件产品线驱动的现代组件技术,把软件产品开发过程划分为塑造空间和创建空间,以行业组件框架为核心支撑,开发出一系列软件产品。
关键词: 组件; 软件产品线方法; 行业组件框架; 塑造空间; 创建空间
1006-8228(2013)09-08-02
0 引言
当前市场所需要的是大量高品质、低成本和快速应用的软件产品,传统的软件企业采用的生产方式低效、落后,是不可能满足这些要求的。应用软件产品如同实物产品非常丰富而又千差万别,需要有不同行业的企业产品线来生产。软件产品线驱动着现代软件企业的形成,分析软件生产线方法与技术对于软件企业发展有积极和重要的现实意义。
1 软件生产线的内容及作用
产品线需要把产品生产分成若干过程,每一个过程基于相同生产工艺和方法,对同一和相似的产品进行生产和加工。工业化的产品线还需要有一个具有统一标准的平台和零部件,统一标准零部件不仅可以来自于软件企业自身,也可来自于软件市场。基于产品线的行业业务组件方法中的产品线,是指软件企业的工业化产品线。在软件开发过程中将各种级别的重用引入到产品线,是其他工程学科一直都在追求而又能够达到的目标,但在软件工程学中却往往不尽如人意。然而,在过去的几年里,一些新的软件开发范型的出现彻底改变了这种状况,使得软件工程能够在工程学科这个大家族中找到一席之地。其中最引人注目的就是基于组件的软件开发和产品线工程。按照粒度从小到大排序,一端是组件——即能快速简单地组装成新系统的可重用的软件组件块,另一端是产品线工程——即在单一的可高度重用的软件核心内,将产品中一定结构范围内的所有公共部分合并。
软件产品线工程要求是以高度重用的方法及工具形成该软件产品线的生产阶段及相关设备,把产品中一定结构范围内的所有公共部分合并为单一的可高度重用的软件核心基础,并根据需求来生产个别具体的产品。这要求一条软件产品线的产品从内容上能做到最大化的相同性或相似性,从软件开发的生产终端作出了约束性要求。软件开发是基于一个具体、个别的软件,而软件产品线是基于一个共性的基础上的批量软件;软件开发的主体往往是科研机构和团队,而软件产品线的主体是现代软件企业;软件开发的目的是软件本身,而软件产品线的目的是企业或团体的应用。因此,软件开发不需要考虑过多的软件成本和产生软件的过程的方法成熟度,而软件产品线要充分考虑软件成本和产生软件的过程的方法成熟度。
2 软件生产线方法的组件技术及方法
软件生产线方法涵盖了软件开发方法,但它需要底层技术和方法支撑,组件技术及方法就属于后者,软件生产线方法在空间上具有最大跨度,从软件企业的生产线直至具体的软件产品,它也需要组件技术及方法来联接。组件是一种软件实体。组件是仅由指定接口和上下文依赖关系所构成的单元。组件具有:服务性、可部署性、合成性、上下文依赖性四种基本性质,它决定了组件与其他软件实体:对象、函数等的区别。目前,主要的软件公司所用开发工具均支持组件,所推出的组件模型又各有特色。已有的组件模型包括Microsoft的COM+、Sun的Ja Beans和Enterprise Ja Beans,以及OMG的CORBA组件标准。根据组件及其基本性质,形成新的软件开发方法——组件方法[3]。组件方法的特征有以下。
⑴ 形态的不变性:组件是一个,就是在整个系统的分析、设计、实现、部署、升级到维护开发全过程中都是以组件作为自治单元出现,而无需变换形态,只是在不同阶段组件的细化程度上存在差异,如图1所示。
⑵ 隐蔽性:组件不管是在构建时还是在运行时对于使用者来说可见的仅仅是接口,其内部的内容均是不可见的,隐蔽的,尽管组件所采用不同的语言来实现,一个用C++语言描述的组件是不可以在语言层面上调用Ja语言描述的组件,而只能用接口来实现调用。组件内部的可见仅是针对其制作者而言。
⑶ 语言上的独立性:组件与构造的语言无关,组件并不是一个对象,它具可以用对象语言构造,也可以用过程语言构造。由于组论文导读:
件接口与实现能够分离,组件接口的实现者,可完全自由、独立地选择实现的方法和语言[4]。在构建系统时,可视为一个类,在运行时成为一个实例。类与实例的关系如同产品设计图与具体产品的关系。成熟与不断发展的组件技术为软件生产线方法奠定了坚实的技术基础和保证。
3 基于组件的软件生产线方法
软件生产线方法就是以组件技术及方法为基础,构建软件企业的软件产品生产流水线方法。软件生产线是由两个空间即:塑造空间与创建空间构成。工程性的生产线的动机是为了支持这样一个状态,即大多数应用软件企业开发一系列相似的、有轻微区别的应用系统,而不是开发一个应用系统。在上述这种环境下,将产品系中公用的部分合并在一个可重的核心(比如框架)里,而不是对每个特定的系统都将所有部分重新开发一遍,这样做是很有意义的。这样,对产品系中特定成员的开发,就更多地变成是框架实例化、具体化的问题,而不是一切从头开始开发。然而,要使得这一方法变得高效,那么企业开发的产品之间必须有相当大的重叠,并且对这些系统之间的共性和差异要有仔细的分析和深入的理解[5]。
塑造空间关注的是行业和共同领域中的一系列个别企业和领域的业务,从关注点作为分离的起点,分离其空间形态,即构建塑造空间,塑造空间是关于行业组件框架的开发,行业组件框架是一个可重用的软件工件集合,而这些软件工件的核心被嵌入在企业所开发的所有产品中,塑造空间围绕行业组件框架为核心的开发和维护相关活动和工件。行业组件框架是由软件范型产品线驱动,面向行业应用,是一组可重用的、通用的、抽象的、有关业务的组件集合,企业能依照不同用户需要,通过选择和决策来确定行业组件框架的具体化、实例化,以此开发行业内一个具体应用系统实例产品。现代软件企业能否拥有软件范型产品线,取决于是否建有行业组件框架,行业组件框架是软件范型产品线核心和标志,行业组件框架是依据行业标准及规则,行业内的企业调研,能使企业用户重造规范流程,提升企业管理水平和层次。行业组件框架实际上是摘自:毕业论文范文www.7ctime.com
系列软件行业组件框架,行业组件框架意味着具有系列产品的共性,特定客户的需求产品是在该行业组件框架下的特定化,特定客户的需求产品是产品线上系列产品中的一个,系列产品之间的差异是细小的,差异过大就无法形成一个系列产品,所以说一个产品可被视为基于行业组件框架框架的,软件产品线使对行业和共同领域内的特定用户应用系统产品无需从头至尾进行一遍又一遍重新开发。行业组件框架一般是一组抽象组件模型,但是也允许可执行的二进制代码的具体形式,抽象组件模型能反映通用性,可执行的二进制代码的具体形式也能反映通用性,行业组件框架包含了从顶层抽象层至最低层的执行的二进制代码[6]。 塑造空间与创建空间有本质区别,它的实体是不一致的,在空间的起点是行业和共同领域的业务需要开始,而终点是通用、抽象、合成的组件框架实体,实体在塑造空间需要进行转换。创建空间的实体从起点到终点都是软件组件实体,实体的组件形式在创建空间保持其不变性。塑造空间与创建空间是机相联的,是整个开发周期的两个空间,两个空间在通用、抽象的业务组件交汇,即通用、抽象、合成的组件框架是塑造空间终点又是创建空间的起点。
创建空间是基于行业组件框架创建组件业务系统,是关于应用的开发,它通过对行业组件框架进行改写和扩展来满足特定用户或顾客的需要,创建空间围绕以应用为核心的开发和维护相关的活动和工件。创建空间利用行业组件框架是对产品线上系列产品共性的反映,行业组件框架包含对不同特性的选择性处理的反映,这些不同特性可能属于不同的特定客户产品。但是对不同特性的选择性处理应当是少量的,根据在于:产品线上系列产品差异性小,因为对不同特性的选择性处理,实际上是产品线上系列产品不同特性处理的拼凑。要把握好产品系中成员之间的共性和差异,一种强有力的方法是:利用论文导读:
行业组件框架。行业组件框架就是要能接受产品系中所有可能的变型,但还能提供一些手段以在这些变量之间做出选择。
4 结束语
现代软件企业在行业需求基础上研发出行业组件框架后,如同现造业都是在生产线上批量制造产品,根据用户要求生产出系列产品。现代软件企业一旦形成了这样的生产线,就能快速生产出高重用、高品质的软件产品,降低了软件企业的经济成本和时间。同时也能降低软件应用企业的采购成本和缩短信息化建设的周期。
参考文献:
COLIN M, Gu Jian, etc., translated. Component-based ProductLine Engineering with UML[M]. Mechanical Industry Press,2005.
(美)Alan W.Brown著,赵文耘等译.大规模基于构件的软件开发[M].机械工业出版社,2003.
[3] PETER M著,施诺译.组件级编程[M].清华大学出版社,2003.
[4] PETER H, OLIVER S著,韩柯译.基于组件的企业级开发[M].机械工业出版社,2005.
[5] 王映辉.构件式软件技术[M].机械工业出版社,2012.
[6] 杨正武.行业组件框架下的企业管理信息系统创新思路[J].商业时代,2010.1

3.中国免费论文网www.7ctime.com