7 Tipps für bessere Software Detail - Computerwelt

Computerwelt: Aktuelle IT-News Österreich


25.09.2010 Andreas Schaffry*

7 Tipps für bessere Software

Fehler bei der Software-Entwicklung vermeidet nur, wer die Anforderungen vorab genau definiert. Forrester nennt sechs weitere Regeln für Entwicklungs-Projekte.

Anwendungsentwickler tun ihr Bestes, um Fehler und Bugs in Software-Programmen zu vermeiden beziehungswese schnell durch einen Bugfix zu beheben. Doch die Entwicklung von Software in hoher Qualität, die Geschäftsanforderungen erfüllt, anwenderfreundlich ist und kaum Defekte hat, ist ein hartes Brot. Warum? Das Business gibt immer engere Zeitfenster für die Entwicklung und Anpassung von Applikationen vor. Das hindert Entwickler daran, voll ausgereifte und qualitätsgesicherte Programme zu schreiben.

Die Qualitätsfrage ist jedoch ein integraler Bestandteil des gesamten Software-Entwicklungszyklus, vom ersten Entwurf bis zur Implementierung. Die Marktforscher von Forrester zeigen Entwicklern in dem Bericht "Seven Pragmatic Practices To Improve Software Quality" sieben Methoden auf, um die Qualität ihrer Anwendungs-Programme zu erhöhen.

1. Qualität richtig definieren Applikationen müssen nicht perfekt sein, aber sie müssen Geschäftsprozesse bestmöglich und ohne Risiko unterstützen. Deswegen kann die Definition der Qualität von Anwendungen zu Anwendung unterschiedlich sein. Vor Projektbeginn müssen alle Beteiligten ins Boot geholt werden, um die Anforderungen exakt zu definieren. Auch Restriktionen in Bezug auf die Projektlaufzeit, das Budget und personelle Ressourcen sind hier zu klären. Das schiebt einer unrealistischen und perfektionistischen Erwartungshaltung den Riegel vor.

2. Qualitätsmetriken einfach halten Die Kriterien, an denen die Qualität gemessen wird, müssen so komplex wie nötig und so einfach wie möglich sein, um Fortschritte und Verbesserungen im Entwicklungsprozess jederzeit nachvollziehen zu können. Einfache Metriken sind zum Beispiel die Gesamtzahl defekter Software-Bausteine oder defekte Bausteine und Schwere der Defekte pro Entwicklungsphase. Auf diese Weise wird für alle Beteiligten die Qualität zu einem bestimmten Entwicklungszeitpunkt transparent. Das verringert die Anzahl der Defekte.

3. Entwicklerteams richtig zusammenstellen Entwicklerteams müssen umsichtig zusammengestellt werden. Nötig ist auch eine für alle Beteiligten verbindliche Zielvereinbarung im Hinblick auf die zu erreichende Software-Qualität. Zugleich sollten Fortschritte einfach messbar und transparent darzustellen sein. So wissen alle Team-Mitglieder, wann der Ball im Netz ist und wann nicht.

4. Anforderungen genau bestimmen Schon in der Requirements-Phase sollten Anforderungen möglichst exakt erhoben und analysiert werden. Dadurch lässt sich vermeiden, dass das Business während der Entwicklung ständig die Anforderungen ändert. Die Anwender profitieren so von einer klaren Anwendungs-Architektur mit stabilem Code. Darüber hinaus ist weniger Software-Testing erforderlich.

5. Schlau testen, Zeit sparen Die Testfälle sollen sich daran orientieren, wie kritisch eine Anwendung für das Business ist. So lassen sich die meisten Bugs erwischen und die Zahl der Defekte verringern. In der Praxis jedoch testen Unternehmen häufig ziel- und planlos und verschwenden unnötig Ressourcen. Dadurch werden die richtigen und wirklich wichtigen Testfälle nicht gefunden und durchgeführt.

6. Das Design muss stimmen Schon das Design einer Anwendung muss stimmen, sonst gibt es im späteren Entwicklungsprozess Probleme mit der Architektur. Außerdem können sich mehr Defekte einschleichen. Wichtig sind möglichst einfache und klare Designprinzipien. Das führt zu einfacheren und klaren Codezeilen, verringert den Testaufwand und reduziert Defekte.

7. Tests optimieren und automatisieren Durch die Automatisierung von Testfällen lassen sich manuelle und zeitaufwendige Tests vermeiden und die Entwicklungskosten verringern. Zugleich steigt die Genauigkeit der Tests, und Risiken werden minimiert. Durch die Automatisierung lassen sich auch Testzyklen effizienter planen und Testanforderungen priorisieren. Nicht zuletzt kann im Rahmen des Test-Managements festgelegt werden, was automatisch getestet werden kann oder muss.

* Der Autor ist Redakteur des deutschen CIO.

Diesen Artikel

Bewertung:

Übermittlung Ihrer Stimme...
Noch nicht bewertet. Seien Sie der Erste, der diesen Artikel bewertet!
Klicken Sie auf den Bewertungsbalken, um diesen Artikel zu bewerten.
  Sponsored Links:

IT-News täglich per Newsletter

E-Mail:
Weitere CW-Newsletter

CW Premium Zugang

Whitepaper und Printausgabe lesen.  

kostenlos registrieren

Aktuelle Praxisreports

(c) FotoliaHunderte Berichte über IKT Projekte aus Österreich. Suchen Sie nach Unternehmen oder Lösungen.

Zum Thema

  • customer care solutions - Call Center Betriebs GmbH

    customer care solutions - Call Center Betriebs GmbH B2C Dienste und Lösungen, B2B Dienste und Lösungen, User Helpdesk-Systeme und Hotlines, Systempflege- und Wartung, Outsourcing, IKT-Consulting, Facility Management,... mehr
  • Editel Austria GmbH

    Editel Austria GmbH Supply Chain Management, E-Procurement und Supply Chain Management, Datenkonvertierung, Überwachungssysteme, Trust Center/Zertifizierungssoftware, Digitale Signatur, Datensicherung,... mehr
  • eyepin GmbH

    eyepin GmbH Application Service Providing, Auftragsentwicklung für Software, Individual-Softwareentwicklung, Programmierung, Übernahme von Softwareprojekten mehr
  • T-Systems Austria GesmbH

    T-Systems Austria GesmbH WLAN-Systeme, VPN, Voice Mail Dienste, Videokonferenz-Systeme, Unified Messaging Dienste, Netzwerk-Systeme (LAN, MAN, WAN), Netzwerk-Management,... mehr

Hosted by:    Security Monitoring by: