Was taugt der Programmcode?

Der Crash-Report 2014 – Fehler in Business-Anwendungen

Seite: 2/3

Anbieter zum Thema

Nicht so schlecht

Bei der Untersuchung zeigte sich, dass drei Viertel der Anwendungen für die Faktoren Robustheit, Performanz und Sicherheit auf Scores von höher als 3,0 kommen. Die Aspekte Wandelbarkeit und Übertragbarkeit schneiden deutlich schlechter ab, was Cast darauf zurückführt, dass diese zwei Faktoren in der Software-Entwicklung zusätzliche Kosten verursachen, die gescheut werden. Robustheit, Performanz und Sicherheit haben eben Priorität.

Bildergalerie
Bildergalerie mit 8 Bildern

Zwischen den fünf Faktoren ist ein Zusammenhang auffällig, der eigentlich auch zu erwarten ist: Die Verletzung von Regeln guter Softwarearchitektur und -entwicklung führt mit sehr hoher Wahrscheinlichkeit zu weniger sicheren Anwendungen. Hingegen scheint die Performanz mit allen anderen Faktoren wenig zusammenzuhängen, was der herkömmlichen Auffassung widerspricht, dass die Durchsatz-Optimierung alle anderen Qualitätseigenschaften einer Software negativ beeinflusse.

Im Allgemeinen stehen die Qualitätsmerkmale von Anwendungen nicht in Relation zu ihrer Größe. Der Satz „Je größer, desto schlechter“ gilt also nicht – auch nicht im umgekehrten Sinn oder gar mit dem Zusatzattribut exponentiell. Doch bei Java-EE-Anwendungen gibt es eine Korrelation mit Robustheit und bei Cobol-Programmen mit Sicherheit. Beide Male im Sinne von: Je mehr Code, desto schlechter schaut's aus.

Egal, wer entwickelt

Nur bei den Anwendungen, die mit Java-EE geschrieben sind, war die Basis der vorliegenden Detailinformationen groß genug, um statistisch relevant weitere Zusammenhänge zu analysieren. Hier ergab sich, dass es keinen Unterschied macht, ob die Entwicklung firmenintern oder extern erfolgte.

Auch Offshore-Entwicklung zeitigt keine unterschiedliche Qualitätsbenotung. Allerdings erreichten Anwendungen, die für mehr als 5000 User geschrieben waren, höhere Punktzahlen, als Anwendungen für kleinere Nutzerzahlen. Das ist aber laut Cast auch kaum verwunderlich, weil Applikationen für eine breitere Anwenderbasis oft geschäftskritisch sind, weshalb hier an die Entwicklung rigorosere Maßstäbe angelegt werden.

Unternehmen können ihre Software-Entwicklung bewerten lassen. Dafür gibt es „Capability Maturity Model Integration” (CMMI), eine Gruppe von Referenzmodellen, darunter für die Verbesserung der Software-Entwicklung. Andere Standards wie DIN EN ISO 9001, oder ISO/IEC (diverse Normen) sind ähnlich, entsprechen ihm aber nicht genau. CMMI kennt fünf Level von „Initial“ bis „Optimizing“, hier sind jedoch die Level 2 bis 4 (Managed, Defined und Quantitatively Managed) von Interesse.

Artikelfiles und Artikellinks

(ID:42989146)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zur IT-Sicherheit

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung