论文部分内容阅读
软件复用是提高软件开发效率和软件质量的一种有效手段。研究和实践表明,在特定领域内对软件资产和经验进行复用更易获得成功。特定领域内的软件复用包含领域工程和应用工程两个阶段,前者为建立可复用的软件资产(例如,需求文档、设计文档、代码等)提供技术和手段;后者为使用这些可复用软件资产提供支持。需求复用是软件复用的重要组成部分。基于特征模型的领域需求复用是当前的研究热点。 基于特征模型的领域需求复用引入“特征”来组织和复用需求。通过识别和提取出特定领域中软件产品需求中的特征,识别和建立特征之间的关系,构造领域特征模型,该模型描述领域中软件产品需求的共性和变化性。通过定制领域特征模型,得到应用特征模型,该模型描述待开发软件产品的需求。特征模型在需求复用中起着重要作用。特征模型的构造与一致性保障是有效进行需求复用的前提和基础。 本文针对现有研究存在的不足,从特征模型的构造与一致性保障入手,对如何提高特征模型的构造效率和质量、如何修复特征模型的不一致,提出相应的解决方案。本文的主要研究成果体现在以下三个方面: 针对领域特征模型的构造问题,提出一种基于用况的半自动特征建模方法。该方法在分析用况生成特征模型片段的基础上,对这些模型片段进行必要的调整及融合,形成面向特定领域的特征模型。该方法充分考虑用况及特征模型的特点,提出一组特征、约束识别规则和算法,自动分析用况,生成特征模型,有效地提高了特征建模的效率和质量。 针对领域特征模型的一致性保障问题,提出一种基于动态优先级的方法自动生成修复方案。该方法在自动分析领域特征模型不一致,生成修复方案的基础上,根据用户对优先级的动态调整,识别出用户满意的修复方案。该方法采用优先级层次理论,根据领域分析员对约束的信心赋予约束关系相应的优先级,依据约束的优先级自动生成修复方案。可伸缩性实验表明方法可以高效地检查并修复包含4000个特征及300个约束的领域特征模型。 针对应用特征模型的一致性保障问题,提出一种基于自适应优先级的方法,生成并筛选出理想的修复方案。该方法通过优先推荐修改低优先级属性值的修复方案来筛选修复方案,并推荐给用户。在此基础上,根据用户反馈自动调整优先级,最终识别出用户满意的修复方案。该方法从用户的角度出发,分析用户可能提供的反馈类型,根据不同类型的反馈自动调整优先级,有效避免了优先级可能给用户带来的负担。通过对eCos定制结果进行修复的实验,验证了方法的实用性及有效性。 本文针对特征模型的构造与一致性保障提出了一种可行且有效的技术,开发了相应的支撑工具,并通过针对特定领域的实例研究,验证了本方法的可行性和有效性。