 |
äußere Faktoren Unter den
äußeren Faktoren werden alle die Qualitätsparameter verstanden, die dem
Nutzer der Software direkt gegenübertreten:
- Benutzerfreundlichkeit: die Eigenschaft von Software, dem Anwender die
Benutzung ohne großen Einarbeitungsaufwand zu gestatten und
Bedienungsfehler abzufangen.
- Korrektheit: die Fähigkeit von Softwareprodukten, ihre Aufgaben exakt
so zu erfüllen, wie sie durch die Anforderungen und Spezifikationen
definiert sind.
- Robustheit: die Fähigkeit von Software, auch unter außergewöhnlichen
Bedingungen zu funktionieren (Man kann gar nicht so dumm denken wie
mancher Anwender handelt!!!).
- Erweiterbarkeit: die Leichtigkeit, mit der Software an
Spezifikationsänderungen angepasst werden kann.
- Kompatibilität: das Maß der Leichtigkeit, mit der Software mit anderen
Produkten verbunden werden kann.
- Integrität: die Fähigkeit von Software, ihre verschiedenen Komponenten
(Programme, Daten) gegen unberechtigten Zugriff und Veränderungen zu
schützen.
|
 |
innere Faktoren Unter den
inneren Faktoren werden alle die Qualitätsparameter verstanden, die dem
Nutzer der Software nicht direkt gegenübertreten sondern automatisch durch
das Programmierwerkzeug oder durch spezifische Maßnahmen des Programmierers
gesichert werden müssen :
- Effizienz: die Eigenschaft, die die ökonomische Nutzung von
Hardware-Ressourcen („low–level”–Effizienz) oder von Ressourcen der Nutzer
(Arbeitszeit, ...) charakterisiert.
- Modularität: die Eigenschaft von Software aus einzelne Bausteinen
aufgebaut zu sein. Zur genaueren Begriffsbestimmung werden üblicherweise
fünf Kriterien für Modularität genannt (Zerlegbarkeit, Kombinierbarkeit,
Verständlichkeit, Stetigkeit, Geschütztheit)
- Zerlegbarkeit – die einzelnen Module werden aus der Zerlegung des
konkreten Problems abgeleitet und sind spezifisch für die Lösung der
Teilaufgabe zugeschnitten (Gegensatz zur Kombinierbarkeit)
- Kombinierbarkeit – Herstellung von Modulen, die zur Erzeugung neuer
Software beliebig miteinander kombiniert werden können.
- Verständlichkeit – die Eigenschaft der Module, für den Anwender
verständlich zu sein (d.h. Durchschaubarkeit des Moduls und dessen
Zusammenspiel mit anderen Modulen).
- Stetigkeit – die Eigenschaft von Software, dass bei kleinen Änderungen
in der Problemstellung nur wenige Module geändert werden müssen.
- Geschütztheit – die Eigenschaft von Software, dass Auswirkungen einer
zur Laufzeit in einem Modul auftretenden Ausnahmesituation auf das
entsprechende Modul begrenzt bleibt.
- Portabilität: die Fähigkeit von Software auf verschiedenste Hardware–
und Software–Umgebungen übertragen werden zu können.
- Wiederverwendbarkeit: die Eigenschaft von Software, ganz oder
teilweise für neue Anwendungen wiederverwendet werden zu können.
Ausgehend von diesem breiten Spektrum von Anforderungen an Software,
ergibt sich die Frage, welche Programmiertechnik besonders geeignet ist,
diese Bedingungen zu erfüllen.
In Beantwortung dieser Fragestellung bildeten sich in der
Softwaretechnologie Strömungen heraus, die auf unterschiedlichen Wegen zum
objektorientierten Entwurf und zur Entwicklung objektorientierter
Programmiersprachen führten. |