MR4UM: A framework for adding fault tolerance to UML state diagrams Modern systems often need to address the challenges brought about by a changing environment and/or newly identified faults. The economic and practical issues dictate that the existing models and/or programs be reused while providing tolerance in the presence of faults.par In this paper, we propose a framework, namely MR4UM, for applying model revision for the existing program design modeled in a UML state diagram to add tolerance to newly identified faults. In particular, MR4UM starts with program design modeled in a UML state diagram, and automatically transforms the design model in the UML state diagram to the corresponding program actions in the underlying computational model (UCM). Then, MR4UM applies the techniques of model revision to the program in the UCM and generates a fault-tolerant program in the UCM. Finally, MR4UM automatically converts the fault-tolerant program in the UCM into a fault-tolerant program design in the UML state diagram. We illustrate the stepwise procedure of MR4UM with two case studies: the adaptive cruise control program from an automotive system and the altitude switch program from an aircraft altitude control system.

This software is also peer reviewed by journal TOMS.