Refactoring ist eine Technik zur verhaltensinvarianten Restrukturierung von Programmcode mit dem Ziel der Verbesserung dessen Qualität. Diese Arbeit überträgt am Beispiel der Modellierungssprache AutoFocus die Refactoring-Technik auf die Ebene von Entwurfsmodellen Reaktiver Systeme unter Verwendung eines formalen Verhaltensäquivalenzbegriffs. Für gezeitete Modelle wird ein Äquivalenzbegriff für Schnittstellenverhalten unter Zeitabstraktion festgelegt. Die Eignung von zeitsynchronen und zeitasynchronen Semantiken für das Refactoring wird betrachtet. Die Eigenschaft der Zeitrobustheit zeitsynchroner Modelle, die die Möglichkeiten der Durchführung von Refactorings begünstigt, wird identifiziert und auf Basis dieser Eigenschaft wird eine Semantik konstruiert, die weitgehendes Modell-Refactoring unterstützt. Für AutoFocus Systemstrukturdiagramme und Zustandsübergangsdiagramme werden Refactorings definiert, deren Verhaltensinvarianz nachgewiesen wird. Diese Refactorings ermöglichen weitgehende Architekturveränderungen bestehender Softwaresysteme. Darüber hinaus wird die Modell-Refactoring-Technik in einen modellbasierten iterativen Entwicklungsprozess integriert.
«