基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法技术

技术编号:17047208 阅读:22 留言:0更新日期:2018-01-17 17:33
本发明专利技术公开了一种基于需求文本与可变性模型追踪关系的产品线配置优化方法,涉及软件产品线可变性配置领域。本发明专利技术通过可变性模型的转换,建立结构化需求的需求框架,并利用NLP技术处理文本需求,从而将文本需求分配到需求框架中,从而建立结构化的需求,并建立需求与可变性模型间的追踪关系,最后将需求特性引入到可变性模型中,并基于需求特性和可变性模型的约束,实现可变性配置的优化序列。该设计解决了难以将产品线需求特性用来指导产品配置的问题,直观、简单、有效的对产品线配置优化提供依据,从而更好的保证产品线的择优配置。

A product line variability configuration optimization method based on the tracking relationship between demand text and variability model

The invention discloses a product line configuration optimization method based on traceability relationship between demand text and variability model, which relates to the field of software product line variability configuration. The present invention by converting variability model, establish the structural demand demand framework, and use NLP technology to process the text needs, which will demand the text assigned to the demand framework, so as to establish the structural demand, and the establishment of demand and the variability of model traceability between the demand characteristics into the variability model, and based on the demand characteristics and the variability of model constraints, to achieve optimal allocation of sequence variability. The design solves the problem of product line demand characteristics to guide product configuration, and provides a basis for product line configuration optimization intuitively, simply and effectively, so as to better ensure the best configuration of product line.

【技术实现步骤摘要】
基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法
本专利技术涉及软件产品线可变性配置,具体地,涉及一种基于需求与可变性模型追踪关系的产品线配置优化方法。
技术介绍
软件产品线是为了实现软件复用、解决软件危机和实现软件产业工业化生产方式而提出的一种方法,该方法利用软件复用的概念,把具有共享体系结构、特征、代码、构建和需求的软件产品作为同一问题空间来看待,从而更好地应用软件复用技术,提高软件开发的效率。为了实现软件复用及对产品演化的支持,产品线方法过程分为两个基本阶段:领域工程和应用工程。领域工程即实现产品线核心资产的阶段,即描述产品线的共性和可变性。而应用工程根据产品线核心资产对特定产品中可变性进行配置从而实现特定产品。为此,领域工程需要对产品线的可变性进行有效的管理,往往领域工程实现对可变性的识别、设计和实现,而应用工程则对可变性进行配置。工业界的应用表明,软件产品线在特定领域能够有效地提高产品质量及缩短产品推向市场的时间。软件产品线技术的应用使得惠普、诺基亚和飞利浦等大公司获得了相当大的经济效益,不仅缩短了产品上市时间,而且提高了用户满意度。但是在面临大型系统时,由于软件产品线的实施缺少业务目标的考虑,导致一些应用不成功,迫切需要建立良好的需求分析机制,以支持产品线配置。在领域工程阶段,通过分析一系列产品的共性和可变性,建立可变性模型,通过开发或复用产品线资产,建立产品线平台。跟领域工程相对应,在应用工程阶段,以产品线平台为基础,通过软件产品配置和定制开发生成满足用户需求的产品。软件产品配置是指应用工程中,根据特定系统的需求和该领域的可变性模型,配置出适用于特定系统的软件系统模型,以指导软件产品构建和生成的过程,配置的对象主要包含产品线需求和产品线体系结构模型等。但是软件产品配置还面临一些问题,由于不同的专业领域涉及的专业知识太多,配置人员无法掌握所有的领域知识。由于众多专业组的参与,而软件配置过程中,又包含非常多的约束和依赖关系,配置过程将会非常容易产生错误。已有研究更多的是考虑软件产品配置中的约束和依赖关系,从而辅助产品配置过程中的决策,并将配置的反馈信息提供给用户,以降低配置的复杂度,提高配置的效率。然后,产品线工程往往积累很多历史数据,这些数据涵盖需求的重要性、代价和收益等,往往对产品配置具有一定的指导含义,但是并没有被充分利用。重要的困难是产品线需求往往是以文本形式存在,没有很好的组织和管理,难以将需求特性(如重要性、实现代价和收益等)用来指导产品配置。因此,在实现产品线配置时引入需求特性并对产品配置进行指导,能够有效的实现半自动化的产品配置及优化。但如何关联需求与可变性模型,即建立需求与可变性模型间的追踪关系,是解决在产品线配置中引入需求特性的关键。建立需求与产品线可变性模型的追踪关系,实现产品线需求特性配置的指导作用,从而更好的实现可变性的优化配置。因此,基于模型驱动的思想,研究面向软件产品线自动配置,能更好地提高软件产品线技术的实用性。研究面向配置的软件产品线需求支持技术,建立需求与产品线可变性模型的追踪关系,实现可变性模型中引入需求特性,克服传统的可变性技术较少考虑需求本身相关属性对可变性配置的影响。
技术实现思路
针对当前产品线的需求文本无结构化的特点,需求与可变性模型间往往缺乏追踪,从而在可变性配置中难以充分考虑需求特性,如重要性、实现代价和收益等,本专利技术提出一种基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法。该方法能够较好地对需求文本进行结构化,并建立需求文本与可变性模型间的追踪关系,从而在可变性配置中充分考虑需求特性对产品配置的影响。本专利技术基于需求文本与可变性模型追踪关系的产品线可变性优化配置方法,具体包括如下步骤:(1)确定建立文本需求的结构化需求模型;定义可变性模型到需求模型的转换规则;根据转换规则将可变性模型的各个元素映射成需求模型中的元素;建立结构化需求模型的框架和关键字字典。(2)定义关键字匹配度函数;使用NLP技术处理文本需求,抽取出文本需求中的名字短语NP及其所承担的语法功能。(3)对每个文本需求,利用关键字匹配度函数计算该文本需求中的NP与关键字的匹配度,选择具有最大匹配度的关键字K作为该文本需求的关键字;确定K在结构化需求模型框架中的位置,并将该文本需求加入到结构框架中作为K的孩子。(4)将所有的文本需求按照(3)过程,放入结构化需求模型中,完成文本需求的结构化处理,也在结构化过程中建立了需求与领域模型的追踪关系。(5)将需求特性附加到可变性模型中,对每个可变性用附加其上的需求的属性进行定量计算,作为可变性的一个属性;结合可变性的依赖关系、约束关系和可变性附加需求特性,对可变性进行基于启发式搜索的配置优化,得到可变性配置优化序列。本专利技术的优点和积极效果在于:(1)本专利技术方法直观、简单、有效,使用可变性模型对需求进行结构化,并在可变性优化配置中引入需求相关特性,基于可变性模型的配置自动生成产品需求,在一定程度上解决了现有的产品线需求与领域模型分离、产品线配置中不能充分考虑需求特性等问题;(2)本专利技术方法将需求特性引入到产品线配置中,并在产品线配置优化中使用需求特性对配置优化进行引导,能更好的建立需求与领域模型的追踪关系,并对产品线配置优化提供依据,从而更好的保证产品线的择优配置。附图说明图1是本专利技术的产品线可变性配置优化方法的整体流程示意图;图2是本专利技术实施案例HandlingSystem的CBFM模型图;图3是本专利技术实施案例HandlingSystem的文本需求示意图;图4是本专利技术实施案例的结果示意图;图5是本专利技术实施步骤4中的需求结构生成算法示意图;图6是本专利技术实施步骤11中的需求分配算法示意图。具体实施方式为便于本领域一般技术人员理解和实施本专利技术,现结合附图描述本专利技术的具体实施方式。ReqIF(RequirementsInterchangeFormat,需求交换格式)模型是一种用来实现需求交换和共享的XML描述的需求模型,而CBFM(Cardinality-basedFeaturemodel,基于基数的特征模型)是被广泛用于产品线可变性建模。为了对本专利技术进行说明,采用ReqIF描述结构化需求,选择CBFM为可变性模型对本专利技术的具体实施进行介绍,从而建立文本需求与CBFM之间的追踪关系,并将需求属性加载到CBFM相应的特征上,从而对特征进行配置优化。下面结合实施案例系统HandlingSystem来说明。图2给出了本专利技术实施案例系统HandlingSystem的CBFM模型。在图2中,HandlingSystem使用多个具有基数为[1..*]的特征组FeatureGroup描述其可变性,每个FeatureGroup都包含一个对应的特征Feature,分别是Conveyor,AutomaticStorageRetrievalSystem,AutomaticGuidedVehicle。AutomaticGuidedVehicle也通过一个基数为[1..*]的FeatureGroup拥有两个特征AGVApp和AGV。AGV同理拥有Sensor,而Sensor通过基数[1..1]来描述其具体的类型,这里的类型有MagneticGuid本文档来自技高网
...
基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法

【技术保护点】
一种基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法,其特征在于,包括:(1)确定建立文本需求的结构化需求模型,定义可变性模型CBFM到结构化需求模型的转换规则;根据转换规则将可变性模型的各个元素映射成结构化需求模型中的元素,建立结构化需求模型的框架和关键字字典;(2)定义关键字匹配度函数;使用自然语言处理NLP技术处理文本需求,抽取出文本需求中的名字短语NP及其所承担的语法功能;(3)对每个文本需求,利用关键字匹配度函数计算该文本需求中的NP与关键字的匹配度,选择具有最大匹配度的关键字K作为该文本需求的关键字;确定K在结构化需求模型框架中的位置,将该文本需求加入到结构框架中作为K的孩子;(4)将所有的文本需求按照(3)过程,放入结构化需求模型中,完成文本需求的结构化处理,建立了需求与领域模型的追踪关系;(5)将需求特性附加到可变性模型中,对每个可变性用附加其上的需求的属性进行定量计算,作为可变性的一个属性;结合可变性的依赖关系、约束关系和可变性附加需求特性,对可变性进行基于启发式搜索的配置优化,得到可变性配置优化序列。

【技术特征摘要】
1.一种基于需求文本与可变性模型追踪关系的产品线可变性配置优化方法,其特征在于,包括:(1)确定建立文本需求的结构化需求模型,定义可变性模型CBFM到结构化需求模型的转换规则;根据转换规则将可变性模型的各个元素映射成结构化需求模型中的元素,建立结构化需求模型的框架和关键字字典;(2)定义关键字匹配度函数;使用自然语言处理NLP技术处理文本需求,抽取出文本需求中的名字短语NP及其所承担的语法功能;(3)对每个文本需求,利用关键字匹配度函数计算该文本需求中的NP与关键字的匹配度,选择具有最大匹配度的关键字K作为该文本需求的关键字;确定K在结构化需求模型框架中的位置,将该文本需求加入到结构框架中作为K的孩子;(4)将所有的文本需求按照(3)过程,放入结构化需求模型中,完成文本需求的结构化处理,建立了需求与领域模型的追踪关系;(5)将需求特性附加到可变性模型中,对每个可变性用附加其上的需求的属性进行定量计算,作为可变性的一个属性;结合可变性的依赖关系、约束关系和可变性附加需求特性,对可变性进行基于启发式搜索的配置优化,得到可变性配置优化序列。2.根据权利要求1所述的优化方法,其特征在于,所述的(1)中,结构化需求模型为需求交换格式ReqIF模型。3.根据权利要求2所述的优化方法,其特征在于,所述的(1)中,定义的CBFM到需求模型ReqIF的转换规则如下:RS:将CBFM特征树的节点fnode转换为ReqIF中structSpecification中的元素;RS1:为fnode创建ReqIF::SpecHierarchy,设名称为sh;RS2:为sh创建关联的ReqIF::SpecObject,设名称为so;RS3:为so创建ReqIF::AttributeValueString,保存fnode的名字;RS4:为fnode中每个属性创建属性名作为so的属性;RK:将特征树上的节点fnode转换为kwSpecification中的一个关键字ReqIF::Keyword;RK1:假设fnode转换成structSpecification中的元素,则调用RK1.1-RK1.4;RK1.1:在kwSpecification中为fnode生成ReqIF::SpecHierar...

【专利技术属性】
技术研发人员:张莉李艳
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1