




已阅读5页,还剩122页未读, 继续免费阅读
(计算机科学与技术专业论文)增量式软件产品线关键技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 软件复用技术已经被认同为提高软件开发效率和质量的有效途径。近年来, 软件产品线作为一种系统化的软件复用方式得到了广泛的关注。软件产品线着眼 于特定领域,将领域共性和可变性构建为领域核心资产,特定的软件产品以预先 规定的方式基于核心资产开发,避免了大量的重复劳动,从而提高软件生产力。 问题空间和解空间的断层是软件开发的一个重要难题,具体到软件产品线, 开发活动面向一系列的软件产品集合,需要对产品的共性和可变性进行有效的分 析和管理,问题空间的可变性和解空间的复杂组织形式使得断层问题更为突出。 面向特征的软件产品线工程利用特征作为桥梁连接问题空间和解空间,这种方式 在产品线需求分析层取得了良好效果。此外,增量式思想逐渐萌芽,试图以组合 开发方式提高产品线的敏捷性,克服传统集成式的封闭性和缺失柔性。结合特征 和增量式思想,我们将特征视为增量在产品线需求层的一种具体形式,提出在产 品线全生命周期系统化的贯彻增量思想,以增量组合的方式研究产品线技术。 本文对增量式软件产品线关键技术进行了深入的研究,将增量思想系统地推 广到产品线生命周期的各主要阶段,试图从分析到设计再到实现都能贯彻一致的 增量组合方式以弥补断层。从产品线需求分析、产品线体系结构、工件求精和协 同支撑平台等方面逐步展开研究。本文的研究工作主要包括以下几个方面: 1 ) 显式定义了特征模型形式化语义与a l l o y 规约。形式化的定义了特征、特 征模型、配置、产品和产品线等概念,同时定义了这些概念之间的关联与语义约 束。为了复用语义和自动化特征模型分析- 9 检查,将形式化语义编码为a l l o y 规 约,利用非专有的工具a l l o ya n a l y z e r 可以有效的进行自动化模型检查。严格的 形式化语义使得特征模型的一致性和有效性得到保证。 2 ) 提出特征增量f i 概念着眼于同一产品线中不同产品之间的宏观特征差 异,增强产品线分析的粒度以及从需求到产品设计的可跟踪性。详细分析了组合 性、依赖性等特征增量间的依赖关系,同时给出c c s 组合原则指导特征增量的选 i i i 浙江大学博士学位论文 择并避免冲突。采用基于目标场景的分析方法进行面向特征增量的领域分析,逐 步识别出特征等基本单元及特征增量,指导软件产品线实践活动。 3 ) 提出体系结构增量层s a i l 概念。针对需求概念与实际可变点的尺寸不匹 配问题,体系结构增量层以一种增量模块化的方式对设计知识进行识别、抽象以 及结构化。借助范畴论这一数学工具,定义了增量式产品线体系结构的形式化语 义,指明了各种概念的含义以及概念间的语义关联。范畴论支持图形化建模,有 利于对体系结构的建模、理解和跟踪。给出基于角色的派生方式,以角色为中心 从产品线体系结构派生出具体产品的体系结构。 4 ) 设计了一致的增量式大规模产品线工件求精策略。将一个特征对应的所 有工件的变更组织成一个工件切片,使得特征和工件的对应关系明确化。当为产 品增加新特性或扩大产品线边界时,可以设计或修改相应的工件切片,将变更限 制在一定的范围内,增强了产品线的可理解性和可演化性。给出基于本体的工件 元模型,据此对工件切片中的多种类型的工件采取一致的求精策略,相比传统的 面向对象方式,增量组合方式更符合高内聚、低耦合原则。 5 ) 设计了支持产品线协同开发的c a s d e 支撑平台。基于活动理论分析了 产品线开发活动模型,强调了在开发活动中协同的重要性。基于对开发活动关键 元素的分析,提出c a s d e 平台体系结构。该体系结构以过程为中心,并充分考 虑了上下文模型,并具有良好的工具集成性。详细讨论了c a s d e 对活动理论三 层框架的支持。基于c a s d e 平台,设计和开发了需求建模、体系结构设计、工 件求精管理和产品配置管理等工具原型。 关键词:软件产品线,特征,逐步求精,形式化语义,特征增量,体系结构增量 层,工件切片,协同 i v a b s t r a c t a b s t r a c t s o f t w a r er e u s eh a sb e e nw i d e l ya c c e p t e da sa i le f f e c t i v ew a yt op r o m o t ee f f i c i e n c y a n dq u a l i t yo fs o f t w a r ed e v e l o p m e n t r e c e n t l y ,s o f t w a r ep r o d u c tl i n e ( s p l ) h a sb e e n b r o u g h ti n t ot h es p o t l i g h ta sas y s t e m a t i cw a yo fs o f t w a r er e u s e as p lf o c u s e so na s p e c i f i cd o m a i n ,a n dc o n s t r u c t sac o m m o ns e t o fc o r ea s s e t s a c c o r d i n g t ot h e c o m m o n a l i t ya n dv a r i a b i l i t yi nd o m a i n s p e c i f i cs o f t w a r ep r o d u c t sc a nb ed e v e l o p e d e f f i c i e n t l yf r o mt h ec o r ea s s e t si nap r e s c r i b e dw a y t oa v o i dr e p e a t e de f f o r t s t h eg u l fb e t w e e np r o b l e ms p a c ea n ds o l u t i o ns p a c ei sam a j o rd i f f i c u l t yi n s o f t w a r ed e v e l o p m e n t i ns p l ,as e to fs o f t w a r ep r o d u c t si sd e v e l o p e d ,a n dt h e c o m m o n a l i t ya n dv a r i a b i l i t ya m o n gp r o d u c t ss h o u l db em a n a g e de f f e c t i v e l y t h e v a r i a b i l i t yo fp r o b l e ms p a c ea n dt h ec o m p l e xo r g a n i z a t i o no fs o l u t i o ns p a c em a k et h e g u l fe v e nd e e p e r f e a t u r eo r i e n t e ds p le n g i n e e r i n gr e s o r t st of e a t u r ea s ab r i d g e c o n n e c t i n gt h et w os p a c e s ,w h i c hp r o v e st ob ee f f e c t i v ei ns p lr e q u i r e m e n t sa n a l y s i s b e s i d e s ,t h ei n c r e m e n t a ld e v e l o p m e n ta p p r o a c hb e g i n st or i s e t h i sa p p r o a c ha i m st o i m p r o v et h ea g i l i t yo fs p l a n dr e m e d yt h ei n t e g r a t i o nc e n t r i ca p p r o a c hw h i c hi sc l o s e a n di n f l e x i b l e b a s e do nt h ei d e ao ff e a t u r ea n dc o m p o s i t i o n ,w et r e a tf e a t u r ea sa n e m b o d i m e n to fi n c r e m e n t c o n s i s t e n tu s eo fi n c r e m e n ta n dc o m p o s i t i o no fi n c r e m e n t i nt h ew h o l el i f ec y c l eo fs p li sv a l u a b l e i nt h i sd i s s e r t a t i o n , w e i n v e s t i g a t es y s t e m a t i c a l l y t h ei n c r e m e n t a ls p l d e v e l o p m e n t ,a n ds p r e a dt h ei d e ao f i n c r e m e n to v e rt h ew h o l el i f ec y c l eo fs p l t h e c o n s i s t e n tu s eo fi n c r e m e n tc a nf i l li nt h eg u l ft oag r e a te x t e n t t h i sd i s s e r t a t i o n c o n d u c t e das e r i e so fr e s e a r c h e s ,i n c l u d i n gs p lr e q u i r e m e n t sa n a l y s i s ,s p l a r c h i t e c t u r e ,a r t i f a c tr e f i n e m e n ta n dc o l l a b o r a t i o nd e v e l o pe n v i r o n m e n t t h em a i n c o n t e n t so ft h i sd i s s e r t a t i o na r ea sf o l l o w s f i r s t ,i tp r e s e n t sa ne x p l i c i tf o r m a ls e m a n t i c sa n da l l o ys p e c i f i c a t i o no ff e a t u r e m o d e la n dd e f i n e st h ec o n c e p t so ff e a t u r e ,f e a t u r em o d e l ,c o n f i g u r a t i o n ,p r o d u c ta n d p r o d u c tl i n e i ta l s os p e c i f i e st h er e l a t i o n s h i pa n ds e m a n t i cc o n s t r a i n t sa m o n gt h e c o n c e p t s i no r d e r t or e u s et h es e m a n t i c sa n da u t o m a t et h ea n a l y s i so ff e a t u r em o d e l , v 浙江大学博士学位论文 t h ef o r m a ls e m a n t i c si st r a n s l a t e di n t oa l l o ys p e c i f i c a t i o n t h ea l l o ya n a l y z e r , a n o n p r o p r i e t a r yt o o lc a nb eu s e dt oc h e c kt h ef e a t u r em o d e la u t o m a t i c a l l y s e c o n d ,i tp r o p o s e st h ec o n c e p to ff e a t u r e i n c r e m e n t i tf o c u s e so nt h e m a c r o s c o p i c a lr e l m i o n s h i p sa n dd i f f e r e n c e s b e t w e e np r o d u c t s ,a n de n h a n c e st h e t r a c e a b i l i t yb e t w e e nr e q u i r e m e n t sa n dd e s i g n t h ed e p e n d e n c yb e t w e e nf e a t u r e i n c r e m e n t sa n dt h ec o m p o s i t i o nc r i t e r i aa r ed e s c r i b e d t h e nag o a la n ds c e n a r i ob a s e d a n a l y s i sp r o c e s s i sp u tf o r w a r dt og u i d et h ep r a c t i c eo fs p l t h i r d ,i tp r o p o s e st h ec o n c e p to fs o f t w a r ea r c h i t e c t u r ei n c r e m e n t a ll a y e r , w h i c hi s u s e dt os o l v et h ep r o b l e mo fs i z a b l em i s m a t c hb e t w e e nc o n c e p t u a la n da c t u a l v a r i a b i l i t y d e s i g ni n f o r m a t i o ni sr e c o g n i z e da n ds t r u c t u r e di na ni n c r e m e n t a la n d m o d u l a rw a y b a s e do nc a t e g o r yt h e o r y , t h ef o r m a ls e m a n t i c so fi n c r e m e n t a ls p l a r c h i t e c t u r ei sd e f i n e d t h em e a n i n g so ft h ec o n c e p t sa n dr e l a t i o n s h i p sa m o n gt h e m a r es p e c i f i e d c a t e g o r yt h e o r ys u p p o r t st h ed i a g r a m m a t i cr e p r e s e n t a t i o no fc o n c e p t s , w h i c hm a k e st h ea r c h i t e c t u r em o r eu n d e r s t a n d a b l ea n dt r a c e a b l e i tp u t sf o r w a r dar o l e b a s e dd e f i v m i o nm e t h o d ,w h i c hg u i d e st h ed e f i v m i o np r o c e s so fp r o d u c ta r c h i t e c t u r e f r o mt h es p la r c h i t e c t u r e f o u r t h ,i tp r o p o s e sas t r a t e g yo fi n c r e m e n t a ll a r g e - s c a l er e f i n e m e n to fs p l a r t i f a c t s a r t i f a c ts l i c ee n c a p s u l a t e sa l lt h ec h a n g e sc a u s e db yaf e a t u r e r h e na d d i n g n e wf e a t u r e so re n l a r g i n gt h es c o p eo fs p l ,r e l a t e da r t i f a c ts l i c ec a nb ed e s i g n e d t h u s , c h a n g ei s r e s t r i c t e di nal i m i t e ds c o p e ,w h i c he n h a n c e st h eu n d e r s t a n d a b i l i t ya n d e v o l u t i o na b i l i t y t h er e f i n e m e n tp r o c e s si sb a s e do nam e t a - m o d e lo fa r t i f a c t ,w h i c h m a k e st h ea p p r o a c hh i l g h l yc o h e s i v ea n dl o wc o u p l i n g l a s t ,i tp r e s e n t sac o l l a b o r a t i v es u p p o r t i n gp l a t f o r m c a s d e t h e s p l d e v e l o p m e n ti sa n a l y z e db a s e do na c t i v i t yt h e o r y t h ea r c h i t e c t u r eo fc a s d e i s p r o p o s e db a s e do nt h ek e ye l e m e n t so fd e v e l o p m e n t t h ea r c h i t e c t u r ei sp r o c e s s c e n t e r e d ,c o n t e x t - a w a r ea n dh i g h l yi n t e g r a t e d t h es u p p o r tt ot h et h r e el e v e l so f c o l l a b o r a t i o ni sd i s c u s s e d b a s e do nc a s d e ,ap r o t o t y p eo ft o o ls u i t ei sd e v e l o p e d k e y w o r d s :s o f t w a r ep r o d u c tl i n e ,f e a t u r e ,s t e p w i s er e f i n e m e n t ,f o r m a ls e m a n t i c s , f e a t u r ei n c r e m e n t ,s o f t w a r ea r c h i t e c t u r ei n c r e m e n t a ll a y e r , a r t i f a c ts l i c e ,c o l l a b o r a t i o n v i 浙江大学博士学位论文 i v 图目录 1 1 论文的组织结构1 2 2 1 实现软件复用的关键因素1 5 2 2 软件产品线基本概念18 2 3 基本的产品线活动1 8 2 4 软件产品线工程框架2 0 2 5 青鸟软件生产线概念模式2 l 2 6f o r m 工程过程2 4 2 7 特征模型的具体形式2 5 2 8 集成式开发2 6 2 9 增量式开发。2 7 2 1 0 常量和函数图示3 1 2 1 1 表达式和求精链3 2 2 12 类的特征结构树3 3 2 13 协同与对象的关系3 4 2 1 4m i x i nl a y e r s 与c l a s s 及其继承关系3 5 3 1 基本特征类型3 8 3 2 图产品线特征图4 6 4 1 不同版本的产品特征5 5 4 2 面向特征增量的建模5 8 4 3 面向特征增量的分析过程6 1 4 4 商业层和服务层6 2 4 5 交互层6 2 4 6 内部层一6 3 4 7 特征增量树片段6 3 5 1 积图表6 9 5 2 余极限6 9 5 3 产品派生模式7 3 5 4 产品组合图7 5 5 5 基于角色的产品派生7 5 5 6 可视化建模工具产品线特征模型7 7 5 7 标准版产品派生过程7 9 5 8 标准版产品组合图8 0 6 1 面向对象和面向增量8 3 6 2 工件层次可跟踪性8 4 6 3 工件树状结构8 6 6 4 工件组合8 6 图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图图 图目录 6 5 类的层次结构8 9 6 6 基本求精操作9 0 6 7 工件元模型9 l 6 8 配置模板处理流程9 2 6 9 配置模型举例9 2 6 1o 工件求精流程9 3 6 11 工件组合与产品关系图9 4 7 1 产品线开发活动模型9 6 7 2 关键元素关系图9 7 7 3c a s d e 平台体系结构9 8 7 4 上下文模型1 0 0 7 5 上下文处理机制1 0 1 7 6 工具集原型1 0 2 v 图图图图图图图图图图图图图 浙江大学博士学位论文 v i 表目录 表2 1s e i 软件产品线实践框架一1 9 表4 1 特征与特征增量的比较5 5 表4 2 二元操作关系5 9 表4 3 多元操作关系5 9 表5 1 体系结构增量层7 8 浙江大学研究生学位论文独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发 表或撰写过的研究成果,也不包含为获得逝姿盘堂或其他教育机构的学位或 证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文 中作了明确的说明并表示谢意。 学位论文作者签名:蕊彳寿 签字眺妒7 年占月f 7 日 学位论文版权使用授权书 本学位论文作者完全了解逝鎏盘堂 有权保留并向国家有关部门或机 构送交本论文的复印件和磁盘,允许论文被查阅和借阅。本人授权逝姿盘鲎 可以将学位论文的全部或部分内容编入有关数据库进行检索和传播,可以采用影 印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 、 学位论文作者签名:蕊 签字日期: 年彭月i7 日 导师 签字嘞年月f s 日 致谢 致谢 岁月如梭,五年转瞬即逝。在论文完成之际,谨向五年来给我以指导、帮助 和关心的所有老师、同学和朋友致以最真诚的感谢! 首先向我的导师应晶教授致以诚挚的谢意。应老师渊博的学识、严谨的治学 态度和平易近人的工作作风,为我开拓了研究思路,丰富了专业知识,并鼓励我 不断的前进。应老师的人格魅力和学术热情深深的感染着我,感谢他在百忙之中 抽出时间对我进行指导,使我在学术研究和人生规划方面都获益匪浅。应老师对 问题的敏锐洞察力和深邃的思想,更给我留下深刻的印象。师从应老师五年来, 他不仅为我创造了良好的学术空间,还在思想和生活上给予我极大的关心和鼓 励,衷心感谢应老师在科研和生活上对我的帮助。 其次,感谢吴明晖副教授给予的关心和帮助。吴老师孜孜不倦的钻研精神和 严谨的学术态度给我极大的激励。在读博期间,吴老师在学术上给予我许多中肯 的意见,在此深表谢意。 感谢吕嘉、王华、方敏、朱凡微、周强和邬惠峰博士等在学术研究道路上给 予我的指导和关心,与他们的讨论扩展了我的视野。感谢金苍宏、毛杰、熊向辉、 陈子涵硕士等,他们给实验室带来了生机和欢笑。 感谢我的父母,在我漫长的求学生涯中,他们一直默默的支持着我。感谢我 的姐姐和姐夫,因为他们的无私付出,我才得以安心的在外求学。感谢我的女朋 友钟佳妮,在我最艰难、最困惑的时候,她的支持与鼓励是我不断前进的动力! 最后,衷心感谢为评审本文而付出辛勤劳动的各位专家学者! 蒋涛 二零零九年六月于求是园 第l 章绪论 第1 章绪论 1 1 研究背景和意义 近年来,随着软件在各行各业以及人们日常生活中的不断渗透,软件产业得 到了蓬勃的发展。研究者提出各种软件模型、软件设计思想以及软件开发方法等, 并开发相应的辅助工具,推动着软件产业的不断进步。尽管如此,随着软件应用 环境的开放化与动态化,特别是i n t e m e t 成为软件运行的重要环境,以及业务逻 辑的复杂化与用户需求的易变性,成功的软件开发也并非易事。 软件是对客观世界中间题空间与解空间的具体描述,是客观事物的一种反 映。客观世界是不断变化的,因此,构造性和演化性成为软件的本质特征n 1 。并且, 人们对所要解决问题的认识的不断深入也推动着软件的形态和开发方法的不断 发展。软件开发面临着几个重要的问题:( 1 ) 用户和软件开发者对系统的不同视 点以及从问题空间到解空间的断层乜1 。( 2 ) 软件行业之间的竞争要求不断提高软 件开发生产力和质量,并且要压缩上市时间。( 3 ) 动态开放的运行环境要求软件 具有很强的演化能力。 针对软件开发中的这些问题,研究者和实践者进行了大量的探索,并提出了 一系列解决方案。早在上世纪6 0 年代,由于软件开发从质量、效率等方面都不 能满足应用需求而产生了所谓的“软件危机”,为解决这一问题,在1 9 6 8 年的n a t 0 会议上首次提出“软件工程”概念,试图以“工程”和“群体协同工作”的方式 进行软件开发。在软件工程的研究中,先后涌现了高级语言、结构化程序设计、 面向对象、软件构件以及w e b 服务等技术,这些研究在一定程度上提高了软件开 发的效率和质量。同时,研究者也逐渐加深对软件系统本质的认识,发现其通常 包含三类成分口1 :( 1 ) 通用基本构件:是特定于计算机系统的构成成分,如基本的 数据结构、用户界面元素等,它们可以存在于各种应用系统中;( 2 ) 领域共性构 件:是应用系统所属领域的共性构成成分,它们存在于该领域的各个应用系统中; ( 3 ) 应用专用构件:是每个应用系统的特有构成成分。在前两类构成成分的开发 中包含了大量的重复劳动,降低了软件生产效率。另一方面,在软件开发中,许 t 浙江大学博士学位论文 多企业长期关注某个单一领域内的软件产品开发。这些产品具有某些相似的共性 特征,企业因此也积累了很多可以重复使用的软件工件和软件知识。这些因素为 系统化和大规模软件复用奠定了基础。 经过工业界和学术晃的长期努力,软件复用已经成为提高软件生产力,减少 软件开发费用,提高软件质量的现实可行的途径。软件复用以已有工作为基础, 充分利用过去应用系统开发中积累的知识和经验,避免原有开发过程中的许多重 复劳动。通过对领域知识的积累和共享,软件复用促进了软件产业的标准化进程。 在工业界,爱立信、惠普、a t & t 、微软以及n e t r o n 公司等都对软件复用技术进 行了研究与实践h 1 ,在很大程度上提高了人们对软件复用的认识。实现软件复用 的技术因素有面向对象技术、软件构件、软件体系结构、领域工程、软件再工程、 软件过程和c a s e 技术等,这些技术因素和非技术因素互相联系,共同影响着软 件复用的实现。 根据复用的组织方式,将复用区分为个别的复用和系统化的复用b 1 。个别的 软件复用关注一组可复用构件,应用开发者对它们进行选择和复用,是一种个人 层面而不是项目级别的复用。系统化的软件复用不但具有一组可复用的构件,而 且还定义了在新的应用系统的开发过程中复用哪些构件以及如何对构件做出适 应性剪裁。系统化复用方式将注意力集中在特定的领域,同时注重较高抽象级别 的产品复用,使得软件开发组织能够对领域进行更深入的了解,更准确的识别和 把握可复用信息。尽管软件复用已经取得一定进展,但是目前仍然没有一套十分 成熟的复用标准和流程,软件复用仍不能满足日益扩大的市场对软件产业的要 求。 在系统化的软件复用中,软件产品线日益受到重视,是实现软件工业化生产 的极有前景的途径。软件产品线指具有一组可管理的共性特征的软件密集型系统 的集合,这些系统满足特定的市场需求或任务需求,并且从预先生产的核心资产 的基础上开发而来哺1 。借鉴工业界产品线的思路,软件产品线关注于一个软件开 发组织如何开发一组具有相似特征的软件产品。产品线分为领域工程和应用工程 两个阶段,前者关注核心资产的开发,后者则利用核心资产构建具体的软件产品。 2 第1 章绪论 软件产品线中的软件系统按照指定的方式依据公共核心资产开发,相比从零开始 的方式能显著提高生产效率和软件质量。 软件产品线涉及软件工程、管理和商业等多个学科的知识,目前正处于一个 蓬勃发展的时期。软件产品线既注重理论研究也关注工业实践,在工业界和学术 界都具有重要的研究和应用价值。软件产品线覆盖了软件开发的全过程,是一种 规范化、大规模和系统化的软件复用方式。研究和应用软件产品线技术能够提高 软件生产力,保证软件质量,并减少开发费用,对于提高软件企业的竞争力以及 软件产业的成熟度都有重要意义。 1 2 相关研究现状 软件产品线作为一种系统化软件复用的重要途径,在工业界和学术界得到了 广泛的关注。在工业界,瑞典c e l s i u s t e c h s y s t e m 公司在轮船系统上的成功实践在 一定程度上促进了软件产品线概念的提出,美国空军电子系统中心( e s c ) 的产 品线系统也是成功的应用实践b 1 ,i b m 在其2 0 0 3 年全球技术展望中也特别指出软 件产品线技术。微软的软件工厂、s a p 的f e a s i p l e ( f e a t u r e - d r i v e n ,a s p e c t - o r i e n t e d , m d a b a s e dp r o d u c tl i n ed e v e l o p m e n t ) 也都是软件产品线方法的研究与应用。此 外,a b b 、b o e i n g 、p h i l i p s 、s i e m e n s 、n o k i a 等知名企业也均采用过软件产品线 技术。在学术界,主流的软件工程会议如i c s e ( i n t e r n a t i o n a lc o n f e r e n c eo ns o f t w a r e e n g i n e e r i n g ) 、i c s r ( i n t e r n a t i o n a lc o n f e r e n c e o ns o t t w a r er e u s e ) 、i c r e ( i n t e r n a t i o n a lc o n f e r e n c eo nr e q u i r e m e n t se n g i n e e r i n g ) 、g p c e ( i n t e r n a t i o n a l c o n f e r e n c eo ng e n e r a t i v ep r o g r a m m i n ga n dc o m p o n e n te n g i n e e r i n g ) 和o o p s l a ( a n n u a lc o n f e r e n c eo no b j e c t o r i e n t e dp r o g r a m m i n g ,s y s t e m s ,l a n g u a g e s ,a n d a p p l i c a t i o n s ) 等均将软件产品线作为一个重要的研究关注点,另外,软件产品线 国际会议s p l c ( s o f t w a r ep r o d u c tl i n ec o n f e r e n c e ) 则是特别针对软件产品线领 域的专门会议。 目前对软件产品线技术的研究主要集中在以下几个方面: 1 ) 软件产品线工程 3 浙江大学博士学位论文 软件产品线工程对软件产品线的开发过程、组织、管理以及实践提供指南, 目的是制定系统化的工程规范,主要用于指导软件产品线在工业界的具体实施。 主要内容包括软件产品线的定界、产品线核心技术、产品线过程模型、产品线组 织结构、产品线实践模式以及产品线实施管理等内容。典型的软件产品线工程方 法有:s o f t w a r ep r o d u c tl i n ee n g i n e e r i n g m l 、c o m p o n e n t b a s e dp r o d u c tl i n e 、 d a r e 9 1 、f a s t n 0 1 、f o r m n l 1 2 1 、k o b r a n 3 1 、p l u s 4 1 、r s e b 1 、g e n v o c a 1 5 1 、p u l s e n 6 1 、 产生式方法n 钉、以及北京大学的青乌软件生产线n 1 、复旦大学的基于本体特征驱 动的产品线开发方法n 8 1 等。 2 ) 领域建模技术 领域指一组具有相似或相近软件需求的应用系统所覆盖的功能区域。领域建 模技术主要研究内容有领域工程、共性和可变性分析与设计以及核心资产的构建 与管理等。 ( 1 ) 领域工程:领域工程为一组相似或相近系统的应用工程建立基本能力 和必备基础的过程,覆盖了建立可复用的软件构件的所有活动b 1 。 李克勤等口1 对领域工程进行了概述,给出了领域工程的定义与目的,指出领 域工程是系统化复用成功的关键因素之一。领域工程基于两个基本认识:可复用 信息的领域特定性和问题领域的内聚性及稳定性。实施领域工程的过程包含的基 本行为可以分为三个阶段:领域分析、领域设计和领域实现。领域工程不是孤立 的学科,它与应用工程、人工智能、信息管理等学科都有密切的联系。比较典型 的领域工程方法有:c m u 软件工程研究所s e i 的f o d a 方法n 9 1 、w i l lt r a c z 的 d s s a 方法乜扪,以及北京大学的青鸟领域工程方法旺”和面向特征的领域建模方法 f o d m 啦2 1 等。 ( 2 ) 可变性分析:共性和可变性分析与设计是领域建模技术的重要内容, 也是成功实施软件产品线的核心关键因素。共性是产品线中产品集合存在的基 础,而可变性则体现了具体产品之问的差异。 f o d a 方法n 9 1 提出用特征模型建模共性和可变性,将特征分为三类:共性特 征、可选特征和可替换特征,同时还对特征之间的依赖约束关系进行了描述。 4 第1 章绪论 o d m 乜如,f e a t u r s e b 乜4 1 和f o r m n 2 1 等对f o d a 方法进行了推广,讨论了可变性的 分析、设计和实现。y e 等啦卯采用一种面向特征的方式讨论产品线中的特征可变性 和依赖性,从特征树视角和依赖性视角两个方面进行建模,并采用基于矩阵的方 式进行特征依赖分析。国内一些学者也研究了基于特征模型的共性和可变性分 析,张伟等n 2 1 针对现有的领域模型缺乏对特征模型组织框架的细致研究和说明的 问题,给出了一种特征模型的具体形式,从特征模型的基本组织结构、可变性的 表现方式和限制机制、可变性的绑定时间等方面对特征模型的组织框架及剪裁机 制进行了统一、抽象的描述。邹盛享等口础提出了一种面向产品家族的可变性建模 方法,以可变性的管理策略为指导,从扩展的用例模型入手捕获系统行为的可变 性,以特征模型组织功能性需求和质量属性并识别其可变性,两种模型采用相同 的机制对可变性进行建模,通过对可变性的有效控制,极大的促进了软件复用。 g u r p 等对可变性概念进行了讨论,给出了一个关于可变性的术语和概念框 架,并给出了三种可变性模式。这个框架将可变性纳入软件开发过程的七个层次: 需求规约、体系结构、设计文档、源代码、编译代码、连接代码和运行时代码。 讨论了可变点的三种状态:隐含的、设计的和绑定的。x v c l 乜引提供一种可变性 机制,借助一种基于x m l 的变量配置语言处理软件产品线中的可变性。利用特 征图进行领域分析并捕获产品线中的共性和可变需求,然后使用x v c l 开发软件 产品线的核心资产,将领域模型、产品线体系结构和通用构件等建模为能容纳领 域共性和可变性的x f r a m e 。k e e p e n e e 等乜 使用模式建模产品线的可变性,首先 分析产品线中具体产品的用户需求,并识别出可变性,然后建立面向对象的产品 线模型,并使用预定义的模式对可变性建模。c z a m e c k i 等d0 3 1 1 使用基于势 ( c a r d i n a l i t y - b a s e d ) 的方式对特征模型中的共性和可变性进行统一表示,并使用 对象约束语言o c l 表达特征之间的约束。s v a h n b e r g 等d 2 1 讨论了实现可变性的相 关因素,并对相关实现技术进行了分析。s i n n e m a 等n 站分析了六种可变性建模技 术的相似性和不同点,并提出关键特性框架对可变性建模技术进行了分类。 ( 3 ) 核心资产构建:产品线核心资产是领域工程的重要输出,也是应用工 程进行具体产品生产时的重要输入。核心资产是一种大粒度的可复用单元,在产 与 浙江大学博士学位论文 品线中通过实例化核心资产构建具体产品,因此核心资产是产品线的重要元素, 其可复用性在很大程度上影响了产品线实践的成败。 m o o n 等隅1 给出了一种将需求构建为核心资产的方法。他们指出,面向单一软 件产品的需求工程和面向软件产品线的需求工程具有很大的不同,产品线需求是 为一组产品制定的通用需求集合,并且伴有以增量方式规定的单个系统的特有需 求。采用可变点、可变点类型、变量和可变点势的概念对可变性进行描述,增强 对变量与可变点关系的表述力。根据领域需求开发过程,以比例的方式显式的分 析领域的共性和可变性,将产品线需求构建为产品线核心资产。开发了d r e a m 环境辅助进行领域共性和可变性分析。 h e r 等d 钔认为目前评价可复用性的质量模型不能充分针对产品线核心资产的 独特性质,他们提出一个全面的框架评估核心资产的可复用性。首先识别核心资 产的关键性质,然后派生出一组质量属性来表示核心资产的可复用性,定义质量 属性的度量,并给出实践指南以促进该评估框架的应用。这种方法使得核心资产 可复用性的评估更加有效。 k i m 等d 卜”1 围绕产品线核心资产展开系列研究。核心资产包含哪些元素以及 如何实例化核心资产以构建具体产品尚没有明确的论断。依据定义的核心资产元 模型,提出一种实例化过程,并定义了每种活动实施的操作指南口5 1 。为了最大程 度的复用核心资产,需要优化核心资产的定界。给出核心资产定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 黏性土界限含水率的测定说课稿-2025-2026学年中职专业课-地基与基础工程施工-建筑类-土木建筑大类
- 2025物业管理服务版合同书
- 2025无固定期限劳动合同
- 2025设备终止合同协议书
- 黄石事业单位笔试真题2025
- Unit 3 Keep Fit Section A(1a-1d)(说课稿) 2024-2025学年人教版(2024)七年级英语下册
- 2025品牌专卖店合作伙伴合同书
- 塑料厂压延机操作规章
- 四川事业单位笔试真题2025
- 第6课 对外开放的基本国策说课稿-2025-2026学年中职思想政治经济政治与社会(第4版)北师大版
- 质量部长述职报告
- 无人机技术在农业领域的可行性分析报告
- 规模灵活资源广域接入的新型配电系统分层分群架构与规划技术研究
- 音乐心理学理论-洞察分析
- 法院报名登记表
- 上海市闵行区区管国企招聘笔试冲刺题2025
- 2025年恒丰银行烟台分行招聘笔试参考题库含答案解析
- 中外建筑史课件
- 2024年度商业保理合同:保理公司与出口商之间的商业保理协议3篇
- 宣传网络安全文明上网
- 应急管理部14号令《生产安全事故罚款处罚规定》 修改前后对照表及解读
评论
0/150
提交评论