论文部分内容阅读
随着云计算的不断发展,出现了有别于传统的软件模式。SaaS软件不仅改变了传统软件的商业模式,还改变了人们使用软件的方式。SaaS软件要求服务提供商随时随地按需为用户提供服务,停机状态下的静态演化方式将会对用户产生影响使得服务提供商承受经济损失。因此,SaaS软件对于动态演化的需求显得尤为迫切。文本旨在提出一种基于云管程机制的SaaS软件动态演化方法。首先对当前研究背景和国内外的研究现状进行了综述并介绍了本文的相关工作。然后根据SaaS软件可配置、多租户、可伸缩特点,提出了 SaaS软件的结构模型——SaaS软件元模型。它支持SaaS软件成熟度模型,能够建模任何成熟度等级的SaaS软件。SaaS软件元模型分为多个层次:应用层、软件实例层、租户层、表示层、云管程层、服务实体层。文中对SaaS软件元模型进行了形式化定义,并对每个成熟度等级的表示情况进行了讨论。之后以SaaS软件元模型为视图,提出云管程机制的动态演化方法。因为云管程层是SaaS软件功能的实现和执行层,所以SaaS软件的动态演化工作目标定位在云管程层。云管程是为SaaS 软件提供普适性支持和保证动态演化正确实施的特殊服务。这部分先对云管程的结构和功能进行了定义,然后根据不同的演化阶段制定演化规则。云管程机制的动态演化过程类似于操作系统中的进程切换,使用保护现场和跳转的方式换取执行过程的逻辑连续性。然后根据云管程层中的基本Petri网结构云服务网的不同结构,提出了适用于不同的结构的动态演化算法。顺序结构包括了服务的添加、删除和替换操作算法,它是其他所有结构的基础。在选择结构中提出分叉库所和汇合库所,并对这两种特殊结构的演化情况进行讨论。并发结构演化实施情况与前两种结构的类似。最后本文作者开发实现了支持云管程机制的工具CloudMonitor,它能够对SaaS软件云服务网的基本Petri网结构执行动态演化。以一个CRM系统为例进行案例分析。首先建立了这个CRM的结构模型,然后根据几个演化需求使用CloudMonitor工具对需要演化的云服网执行动态演化,并对执行结果进行分析,验证本文方法的可行性。