论文部分内容阅读
随着信息技术的深入发展,软件的需求和外部环境不断发生变化,使得软件必须不断进行动态演化以适应这些变化。由于引起软件动态演化的因素很多,也很复杂,从而使得软件动态演化愈发的困难和难以控制。软件体系结构描述了软件系统的结构组成,从全局的角度考虑了整个生命周期中软件系统的组织构成及元素之间的交互行为,提供了一条有效途径去宏观把握整个软件的结构。为了避免因过早的陷入软件动态演化的细节,从而导致演化的无法控制,因此如何从软件体系结构角度描述软件的动态演化行为已成为了软件演化研究的重要方向。当前的软件体系结构动态演化研究很少考虑组成元素之间的关联关系,也很少考虑软件体系结构的层次关系。本文利用矩阵演算,主要从体系结构组成元素的关联、分层的体系结构角度对软件体系结构动态演化行为进行研究。首先,本文从关联的角度考虑软件体系结构的组成,提出了关联软件体系结构概念,用关联矩阵和关联基数矩阵描述关联软件体系结构及其动态演化的各项需求,提出了一种基于关联矩阵的关联软件体系结构动态演化方法;其次,本文从分层的角度出发,将一个软件系统看成是一个大的构件,其包含多个子构件,用“层”的概念来管理这种软件构成,并且从体系结构的角度来描述这种层次结构,提出了分层软件体系结构概念,同时对于分层软件体系结构中的各个构件之间的包含与被包含关系,通过偏序来描述,定义了相应的偏序矩阵来描述分层软件体系结构及其动态演化的各项需求,提出了一种基于偏序矩阵的分层软件体系结构动态演化方法;接着,本文利用基于关联矩阵的关联软件体系结构动态演化方法和基于偏序矩阵的分层软件体系结构动态演化方法处理实际应用中软件动态演化的不同需求,并且基于这两个方法提出了一个基于矩阵演算的软件体系结构动态演化实现平台;最后,设计一个用户管理系统演化案例,来说明这两个方法描述和实现软件体系结构动态演化的可行性以及实现平台的有效性。本文所有的软件体系结构动态演化行为都是通过矩阵来描述,并且通过矩阵演算来完成,一方面增强了软件体系结构动态演化的可追踪性和可控性;另一方面便于计算机的处理和实现。