● 摘要
随着互联网技术的发展,面向服务架构已成为互联网环境下提供松耦合架构、解决异构应用之间互操作和集成,以及快速适应业务需求的主流技术。早期遗留信息系统难以适应需求的快速变化,而且维护代价很大,面向服务的改造成为迫切的需要。目前,遗留系统的服务化主要通过手工实现,效率较低,软件质量难以保证,而且只能适用于那些完整保存源代码和文档的遗留系统。针对以上问题,本文采用系统分析和底层代码处理的方法,进行遗留系统服务化切分和封装的研究与设计,并实现服务化切分和封装工具,最终实现自动的遗留系统服务化流程。本文首先分析了服务化切分和封装相关技术和研究的特点和现状,接着针对自动服务化切分和封装流程中的关键步骤指出其实现的挑战和现有方法的局限性,明确各步骤功能机制的设计目标;然后对于自动服务化切分和封装流程的各步骤:遗留系统分析、遗留系统服务化切分和遗留系统服务化封装分别提出了解决机制;接着,基于这些机制,设计了服务化切分和封装的方法;进而详细介绍了服务化切分和封装工具中各工具的设计与实现;最后以一个实验案例验证了本文所提方法和工具的有效性并最终对本文工作进行总结。论文工作的贡献主要集中在以下方面:(1)分析并总结软件分解的过程和方法,在此基础上针对服务应用场景,提出一个自动遗留系统服务化切分和封装过程的框架;(2)构造一种描述软件行为和依赖关系的图模型,给出一个针对面向对象遗留系统的服务化切分算法;(3)提出基于Java执行码重写技术进行自动服务化封装的方法,并据此实现一个服务化封装工具;(4)最后通过实际的应用案例和实验分析验证了方法的有效性。