© Excellent backgrounds/Shutterstock.com
Teil 5: Analysierbarkeit

Fundierte Entscheidungen treffen können


Stefan Zörner hat mir einmal gesagt, seine Lieblingsdefinition von Softwarearchitektur sei eine Kette von Entscheidungen, die man nur noch schwer rückgängig machen könnte. Es gibt noch andere gute Definitionen, und das Software Engineering Institute (SEI) hat hiervon Hunderte gesammelt [1], aber das Fällen von Entscheidungen ist zweifelsohne ein sehr wichtiger Aspekt. Die Analysierbarkeit bestimmt dabei, wie gut sich die Auswirkungen unserer Entscheidungen auf das System vorhersagen lassen.

Die Analysierbarkeit wird als Whitebox-Eigenschaft während der Entwicklungszeit eines Systems definiert. Sie bestimmt dabei unter anderem, wie das System zur Laufzeit als Blackbox geprüft werden kann. Das Qualitätsmerkmal der Prüfbarkeit behandeln wir erst im kommenden Artikel. An dieser Stelle geht es also um das Innenleben eines Systems. Hierzu gehören Codequalität, Tests, Dokumentation usw.

Nur analysierbare Software lässt sich diszipliniert und quantifiziert verändern. Das Qualitätsmerkmal der Analysierbarkeit bestimmt dabei, wie gut sich Auswirkungen einer Änderung an einem System vorhersagen lassen. Wenn sich ein System schwer analysieren lässt, sind Prognosen über zu erwartende Kosten oder Durchlaufzeit riskant. Unter Umständen entsteht Volatilität in der Planung, die sich negativ auf das Team und die Kundenbeziehung auswirken kann. Die Analysierbarkeit wird insbesondere wichtig, wenn Personen ein System noch nicht genau kennen, aber Entscheidungen über das System treffen müssen, beispielsweise beim Umsetzen einer Änderung. Die Analysierbarkeit ist also für die Einarbeitung neuer Entwickler, aber auch im Projektmanagement und am Service-Desk von tragender Bedeutung: Bug oder Feature, das ist hier die Frage!

Klassifikation

Die Analysierbarkeit gehört nach ISO/IEC 25010 [2] zur Wartbarkeit. Stefan Toth hat in seinem Buch [3] die Qualitätsmerkmale klassifiziert nach Akzeptanzkriterien, Qualitätsgeschichten und allgemeinen Merkern. Die Analysierbarkeit ist ein allgemeiner Merker, der während der ganzen Entwicklung präsent sein sollte und regelmäßig Arbeitspakete auslöst. Die Einordnung in das Qualitätsmodell für Websysteme zeigt Abbildung 1.

takai_analysierbarkeit_1.tif_fmt1.jpgAbb. 1: Qualitätsmodell der Wartbarkeit

Um zu verdeutlichen, in welchen Bereichen die Analysierbarkeit wesentlich ist, lohnt es sich, die unterschiedlichen Typen von Wartung zu klassifizieren. Die Klassifikation von Lientz und Swanson [4] kann als Bemessungsgrundlage für Wartungsverträge genutzt werden:

  • Corrective Maintenanc...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang