论文部分内容阅读
随着软件系统需求的不断变化,软件系统也需要随之更新。对于静态体系结构的软件系统而言,软件扩展、更新和维护需要系统停止运行,这将为软件系统带来高额的代价。在运行时可以动态演化的动态软件体系结构可以减少这种代价。本文设计了一种动态软件体系结构的层次模型,并基于目前广泛应用的J2EE体系结构和轻量级开发的开源框架对模型中各个层进行了实现。论文首先分析了J2EE体系结构在动态演化上的不足,给出动态软件体系结构层次模型的设计目标。然后根据设计目标对层次模型进行设计和实现,并对其中的动态构件描述、系统一致性和访问控制等关键点进行了分析和研究。在此过程中,论文基于化学抽象机对层次模型进行了形式化描述,并借助状态图和迁移矩阵进行可靠性建模分析。为了在J2EE体系结构上实现动态演化,论文在Java虚拟机类加载机制的基础之上自定义了类加载机制并进行了实现。最后,基于本文的动态软件体系结构的层次模型,进行了网络教育平台的开发和测试。