Treffer: Implizite Entwurfsregeln in Softwaresystemen ; Implicit Design Rules in Software Systems
Technische Universität München
Weitere Informationen
Softwaresysteme werden über ihren Lebenszyklus hinweg immer wieder geändert. Diese Evolution eines Softwaresystems wird meist durch wechselnde Entwicklerteams durchgeführt. Der Quellcode ist für Entwickler dabei die wichtigste Informationsquelle, um ein System zu verstehen. Jedoch unterliegen Systeme impliziten Entwurfsregeln, die daraus nicht hervorgehen. Auch zusätzliche Dokumentation wird häufig nicht konsistent mit den am System durchgeführten Änderungen gehalten. Dadurch driften im Lauf der Softwareevolution die dokumentierte Architektur und der Programmcode auseinander. Dies führt zu einer Verschlechterung der Verständlichkeit von Programmen und damit zu einer Erhöhung der Wartungskosten. In dieser Arbeit werden Methoden und Techniken präsentiert, die Entwurfsregeln explizit erfassen und automatisiert überprüfbar machen. Eine kontinuierliche Überprüfung der Entwurfsregeln beugt Verstößen vor. ; Software systems are modified frequently during their lifecycle to add new functionality. This evolution of a software system is usually achieved by changing developer teams. The source code of a system is the most important source of information for developers who are not familiar with a system. However, the source code underlies a big amount of implicit design rules that cannot be identified in the code. Additional documentation is usually not kept in conformance with the system during the evolution. Thus, the system and its intended design drift apart. This leads to a reduction of the maintainability and comprehendability of a system and raises maintenance costs. This thesis presents methods and techniques that prevent violations of the design principles of a system by making implicit design rules explicit and by continuously checking the conformance of the code with the design rules in an automated manner.