20080708zg sd&m Farshoring muss Softwarequlität ins Visier nehmen

 Home | News | Hefte | Mediadaten | Online-Artikel | Kommentare | Trends | Wir-ueber-uns | Tipps | Impressum | CeBIT 2012

 

Home
News
Trends
Hefte
Online-Artikel
Kommentare
Service-Angebote
Feedback
Abonnement
Wir-ueber-uns
Tipps
Impressum
Veranstaltungen


»manage it« als

E-Paper  5-6 2011
E-Paper  3-4 2011
E-Paper  1-2 2011
E-Paper  11-12 2010
E-Paper  9-10 2010

E-Paper  7-8 2010
E-Paper  5-6 2010
 




 

 


 




 


 


 

 

 

Farshoring muss Softwarequalität ins Visier nehmen

»Wie gesund ist der Patient?«

Der Erfolg von IT-Projekten steht und fällt mit der Softwarequalität. Was auf den ersten Blick selbstverständlich scheint, wird von Unternehmen erstaunlich oft vernachlässigt –  insbesondere vor dem Hintergrund verschärfter Bedingungen für die Softwareentwicklung: Kosten- und Termindruck nehmen zu, Far- und Offshore-Arbeitsweisen bestimmen die Projekte und nicht selten arbeiten Teams auf unterschiedlichen Kontinenten an einer Lösung.

K

apazitäts-, Zeit- und Preisprobleme können mit Offshoring zwar gelöst werden, die Qualitätsfrage bleibt aber unbeantwortet. Statt diese in den Mittelpunkt zu stellen, wird bei verteilter Softwareentwicklung oft ausschließlich auf die Prozesskontrolle geachtet. Geprüft wird: Ist eine Dokumentation vorhanden? Wurden Qualitätsmaßnahmen geplant? Ist das Handbuch aktuell? Ob die interne Codequalität stimmt, wie die Ergebnisse der Komponententests ausgefallen sind oder wie viele Verstöße gegen die Programmiervorgaben erfolgt sind, wird dagegen nicht ermittelt. Doch was nützt es, wenn die formalen Meilensteine erreicht wurden, die Software jedoch Qualitätsmängel aufweist?

Gleichwertige Kontrolle von Prozess- und Produktqualität

Natürlich ist es gerade in Entwicklungsprojekten, die gemeinsam von Onshore-, Near- und Farshore-Teams durchgeführt werden, wichtig, die Prozesse so zu steuern, dass das Projekt reibungslos abläuft und sich jedes Team auf Timings und Absprachen verlassen kann. Dass aber auch bei bewährten Prozessabläufen die Softwarequalität leiden kann, bemerkt man oft zu spät; eine wirkliche inhaltliche Prüfung der Software findet selten statt. Für optimale Projektergebnisse muss die Qualität des Produkts Software sorgfältig geplant und gesteuert werden – und zwar von Beginn des Entwicklungsprozesses an.

Mit Software-Controlling können Qualitätseigenschaften klar geplant und kritische Faktoren und Soll-Werte definiert werden. Durch permanente Prüfschleifen werden Abweichungen rechtzeitig sichtbar und die Entwickler können schnell Gegenmaßnahmen ergreifen. Damit reduzieren sich nicht nur Kosten und Risiken ineffizienter Software, sondern auch Budget- und Terminvereinbarungen können besser eingehalten werden. Gerade in verteilt arbeitenden Teams ist so der Reifegrad der Software ständig transparent. Nicht zuletzt angesichts der Tatsache, dass heute schon 60 bis 70 Prozent aller IT-Budgets für Wartung und Instandhaltung von Software ausgegeben werden, wird die Bedeutung von Software-Controlling offensichtlich. Im Softwareentwicklungsalltag wird die strategische Planung und Steuerung von Softwarequalität allerdings nur selten betrieben – auch weil dafür geeignete Werkzeuge und Standardisierungen fehlen.

Dreistufiges Modell zur Qualitätssteuerung

In Zusammenarbeit mit der Universität Cottbus hat sd&m ein standardisiertes Verfahren für ein aussagekräftiges Software-Controlling entwickelt. Mit Hilfe einer dreistufigen Methodik können Entwicklungsteams die Qualität ihrer Software von Beginn an bewerten und bei Bedarf rechtzeitig gegensteuern.

Im Kern wird die Qualität der Software während des gesamten Entwicklungsprozesses anhand definierter Eigenschaften und Kennzahlen kontrolliert. Hierzu messen Sensoren, die in die Entwicklungsumgebungen integriert werden, permanent Werte auf Komponentenebene. So kann der IT-Architekt zum Beispiel erkennen, wie viele Codeeinheiten und Abhängigkeiten eine Komponente aufweist, wie viele Code-Anomalien vorhanden sind oder wie hoch die Fehlerdichte ist. Zudem kann er zu jedem Zeitpunkt verfolgen, inwieweit die Software bereits mit Testverfahren überprüft wurde und wie es um Antwortzeit, Durchsatz und Aufrufhäufigkeit bestellt ist. In der Gesamtschau geben diese Werte Aufschluss über die Zuverlässigkeit, die Wartbarkeit und die Performance der Software und damit über die Produktqualität.

Neben der Messung von Kennzahlen zu den Produkteigenschaften sind auch weiche Faktoren wie etwa die Einschätzung des Projektteams zu beachten. Diese sollten genauso integriert werden wie Angaben zum Prozessfortschritt. Aus den gewonnenen Werten ergibt sich in der Gesamtschau ein Blutbild der Software. Anhand dieses Blutbilds können Ist-Werte mit Erfahrungswerten verglichen werden, Sollabweichungen werden dadurch sofort sichtbar.

Definierte Prüfpunkte vor kritischen Projektphasen (Quality Gates) geben darüber hinaus Aufschluss über die inhaltliche Reife einer Phase. Erst wenn ein bestimmter Reifegrad erreicht ist, darf die nächste Phase der Softwareentwicklung beginnen. Zusätzlich ergänzen funktionale und nichtfunktionale Test- und Abnahmeverfahren die Qualitätssteuerung.

Bei verteilter Software-Entwicklung ist Software-Controlling ein absolutes Muss. Der Tätigkeitsschwerpunkt des Qualitätsmanagers verschiebt sich von der Verwaltung von Prozessen hin zur Bewertung der inhaltlichen Produktqualität.  Er darf dann nicht mehr nur fragen: »Wurden alle Untersuchungen gemacht?«, sondern auch »Wie gesund ist der Patient?« Erst dann kommen die Preis-, Kapazitäts- und Zeitvorteile der verteilten Softwareentwicklung voll zum Tragen.

Dr. Karl-Heinz Wichert

_____________________________________________________________________

Dr. Karl-Heinz Wichert, Verantwortlicher für das Thema Software-Controlling bei der sd&m AG

 

 

Folgen Sie »manage it«

auf Google+


 


 


 

 

 
Copyright © 2003-2012  ap Verlag GmbH