论文部分内容阅读
随着Internet和新兴软件技术的发展,软件系统的规模和复杂程度不断增大,人们对软件系统的体系结构提出了许多新的要求,特别是体系结构的适应性在系统开发中占据了越来越重要的地位。然而目前软件体系结构中的非功能属性影响了软件系统的结构和行为,给软件生存环境变化所引起的系统适应性调整带来了困难。针对上述问题,本文在软件体系结构领域应用了面向方面编程技术。面向方面编程技术能够很好地分离系统中的关注点,有效地处理由于横切属性所引起的代码混乱和代码分散问题,有助于更好地分析和理解系统,增强系统的适应性。首先,本文分析了软件体系结构及其适应性,以及生存环境对它的重要性,提出了将面向方面编程技术应用到软件体系结构连接件中,从而为提高软件体系结构的适应性开辟新途径。其次,本文将软件体系结构中具有横切属性的非功能需求提取出来,封装实现为与构件同等地位的第一类实体——方面,并给出方面连接件的概念,利用面向方面编程中的切入点和通知概念,对系统构件和方面的交互进行处理。这既有利于降低构件间交互的复杂性和依赖性,增强构件的重用性和重配置能力,又有助于提高软件体系结构的适应性。再次,引入面向方面思想后,形成了以方面连接件为中心的构件、方面、方面连接件和配置的软件体系结构新格局,然后用统一建模语言建立方面连接件模型,并对体系结构描述语言进行扩展,扩展后的体系结构描述语言增强了对非功能属性和方面连接件的描述能力。最后,本文在分析基于构件软件开发和面向方面软件开发两种重要软件工程开发方法的基础上,结合二者的优点,在建立基于方面连接件软件体系结构的同时,探讨了如何从软件生存环境入手建造适应性软件系统的过程和方法。