论文部分内容阅读
SaaS(软件即服务)是通过互联网提供软件。与传统软件模式不同,使用SaaS模式的软件不需要购买软件产品并将其安装在个人电脑上。SaaS软件呈指数级增长,越来越多的各种规模企事业采用 SaaS模式软件,以此改进性能和节约成本。因此这类应用是一种比软件永久授权模式更具吸引力的经济模式。自主计算的目标就是开发能够基于人类的高层次指导而实现自我管理的应用软件系统。关于 SaaS应用软件进化和服务质量改进自治算法的研究一直存有诸多挑战。 本文为了实现SaaS应用软件的自主管理与进化,提出SaaS应用软件元模型。该元模型阐述了SaaS应用软件的多层系统结构,从底至上分别为:数据库层、服务层、业务流程层和用户界面。从 SaaS应用软件供户、租户和用户的角度,描述了各层组成要素之间的关联与依赖关系。 为了使SaaS应用软件能够动态适应SaaS供户、租户和用户需求的不断变化,针对SaaS应用软件不同层次的服务适用性需求和QoS管理需求,利用PCTL(Probabilistic Computation Tree Logic)和CSL(Continuous Stochastic Logic)描述语言进行了形式定义和描述,并提出离散 SaaS用户-租户-供户模型(DSUTP)和连续 SaaS用户-租户-供户模型(CSUTP)两种质量评价模型,用于分析和评价SaaS应用软件。 基于SaaS应用软件元模型和模型,提出SaaS应用软件QoS管理自治算法AAQS,以此改善SaaS应用软件服务质量。算法能够对SaaS应用软件QoS违背情况进行监测和预测。通过实践验证和系统分析对AAQS算法进行了评价。 为了增强SaaS应用软件的进化能力,提出SaaS应用软件自主进化算法(AAES)。结合元启发式方法和基于案例推理方法,研究基于SaaS案例推理的SaaS程序选择方法SaaSCBR。SaaSCBR基于最佳实践案例选择合适SaaS应用软件。实验结果表明,通过选择适合SaaS供户、租户和用户的SaaS应用软件案例,AAES算法改善了SaaS应用软件性能。 最后,结合SaaS QoS管理和进化方法,提出SaaS系统的自主管理算法(AASS),实现 SaaS系统的自主管理和进化。研发了基于 SaaS的EHR系统SaaSEHR,用于自治 SaaS系统的实际案例分析。SaaSEHR利用先验和后验知识,实现自主进化。实验结果表明,通过选取适合SaaS租户和用户的SaaS服务,AASS能够提升 SaaS系统的自我优化和自我治愈能力,增强了SaaS系统对环境和需求变化的适应性。而且,通过 SaaS租户和用户业务流程共享,改善了SaaS系统的性能和控制SaaS服务的能力。