论文部分内容阅读
基于构件的开发(Component-Based Software Development,简称CBD)是 软件复用领域的研究热点,被视为解决软件危机,提高软件生产率和质量的现 实可行的途径,是软件工业化生产的必由之路。然而,当前构件技术并没有大 规模应用到软件工程实践之中,其中一个重要的原因是尚未有效地解决构件的 语义表示和处理问题,缺乏自动分析工具对CBD方法和过程的支持。 本文将演化计算(Evolutionary Computation,简称EC)的思想和方法应用 到基于构件的软件开发之中,提出一种“基于演化构件的软件复用方法”(简称 演化构件方法)。在对软件复用深刻认识的基础上,首先,提出一种以语义为中 心的形式化构件模型,认为反映构件功能和性能的语义、面向构件联接的语法 和负责计算的实现三者之间应该相互分离,其中语义的结构包括领域、定义和 语境三个部分,文中用Z语言定义的构件模型是构件演化方法的基础;其次, 介绍了特征建模(Feature Modeling)方法,提出用基于知识的特征空间描述构 件语义的内容和结构,在深入分析了特征本质的基础上,完善了特征空间的可 视化描述工具和特征建模过程,使得演化构件方法在软件工程上具备一定的可 操作性;再次,借助于知识描述语言-描述逻辑,设计了一种适合表达构件语 义的形式描述语言-特征描述逻辑(Feature Description Logics,简称 ),用 表达语义内涵及实现自动推理,为构件的演化计算方法的实现提供了可能。 最后,提出构件演化计算方法,它是前三项研究的目的所在,即从自然演化的 角度认识构件和CBD方法及过程,设计一组基于演化计算原理的构件运算算 法,充分发挥演化计算方法的优势,在一定程度内(半)自动地建立最优或接 近最优的基于构件软件系统。 总之,基于演化构件的软件复用方法为构件复用的自动化和工程化提供了 一种可行的解决途径。