Software ist ein wesentlicher Bestandteil unseres täglichen Lebens. Mobilität, Energie, Wirtschaft, Produktion und Infrastruktur hängen stark von Software ab, die allerdings nicht immer von hoher Qualität ist. Kritische Probleme, wie Effizienzeinbrüche oder hohe Wartungsaufwände, können durch schlechte Softwarequalität verursacht werden. Beispiele sind vielfältig in der Presse zu finden. Die Qualität software-intensiver Systeme muss nicht nur bei der initialen Entwicklung sichergestellt werden, sondern insbesondere aufrecht erhalten werden bei wiederholten Änderungen des Systems über einen langen Zeitraum hinweg, was als Systemevolution bezeichnet wird. Qualitätseigenschaften hängen stark von Entwurfsentscheidungen bzgl. der Architektur eines Systems ab [Re16]. Um eine hohe Qualität bei der Systemevolution zu gewährleisten, sind Forschung und Praxis an Ansätzen interessiert, mit denen verschiedene Entwurfsalternativen modelliert und analysiert werden können.
Mit diesen Ansätzen können Auswirkungen von Änderungsszenarien auf die Qualitätseigenschaften eines Systems vor deren Umsetzung vorhergesagt werden. Dies wirft interessante Forschungsfragen danach auf, ob Architektur eine geeignete Abstraktion zur Qualitätsanalyse in software-intensiven Systemen ist und wie Sprachen zur Modellierung dieser Systeme und deren Qualitätseigenschaften sowie dazugehörige Analysetechniken so entworfen werden können, dass sie erweiterbar und wiederverwendbar sind, um Evolution zu unterstützen.
Aufbauend auf dem Ansatz "Karlsruhe Architecture Maintainability Prediction" (KAMP) [Ro15] entwickeln wir den Ansatz KAMP4aPS [He18] zur Analyse von Änderungsausbreitung in automatisierten Produktionssystemen. Es werden Modellierungs- und Analysetechniken vorgestellt, die zur Untersuchung von Wartungsaufwänden für elektronische, mechanische und Software-Bestandteile eines automatisierten Produktionssystems auf Architekturebene geeignet sind. Die verschiedenen Ausprägungen von KAMP für Softwaresysteme [Ro15], Geschäftsprozesse [Ro17], PLC-Software [Bu18] und automatisierte Produktionssystemen [He18] werden zu einer Domänen-übergreifenden Methodologie zur Änderungsausbreitungsanalyse verallgemeinert [HBK18]. Darüber hinaus werden Modularisierungskonzepte für Sprachen (definiert durch Metamodelle) und Analysetechniken vorgestellt. Diese führen zur ersten Referenzarchitektur für Metamodelle zur Qualitätsmodellierung und -analyse [HSR19].
«
Software ist ein wesentlicher Bestandteil unseres täglichen Lebens. Mobilität, Energie, Wirtschaft, Produktion und Infrastruktur hängen stark von Software ab, die allerdings nicht immer von hoher Qualität ist. Kritische Probleme, wie Effizienzeinbrüche oder hohe Wartungsaufwände, können durch schlechte Softwarequalität verursacht werden. Beispiele sind vielfältig in der Presse zu finden. Die Qualität software-intensiver Systeme muss nicht nur bei der initialen Entwicklung sichergestellt werden,...
»