Ategra
ATEGRA Software-Entwicklung
News
A+ A- ausdrucken
Software-Qualität

Was unternehmen wir zur Sicherstellung einer hohen Software-Qualität, einer Qualität, die den Kundenanforderungen entspricht?

Was ist Software-Qualität?

Wir unterscheiden zwischen objektiven Kriterien und subjektiven Kriterien: Es gibt messbare Kriterien aber auch Kriterien, die durch Abfrage von Meinungen (User, PrjLtg) gemessen werden können. Es gibt neben der Definition gemäss Standard auch zahlreiche kundenspezifische Definitionen, wie z.B.

  • "Qualität ist was der Kunde unter Qualität versteht"
  • "Qualität ist der Erfüllungsgrad von Anforderungen"
  • "Quality means meeting the customer´s agreed requirements, formal and informal, at lowest cost, first time, every time."
  • "What is software quality? I know it, when I see it!"
Eigenschaften erfolgreicher Software-Projekte

Wenn ein Software-Entwicklungsprojekt erfolgreich war, äussert sich das in folgenden Eigenschaften:

  1. Die Lösung weist einen guten ROI (Return on Investment) auf resp. einen guten betriebswirtschaftlichen Nutzen. Die neue Lösung bringt entweder Einsparungen oder Mehreinnahmen oder beides und amortisiert auf diese Weise die Investition. Einsparungen können sich äussern in Form von weniger Fehlern, schnellerer Bearbeitung u.v.a.m. Es gibt jedoch auch Lösungen, die umgesetzt werden, weil weniger Einnahmen oder höhere Kosten in Zukunft entstehend würden, wenn man die neue Lösung nicht implementieren würde.
  2. Die Lösung ist gut wartbar. Erweiterungen sind zu minimalen Kosten realisierbar. Voraussetzungen dazu sind: Die Lösung hat ein gutes Design, leicht lesbaren Code und eine gute Dokumentation und brauchbare Kommentare im Code.
  3. Die Software ist stabil und robust. In den verschiedenen Tests (Modul-Tests, System-Tests, Anwender-Tests, Sicherheitstests) wurden genügend viel Fehler identifiziert und anschliessend korrigiert. Es darf angenommen werden, dass bloss noch wenige Fehler verbleiben.
  4. Die Anwender sind zufrieden. Dies kann systematisch gemessen werden mit einem Fragebogen und einer ausreichend grossen, statistisch relevanten Stichprobe am besten ausreichend vor und nach Inbetriebnahme oder es kann anhand einer zufälligen Befragung von Einzelpersonen eruiert werden.
  5. Die Software ist bedienerfreundlich. Sie benötigt bloss wenig Lernaufwand, ist einfach und erfordert wenig Support. Die Anwendungssoftware hat ein einheitliches Design. In sich und evtl. auch im Vergleich zu anderen Anwendungen.
  6. Das Kostenbudget wurde eingehalten resp. unterschritten. Die ursprüngliche Aufwandschätzung hat sich als realistisch erwiesen. Es wurden auch nicht im Verlaufe der Realisierung zusätzliche Anforderungen entdeckt, die unbedingt umgesetzt werden müssen und für die zusätzliches Budget notwendig wurde.
  7. Der ursprüngliche oder allenfalls der angepasste Zeitplan wurde eingehalten. Es sind keine Wartefristen für die Kunden entstanden. Es mussten keine zusätzlichen überbrückungslösungen implementiert werden.

Auch dies sind Software-Qualitäts-Kriterien.

Handlungsoptionen

Wir können etwas für Software-Qualität tun in den folgenden Bereichen, Aktivitäten resp. Phasen:

  1. Erstellung Pflichtenheft: ein gutes Pflichtenheft ist vollständig und widerspruchsfrei. Beachten Sie dazu unsere Checkliste.
  2. Datenmodellierung: Ein gutes Datenmodell vereinfacht die Realität, bildet sie aber so gut ab, dass auch zukünftige Fälle lösbar sind.
  3. Design-Reviews: Vor dem Programmieren (Codieren) sitzen Entwickler und Reviewer zusammen, prüfen das Design und verbessern es.
  4. User-Interface-Reviews: Oft kann schon mit wenig Aufwand das User-Interface bedienerfreundlicher, verständlicher und professioneller gestaltet werden. Welche Kriterien dabei berücksichtigt werden finden Sie hier.
  5. Code-Reviews: Nach dem Programmieren erläutert der Entwickler seinen Code dem Reviewer und gemeinsam werden Optimierungen eingebaut.
  6. Tests: Folgende Arten von Tests sollen fallspezifisch durchgeführt werden:
    • Modul-Tests
    • System-Tests
    • Last-Simulationen: Performance-Tests und Optimierungen
    • Security Tests
  7. Prototyping: Wenn die Anforderungen noch nicht von Anfang an klar sind, kann mittels Prototyp eine Konkretisierung der Ideen vorgenommen werden.

Cost Reduction Manager
Erfassen und sammeln Sie Infos über Sparmöglichkeiten in Ihrem Unternehmen Mehr Informationen

Wir suchen motivierte Informatik-Studenten!

ATEGRA hat sich entschieden im Bereich Cloud Computing mit Bull zusammen zu arbeiten. Bull mit 8000 Mitarbeitern weltweit ein bewährter Partner für zuverlässige Infrastruktur. ATEGRA ist für Bull die Expertin für Lotus Domino. Zusammen liefern wir den Kunden Top-Lösungen für Domino in der Cloud. Das Spezielle dabei: Datenhaltung in der Schweiz.

Einige unserer Kunden