发明名称 基于体系结构的软件产品线演化方法
摘要 本发明以统一的软件产品线体系结构与构件版本模型为基础,在体系结构和构件两个层面上实现统一、协调的产品线演化支持,包括基于参考体系结构的应用系统体系结构定制、应用系统体系结构演化反馈及合并、应用系统体系结构同步、应用构件定制及演化反馈、文件级的构件实现体版本管理以及应用系统产品版本集成与发布等。本发明可以实现领域工程与应用系统工程的统一演化管理,支持增量、迭代的软件产品线开发过程。
申请公布号 CN101763252B 申请公布日期 2013.08.21
申请号 CN200810207687.0 申请日期 2008.12.24
申请人 复旦大学 发明人 彭鑫;赵文耘;沈立炜
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 上海元一成知识产权代理事务所(普通合伙) 31268 代理人 吴桂琴
主权项 一种基于体系结构的软件产品线演化方法,其特征在于,以支持产品线体系结构描述的体系结构描述语言xADL2.0为基础,建立软件产品线体系结构与构件版本模型;所述xADL2.0将体系结构描述分为结构和类型两部分,结构部分描述体系结构的拓扑结构,包括构件、连接器以及它们之间的连接关系,结构部分的可选构件用于表示体系结构中的可选构件,其可选性由相应的警戒条件控制;类型部分用构件类型描述构件的抽象规约信息,类型部分的变体构件类型用于表示包含多个多选一变体的特殊构件类型,每个变体对应一个构件类型以及相应的警戒条件;采用xADL2.0中的构件、连接器、连接、构件类型基本概念,以及可选构件和变体构件类型对软件产品线体系结构和构件演化进行扩展,在结构部分,将体系结构版本定义为一系列的构件、连接器和连接关系组成,每个体系结构有多个版本,参考体系结构和应用系统体系结构是一种体系结构,拥有多个版本;所述的应用系统体系结构是在参考体系结构基础上导出的,每个应用系统体系结构版本与某个参考体系结构版本具有同步关系,类型部分扩展了构件规约和构件实现,构件规约有多个版本,体系结构中每个构件的构件类型是对某个构件规约版本的引用,每个构件实现要声明相应的构件规约而每个构件实现版本实现某个构件规约版本;构件实现包括领域构件和应用构件两种,应用构件从领域构件导出,相应的应用构件实现版本与某个领域构件版本保持同步;所述的演化方法通过以下步骤实现:(1)设计产品线参考体系结构的初始版本,为每个构件的构件类型创建相应的构件规约,将当前参考体系结构中对各个构件的接口要求,描述为相应构件规约的初始版本,并开发相应的领域构件实现版本;(2)创建应用系统项目,在参考体系结构当前版本基础上通过对各可选和多选一可变性对应的警戒条件变量进行赋值,创建应用系统体系结构的初始版本,并将所有绑定的构件规约和领域构件导入到当前应用开发项目中;(3)领域工程开发按照应用系统开发反馈以及质量改进目标对产品线参考体系结构和领域构件进行改进;(4)应用系统工程对于应用系统体系结构和应用构件进行相对独立地演化,根据特定应用客户需求或所发现的bug对应用体系结构、构件规约和构件实现进行修改;(5)经过一定时间的开发后,应用系统工程将应用系统体系结构和构件的阶段性演化信息反馈到领域工程,并将应用开发暂时冻结;(6)领域工程根据各个应用系统的阶段性反馈,将各个应用系统的体系结构和构件阶段性演化与参考体系结构及各领域构件当前版本进行合并;利用参考体系结构与应用系统体系结构的合并以及后续的同步过程实现体系结构级的演化协调;所述的合并为:各个应用系统的体系结构并入参考体系结构,构件阶段性演化并入各领域构件当前版本;所使用的体系结构合并过程在相关体系结构差异比较基础上通过可变性抽象实现合并,但不包括正常定制结果所产生的差异:对于新构件,首先决定是否为可选构件,随后加入到参考体系结构中;对于与抽象构件关联的新构件,不予以合并;对于不同的构件规约版本,参考体系结构的构件引用新的构件规约版本;对于新构件规约,参考体系结构中的构件转换为变体类型构件,原先的构件规约与新构件规约均作为变体;对于选择的变体引用不同的构件规约版本,参考体系结构中该变体引用的构件规约版本替换为应用系统体系结构中引用的版本;对于新变体,参考体系结构中的变体类型构件加入此新变体;对于移除构件,参考体系结构中的必选构件转换为可选构件;(7)领域工程将合并后的参考体系结构和领域构件反馈给各应用系统工程,同时领域工程重新进入步骤(3)继续进行演化;(8)各个应用系统体系结构与参考体系结构进行同步,使得应用系统体系结构和应用构件重新与参考体系结构和各个领域构件保持一致,同时各个应用系统工程重新进入步骤(4)继续进行演化,具体过程为:以合并后的参考体系结构最新版本为基础,重复应用当前应用系统此前所使用的所有定制选项,并针对此次体系结构合并所新增的可变点进行决策,从而在与参考体系结构最新版本保持一致的基础上重新获得应用体系结构版本;参考体系结构可变点警戒条件中的决策变量都是针对特定应用的业务决策选项,与参考体系结构的具体版本无关,应用系统已确定的定制变量赋值都可以在体系结构同步中重新应用。
地址 200433 上海市邯郸路220号