论文部分内容阅读
目前,很多软件系统的更新和升级不再是停止运行后进行编码扩充,而是在运行过程中进行功能模块的动态添加,充分利用遗产系统。现有的研究方法包括网络构件,分布式组件和Agent等都致力于开发能够动态演化的系统。另外,随着分布式环境和网络环境的加入,软件系统所处的环境不再是静态不变的,多变复杂的环境要求软件系统具有环境感知和自适应能力,能够针对不同的环境变化做出相应的结构或者能力的调整,以确保系统正常的运行和任务准确的完成。软件的自适应演化过程使软件能够针对外部变化进行自适应行为,提高了软件的健壮性和自适应性等,是当前软件演化领域中的重点研究方向之一。本文针对系统集成技术、Agent技术和软件演化技术,研究了环境驱动的软件自适应演化过程,并对该过程中的核心机制和策略进行了设计和实现。本文首先给出了一个基于Agent的软件自适应演化支撑框架,介绍了自适应演化支撑平台和相关工具,给出了Agent元模型和组织结构。其次,提出了软件自适应演化的过程模型,并对软件环境进行了定义和分类,依据环境的不同提出了全局环境演化过程和局部环境演化过程。然后,本文详细介绍了软件自适应演化过程中的核心机制和策略,包括基于集成规则的Agent协作机制的设计与实现,基于演化规则的环境感知演化机制的设计与实现和基于知识规则的Agent自适应机制的设计与实现。最后,以一个模拟的仿真系统作为测试用例,进行了基于Agent的软件自适应演化实验,验证了本文提出的软件自适应演化过程及相关机制的可行性,并对实验结果进行分析。