● 摘要
软件可靠性是描述软件系统在规定时间内正确提供用户服务的能力。随着系统规模的日趋庞大以及功能的愈益复杂,如何满足用户对可靠性的需求已成为业界广泛关注的问题。在系统设计阶段,现有建模方法往往以完整的系统设计模型综合满足系统需求,以致于满足可靠性需求的设计被隐藏,进而难以被追踪;此外,可靠性设计方案的多样性导致设计人员在系统质量指标的约束下难以进行抉择。如何基于可靠性策略对软件系统进行“独立”地可靠性设计以及择优选择是本文在系统设计阶段需要解决的一个关键问题;在系统测试阶段,现有测试方法难以支持对可靠性设计的检测,致使在发现可靠性问题时,难以将问题定位在设计模型还是代码实现中,从而不利于问题的修复。如何辅助测试人员检测可靠性设计是否在代码中得以实现是本文在系统测试阶段亟需解决的又一关键问题。针对上述问题,本文从三个方面展开研究工作:
1) 提出一种基于可靠性策略的软件体系结构切面建模方法
本文利用面向切面的建模方法将可靠性策略从系统设计中进行关注点分离,通过定制基于可靠性策略的软件体系结构切面建模语言,实现可靠性策略的“独立”建模以及复用;提出将可靠性策略切面模型与基本模型进行融合的编织算法,实现可靠性策略在基本模型中的实例化。本文通过航空电子系统和船舶控制系统对提出的切面建模方法进行有效性验证,结果表明:该方法能够实现可靠性策略的复用,降低系统设计的复杂性并在一定程度上抑制由于模型变更而造成的涟漪效应。
2) 提出一种基于搜索算法的冗余策略择优配置方法
本文将冗余策略的择优配置问题归结为搜索问题,在给定冗余策略的配置搜索空间中,通过提出的适应度函数权衡系统整体可靠性以及冗余策略配置成本,并指导搜索算法探索指定迭代次数内的近优解决方案。本文通过10个海底油气生产系统对四个搜索算法进行经验性评估。结果表明,该方法能够在不同配置方案中权衡系统整体可靠性以及冗余策略配置成本之间的此消彼长;同时,本文能够辅助设计人员在采用多种搜索算法进行择优配置时评估上述算法在一定规模工业案例中应用的有效性。
3) 提出一种面向可靠性策略的测试场景生成方法
本文利用可靠性策略切面模型与基本模型的关联关系,识别基本模型中与可靠性策略相关的系统动作,链接可靠性策略与基本模型的动作序列,实现面向可靠性策略的测试场景生成。本文以航空电子系统和船舶控制系统为例评估上述方法的有效性,结果表明,该方法能够有效地自动生成面向可靠性策略的测试场景,同时还可以有效地获取由于模型变更所改变的面向可靠性策略的测试场景。
相关内容
相关标签