With the rise of new software development patterns represented by SOA, SOA software reliability has attracted much attention from both academic and industry communities. SOA software development focuses on architecture design, and it is important for reliability analysis to emphasize software architecture. Existing architecture-based approaches mainly suffer from: 1. They were proposed for component-based software and can’t be applied directly to service-based software; 2. They don’t model usage profile explicitly; 3. It is inconvenient for software developers to use; 4. They don’t take account of the differences between testing profile and practical usage profile. In response to these issues: 1. Reliability factors in SOA are introduced into architecture models; 2. System usage profile is propagated to each service by means of parameter dependency; 3. Architecture and analysis model are built respectively in order to hide complexity of underlying analysis technique; 4. The concept of sub-domain is adopted to allow service developers to test services regardless of practical usage profile. This project is expected to address key issues of SOA software reliability analysis. The goal is to help SOA architects optimize architecture design by means of selecting and assembling service components.
随着以SOA为代表新型软件开发模式兴起,SOA软件可靠性问题引起学术界和工业界广泛关注。SOA软件开发重点在于体系结构设计,所以可靠性分析也需要以体系结构为基础进行。目前提出的基于体系结构的方法主要存在如下问题:1.针对构件软件开发模式,不能直接应用于基于服务的软件;2.没有明确建模使用剖面;3.不方便软件开发者使用;4.没有考虑测试剖面和实际使用剖面的不同。针对上述问题:1.将SOA架构中可靠性相关因素引入到体系结构模型中; 2.采用参数依赖的方法将系统级使用剖面传递给服务组件;3.体系结构模型和分析模型分开建模,对软件开发者隐藏底层分析技术的复杂性;4.引入子域的概念,子域允许开发者在不知道服务将面临使用剖面情况下对服务进行测试。本项目研究将有望解决SOA软件可靠性分析关键问题,帮助SOA软件开发者选择和组装服务组件,优化体系结构设计。
为了解决目前基于体系结构的软件可靠性分析方法存在的问题,我们提出了基于情景的构件软件可靠性分析方法。近几年来,基于情景的方法在软件可靠性分析领域受到越来越多关注,因为情景的概念符合软件测试规范,一个情景对应一个测试用例。在体系结构建模方面,提出两层结构模型描述SOA软件体系结构,第一层为基于UML模型方便软件开发者使用,第二次为形式化模型用来分析软件可靠性。根据体系结构模型中构件间交互关系,提出剖面传递算法将系统级用户输入剖面传递给系统构件,建立构件的实际使用剖面。提出子域的概念实现构件测试剖面到实际运行剖面的映射。基于情景的方法有利于解决可靠性分析中存在的状态空间爆炸问题。SOA软件应用一般只存在有限条执行路径。基于情景的方法根据系统执行路径建立物理状态空间。传统的基于体系结构的可靠性分析方法通常考虑所有硬件资源状态组合,与之相比,基于情景的方法能够有效避免状态空间爆炸,提高软件可靠性分析的效率。.由于SOA软件普遍部署于大规模集群系统中运行。集群系统是一类软件负载共享系统,它们的可靠性主要依赖于系统软件。我们提出一种可靠性分析方法分析冗余集群系统,系统节点包括初始服务节点和冷备份节点。系统可靠性过程建模为基于状态的非齐次Markov过程(NHMP),每个状态对应于一个非齐次泊松过程(NHPP)。NHPP到达速率为软件失效速率。我们用Cox的比例风险模型建模软件失效率,同时考虑软件累积工作负载和瞬时工作负载对软件失效的影响。模型还可以扩展用于考虑重启情况下的集群系统可靠性分析。除了理论方法研究外,我们还采用实验方法研究软件老化问题。通过对不同负载下服务器失效数据收集,采用多元线性回归的方法统计分析,预测软件下一次失效发生时间点,取得了良好的预测效果。
{{i.achievement_title}}
数据更新时间:2023-05-31
服务经济时代新动能将由技术和服务共同驱动
物联网中区块链技术的应用与挑战
面向工件表面缺陷的无监督域适应方法
职场排斥视角下服务破坏动因及机制研究——基于酒店一线服务员工的实证研究
基于LBS的移动定向优惠券策略
基于测试的构件软件系统可靠性评估技术研究
面向SOA软件的蜕变测试技术研究
基于软件体系结构知识的软件架构过程及其关键技术研究
基于SOA的可扩展仿真服务体系结构研究