Feature IDE理论与技术研究

来源 :科技信息·中旬刊 | 被引量 : 0次 | 上传用户:girljiangsha
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:Feature IDE 在 Eclipse软件中的插件,可以用于软件产品线中面向特征的软件开发(FOSD)。FOSD 是软件整体系统结构、个性定制和合成的一种方法。Feature IDE 支持FOSD的所有软件开发阶段,并将其分为四个阶段,分别为领域分析、需求分析、领域实现和软件生成。在特征模型领域中对Feature IDE理论与技术进行综述,按照综述的方法重点的探讨了Feature IDE前两个开发阶段的技术。
  关键词:综述;软件产品线;特征模型;Feature IDE
  引言
  软件产品线是可以高效率的完成高质量的软件产品的生产,和工业领域中流水线生产方法类似,生产出来的软件产品功能多样,符合特定领域的软件需要[1]。FOSD是软件产品线的主流技术,是在特定领域中软件产品公共性特征基础上结合可变特征生产软件产品。Feature IDE是一种比较成熟FOSD的技术,很有实用价值。本文总结Feature IDE理论与技术的四个开发阶段的理论基础和主流技术。
  1 Feature IDE
  特征是指明显的、用户可见的软件系统的具有独立功能的特性。FOSD的基本思想是将软件系统分解为许多个特征,从而根据特征的选择进行配置,从而生成具体的软件系统。Feature IDE技术从设计生成软件具体包括四个阶段:
  (1)领域分析,用来获取获取软件体系领域的需求特征,并对这些特征进行分类,分为可变特征和公共特征,最终以特征模型的方式展现出来。
  (2)需求分析,选取特征模型的特征组合方案,从而完成软件特征的组装和配置。
  (3)领域实现,将特征用代码进行映射和表示。
  (4)软件生成,描述特征如何映射到实现工件,生成定制的软件系统。
  德国马格德堡大学计算机学院Thomas Thum 等人开发了基于Eclipse 的Feature IDE开源框架,它包含了整个软件开发周期,还可以子啊集成开发环境(IDE)中建立软件产品线(SPLs),可以建立特征模型,还可以为软件生成提供开发平台和可复用构件。在2005年Thomas Thum等人首次提出了一个Feature IDE的原型版本[2]作为AHEAD工具套件的前端的编程语言[3],随后提出了FOSD可复用的实现工具Feature House和Feature C++和FOSD 集成框架Feature IDE。到目前为止,Feature IDE 集成了 Aspect J、Delta J[4]、Antenna和 Munge等技术。随后为了解决 Feature IDE 实现和测试的问题,Thomas 等人开发了相关 Eclipse插件。Feature IDE 架构整合了 Feature IDE C++(支持 C++)、Feature House(支持 C、 C#、java 1.5、JML、Haskell、XML 和 Java CC 等)、面向方面程序设计(Aspect J)和面向 Delta编程,所以该架构支持现有的FOSD编程语言。Feature IDE 支持 FOSD 的所有阶段:领域分析、需求分析、领域实现和软件生成。下面对领域分析和需求分析阶段进行重点描述。
  2 领域分析
  在领域分析中绘制的特征模型中,存在很多的无效特征,会导致最终省的软件没办法使用。所以在制作模型过程中要选定有效特征,制成有效的特征组合。特征模型(FM)不仅描述了有效特征,还体现了特征之间密切关系特征模型是一种层次结构,特征可以有子特征。特征和其子特征集的关系包括为 And-group(与关系)、Or-group(或关系)和 Alternative-group(二选一关系)。子特征根据他是否具有公共性又分为强制特征(Mandatory)和可选特征(Optional)。强制特征是具有公共性,所有软件产品线的软件都需要具备的特征,所以具有强制性。可选特征具有独特性,是某个或者某部分软件产品所包含的特征;除此之外特征中有些特征只是特征分解中一个中间件,不会映射具体的工件,称为抽象特征(Abstract),而最终软件产品中具有的特征称为具体特征(Concrete)。
  Feature IDE 创建特征模型有两种方式,图形式和文本式。Feature IDE 可以在Eclipse中导入特征建模工具,包括 GUIDSL、Feature Modeling Plug-In [37]、S.P.L.O.T., 和 SPLConqueror。特征模型可以存储为多种图形格式,也可以以 PDF格式进行打印。
  3 需求分析
  特征模型中特征之间的除了层次关系,还有约束关系,Feature IDE使用Cross-tree 约束去定义这种约束关系。Cross-tree 约束命题公式,由是一组特征的组成,在特征图下方。
  特征模型包括一下四点:
  (1)当一个特征最终成为某一软件产品的特征,那么它的父特征也必然出现在这个软件产品中。
  (2)当一个特征最终成为某一软件产品的特征,则其 And-group 中的所有的强制类型的子特征必然出现在这个软件产品中。
  (3)在 Or-group 中,其多个子特征中,最后至少有一个特征属于最终的软件产品。
  (4)在 Alternative-group 中,有且只有一个特征属于最终的软件产品。
  Feature IDE 提供了约束编辑器。该编辑器有内容帮助功能,可以方便的处理语法语义的有效性检查。图 2 展示了约束的有效性检查。可以检查可以检测括号不匹配、假可选特性、不可满足的约束和冗余约束。
  上式表示特征F依赖于特征A,B或者C以及它们的任意组合。
  上式表示特征F依赖于特征对(A,X),(B,Y),(B,Z)或C以及它们的任意组合。排斥
  也有相同的表达。综上所述,可以得出非语法约束可以是任意命题约束。语法为特征模
  型提供了一个图形中性的表示,例如图3(b)的语法可以表达图3(a)的特征模型。
  获取特征集合,绘制特征模型之后,需要选择合适的特征组合,即特征子集,称为配置。其中默认配置是特征模型中包含的所有特征的集合。而且要保证配置得到的特征集合有效,可以生成有效的软件产品。
  参考文献:
  [1] 郭健美.基于共性與可变性分析的适应性软件复用与配置技术研究[D].上海交通大学,2011.
  [2] 赵鄂,杨博文,杨贯中.一种适用于软件产品线的特征模型[J].计算机系统应用. 2013(10)
  [3] Zhang W,Mei H,Zhao H.Feature-driven requirement dependency analysis and high-lev
  [4]Batory D.A tutorial on feature oriented programming and the ahead tool suite [M],Berlin Heidelberg:Springer,2006:3-35.
其他文献
摘要:在我国社会经济快速发展的当下,我国的民航事业得到了极快的发展,为我国居民的出行提供极大的便利,为经济建设作出了巨大贡献。但是在民航事业稳定发展的过程中,还是不时发生一些安全事故,影响到飞行人员的生命财产安全,所以民航维修是非常重要的。笔者将结合自身工作经验,对现代民航维修技术展开分析,同其他从业者进行分享和交流。  关键词:现代民航;维修;思想理念;影响因素;技术方法  1前言  目前在我国
期刊
摘要:活性炭的吸附性特别好,具有物理、化学吸附两种特性,可选择吸附液相和气相物质,从而实现脱色精制、去污提纯以及消毒除臭之目的,在现代化学制药过程中得以广泛的应用。对此,本文就大数据时代化学制药中活性炭技术的应用进行了简要的分析,希望对有关人士提供一定的参考,能够更加深入了解活性炭技术在化学制药中的运用原理和作用,从而完善化学制药中的活性炭技术。  关键词:大数据;化学制药;活性炭;应用  1化学
期刊
摘要:高适应性油管移运装置不再需要人力进行繁重的劳动,彻底杜绝了油管对人造成的意外伤害,同时也减少了人员配备,降低了作业中的人工成本。同时提升了整个作业过程的技术水平。移运装置运输轻便、安装快捷、适应性强。  关键词:修井作业;管柱;移运装置;适应性  引言  目前,遼河油田已进入开发中、后期阶段,采油的难度越来越大,修井任务也越来越繁重。现有的作业设备在作业施工时,油管的拉排工作需要两个工人同时
期刊
摘要:实验中心各类物资和人员的聚集增加了安全管理的复杂性。在分析现有实验中心信息化水平的情况下,提出使用数据挖掘技术分析实验中心各类风险物资的状态转换特征和公共区域师生员工的行为特征,构建对应的系统硬件和软件设计方案,通过该系统能够实现快速自动化识别风险物资以及人员行为的各类异常状况,并产生相应的动态监督巡视方案,提高巡视工作的目的性和有效性。  关键词:实验室安全;监督巡视;数据挖掘  实验室安
期刊
摘要:水是人类的生命之源,在人们的生产生活中发挥着非常重要的作用,但是当前在经济高速发展之下,水资源使用存在着不合理利用问题,所以需要加强水资源的制度管理,从而提高水资源管理有效性,实现水资源的有效利用以及保护。人水和谐理念是基于水资源治理而提出的,将其与水资源管理制度构建进行充分的联合与应用,便可以形成现代化的水资源管理制度,以此在体现人水和谐理念内涵的基础上,有效保护、利用水资源。基于此本文对
期刊
摘要:本文以某石化公司1.2Mt/年重油催化装置为例,就其运行过程中出现的装置提升管、沉降器、分馏塔底和油浆循环系统结焦问题进行了原因分析,并提出了针对性的预防应对措施。  关键词:重油催化裂化装置;结焦原因;预防应对措施  1.装置结焦概况  该装置开工运行两个月后由于分馏塔底结焦,油浆泵出现抽空,经反复调节无效后,装置被迫停工。停工检查发现:  (1)分馏塔底严重结焦,塔底几乎全部充满了焦碳,
期刊
摘要:最近几年以来,伴随着我国科学技术水平的持续提升以及社会主义市场经济的快速发展,使得社会对于化学分析的质量控制工作的要求变得愈加严格。在整个检验事业中,化学分析的质量控制工作显得极为关键,其能够展现出巨大的效用,故非常有必要进一步强化化学分析的质量控制,这样不仅能够促使质量检验的水平持续提升,而且有助于进一步扩大社会的经济效益,故应该给予重视。文章阐述了化学分析过程中所存在的不足之处,并结合实
期刊
摘要:民用航空器是当今社会离不开的交通设备之一,但是设备在使用过程中出现故障在所难免,如何进行有效的维修,确保设备的正常使用才是关键,民用航空器亦是如此,如何提升维修技术,确保航空器的安全稳定运行是当下热议的话题,本文以此为基础也展开研究,希望能给为提升民用航空器使用效率提供借鉴。  关键词:民用航空器;维修技术;措施  民用航空器是我国空运事业必不可少的工具,因此它的安全直接关系到我国空运质量和
期刊
摘要:本文分析了液压系统压力原位检测的机理,提出了液压系统压力的应变片式原位检测方案,并在综合试验台和某型装甲车上进行了实时检测,发现该方案原理可行,检测原理对控制油液污染度和液压系统的故障诊断具有较大参考价值。  关键词:液压系统;应变片;原位检测  1.引言  液压系统具有体积小、重量轻、比功率大、运行平稳、可无级调速等优点,广泛应用于飞机、火箭、船舰、车辆等地方。随着液压技术和计算机技术的迅
期刊
摘要:本文主要针对制约民航空中交通管制工作的各项因素进行了较为深入的分析,并提出了相应的对策与措施,以提高高民航空中交通管制安全运行水平。  关键词:高民航空中交通管制;因素;措施;研究  前言:  民航空中交通管制的工作水平对民航业的发展有着至关重要的作用,所以就需要深入分析制约民航空中交通管制工作的主要因素,从而更好地采取解决措施,并提高民航空中交通管制安全运行水平。  一、民航空中交通管制的
期刊