论文部分内容阅读
“唯一不变的是变化本身”。随着经济与科技的快速发展,伴随着企业全球化、多元化和快速转型的发展趋势,研究软件系统适应多变的用户需求的能力、构建适应性软件系统已成为迫切任务。本文以构建适应性软件系统为总体目标,以共性与可变性分析为指导思想,主要关注适应性软件系统及其软件工件的自动化开发、形式化验证、最优化配置和多样化集成等关键问题。围绕支撑适应性软件系统构建的转换改编和组合改编两个主要途径,重点研究了相应的软件复用与配置的相关技术方法。本文主要工作概述如下:首先,在与软件复用相关的软件产品线领域工程的研究方面,提出了模型驱动的领域功能需求半自动开发方法。针对现有领域分析方法缺乏自动化支持的问题,首次将模型转换技术应用到领域需求的分析与开发中。基于格语法理论,建立了产品功能需求和领域功能需求的元模型。采用模型转换语言形式化定义了从产品功能需求模型自动派生领域功能需求模型的规则。该方法为领域需求分析提供了严格的基于模型的支持,提高了领域需求分析的效率和可扩展性,推动了自动化需求分析的研究,促进了软件产品线工程与模型驱动工程的集成研究。其次,提出了基于变更语义分析的特征模型一致性进化方法。针对软件产品线及其共性与可变性的频繁变更和不断进化,首次将变更语义分析引入到特征模型的进化与一致性维护中。基于本体,给出了特征模型的形式化定义和一致性约束。定义了影响特征模型进化的基本变更操作,分析了它们相互间的语义依赖关系和对特征模型一致性的影响。与现有方法相比,该方法不仅可以直接处理和解决由变更引起的不一致,而且可以将变更的影响限制在一个局部范围,大大减少了一致性维护的代价。该方法促进了即时响应的特征模型变更管理工具的开发,可有效地支持增量式的软件产品线进化管理。然后,在与软件配置相关的软件产品线应用产品派生的研究方面,提出了基于遗传算法的具有资源约束的产品线特征选择优化方法。针对如何快速有效地从软件产品线中派生应用产品配置的问题,首次将进化算法引入到具有资源约束的软件产品线特征选择优化中。创造性地提出了一个新颖的修补算子可以将一个任意的特征选择转换为一个符合特征模型约束的有效特征组合,从而允许遗传算法或其他进化算法都可以应用到软件产品线特征选择问题上来。与现有方法相比,该方法在获得相近优化结果的同时,可以大大节省计算时间,提高了应用产品派生的效率,促进了自动化软件产品线工程的发展。最后,在与软件配置相关的、面向最终用户的应用系统组件配置的研究方面,提出了基于本体的适应性工作流参与者分配方法。针对过去大多数工作流参与者分配方法不能有效组织和使用各类企业数据、并且主要依赖少数专业人员使用各种复杂描述语言来定义授权约束的问题,提出了基于本体来组织和利用各类企业数据和工作流数据,从而表达更多更复杂的参与者授权约束。同时,开发了一个高可用性用户界面辅助最终用户方便地定义授权约束且无需编程,促进了面向最终用户的灵活配置技术的研究。