针对自愈软件系统功能层与自愈层交织带来的设计复杂性问题，提出系统横向模型驱动设计思想，给出一种以故障模型为中心的系统设计与实现方法。该方法能够将系统功能层与自愈层隔离，使它们的设计与实现相对独立，根据系统特点在不同阶段通过故障模型加以耦合，这种松耦合方式有利于降低系统整体设计的复杂性，提高可配置性、可重用性以及可维护性。通过一个具有自愈特性的捷联惯性导航系统仿真软件的设计与实现，验证了该设计思想与方法的可行性和有效性。
自愈软件系统 模型驱动方法 故障模型 面向方面设计 面向方面编程