论文部分内容阅读
随着计算机软件技术的不断发展,很多软件系统成为遗产资源,虽然它们在结构设计和界面设计等方面比较陈旧,但是它们里面包含的行为逻辑经过了多年的实践和检验,仍具有很高的应用价值。而且,随着软件规模的不断增大,用户需求的不断增多,从零开始重新开发软件变得越来越不现实。将遗产资源集成起来,通过资源之间的协作实现新的功能,是开发软件系统的一种重要途径,因此如何解决遗产资源的异构性、系统集成的动态性,实现资源的协作演化对于软件开发具有重要的意义。而Agent的自治性和社会性为我们解决系统动态集成问题,实现资源的协作演化提供了新的思路。本文以系统集成为基础,结合Agent技术和多Agent系统,提出了一种基于Agent的资源协作演化框架模型。该模型通过将资源封装成Agent解决遗产资源的异构性问题,通过基于Agent的系统动态集成实现资源的协作演化。本文通过对多Agent组织结构和协作机制的研究,设计了资源协作演化过程模型和资源协作演化机制。资源协作演化过程模型从服务Agent层、功能Agent层和资源层三个层面实现资源的协作演化。根据任务需求制定表示服务Agent之间协作关系的集成脚本,主控节点对其加载和解析,之后向相应的服务Agent分发前驱后继规则,实现服务Agent之间的协作;服务Agent通过在熟人库中优选和绑定功能Agent,实现服务Agent与功能Agent之间的协作;服务Agent通过向功能Agent分发后继规则,实现功能Agent之间的协作;功能Agent通过资源调用接口调用不同类型的资源,实现功能Agent与资源之间的交互,这样就建立了资源之间的协作关系。当用户的任务需求发生变化时,通过重新制定和加载新的集成脚本,使资源之间的协作关系动态重组,实现资源的协作演化。为保证资源协作演化过程的正常运行,设计和实现了资源抗毁机制、任务负载均衡机制和动态添加新节点机制。其中通过资源抗毁机制,实现了系统运行过程中资源毁伤时备份的自动接替,通过任务负载均衡机制,实现了资源处理数据量满载时的备份分流,通过动态添加新节点机制,实现了系统即插即用的特性。本文最后通过一个资源协作演化实例,对资源协作演化支撑环境进行了实验,通过对功能和性能的分析,验证了资源协作演化过程和机制的有效性。