Softwarequalität projektübergreifend vergleichen: Eine Analyse von Praktiken in der Schweizer Softwareentwicklung

Softwarequalität lässt sich in heterogenen Softwareportfolios kaum objektiv zwischen Projekten vergleichen. Die Arbeit zeigt, wie Qualität stattdessen durch gemeinsame Standards, Metriken, Tools und Trendanalysen organisationsweit gesteuert werden kann.

Softwarequalität projektübergreifend vergleichen: Eine Analyse von Praktiken in der Schweizer Softwareentwicklung

Die Messung der Softwarequalität gewinnt durch die fortlaufende Digitalisierung, sowie stetig wachsende und komplexer werdende Softwareportfolios, an Bedeutung. Softwareprodukte werden kontinuierlich weiterentwickelt und an neue fachliche, technische und regulatorische Anforderungen angepasst, um den Bedürfnissen der Nutzer gerecht zu werden. Hohe Softwarequalität ist zentral dafür, dass Systeme stabil, sicher und gut nutzbar bleiben und weniger Folgekosten entstehen. Viele Unternehmen sind heute zur Erbringung ihrer Leistungen auf Software angewiesen. Diese wird entweder als Standardprodukt lizenziert, an spezifische Bedürfnisse angepasst oder individuell entwickelt. Entwicklung, Weiterentwicklung und Betrieb erfolgen dabei häufig durch spezialisierte Softwareunternehmen. Solche Anbieter führen typischerweise mehrere Produkt- oder Individualsoftwareprojekte parallel und stehen daher vor der Herausforderung, Softwarequalität über verschiedene Projekte hinweg sicherzustellen. Dabei ist eine hohe Softwarequalität für Softwareanbieter zentral, weil sie Mängel, Betriebskosten und spätere Nachbesserungen reduziert.

Forschungsfrage & Ziele

Die Bachelorarbeit untersucht deshalb folgende Forschungsfrage:

Wie lässt sich Softwarequalität in heterogenen Softwareportfolios vergleichbar, effektiv und effizient messen?

Ziel der Arbeit war es, relevante Messwerte, Metriken und KPIs zur Messung von Softwarequalität zu identifizieren, zu strukturieren und zu bewerten. Dabei wurde untersucht, welche davon sich für den Einsatz über mehrere Softwareprojekte hinweg eigneten und unter welchen Bedingungen sie aussagekräftig, vergleichbar, effizient erhebbar und praktisch nutzbar waren. So wurde eine Grundlage geschaffen, um Softwarequalität in heterogenen Softwareprojekten besser einzuordnen und geeignete Metriken auch künftig systematisch beurteilen zu können.

Methode

Zur Beantwortung der Forschungsfrage wurde ein qualitatives Forschungsdesign gewählt. Dieses kombinierte eine strukturierte Literaturarbeit mit semi-strukturierten Experteninterviews. Die Literaturarbeit bildete die theoretische Grundlage zu Softwarequalität, Qualitätsmodellen, Messwerten, Metriken und KPIs. Darauf aufbauend wurden deduktive Kategorien und ein Interviewleitfaden entwickelt. Der praktische Teil bestand aus Interviews mit sieben Fachpersonen aus Schweizer Unternehmen mit eigener Softwareentwicklung. Dabei wurden unterschiedliche Perspektiven berücksichtigt, unter anderem strategische, organisatorische, fachliche, operative und technische Sichtweisen. Die Interviews wurden transkribiert und mittels qualitativer Inhaltsanalyse nach Mayring ausgewertet.

Ergebnisse

Die Ergebnisse zeigen, dass Softwarequalität in der Praxis entlang des gesamten Softwareentwicklungsprozesses gemessen wird. Entsprechend kommen je nach Phase verschiedene Messansätze zum Einsatz, darunter prozessuale
Metriken wie Durchlaufzeiten oder Anzahl Änderungen, statische Codeanalyse etwa zur Identifikation von Code Smells oder Sicherheitslücken, manuelle und automatisierte Tests sowie Kennzahlen wie Fehleranzahl pro Sprint oder Release sowie deren Kritikalität und betriebliche Metriken wie Verfügbarkeit oder Fehlerraten. Als besonders relevante Qualitätsaspekte wurden Funktionalität, Wartbarkeit, Sicherheit und Zuverlässigkeit erkennbar. Agile Vorgehensweisen, regelmässige Releasezyklen, DevOps-Praktiken und automatisierte Prüfungen unterstützen dabei eine kontinuierliche Qualitätssicherung. Gleichzeitig wird deutlich, dass Softwarequalität stark durch kontextspezifische Faktoren wie Anforderungen, Budget, Organisation und die beteiligten Personen beeinflusst wird. Eine projektübergreifende Vergleichbarkeit wird in der Praxis nicht
angestrebt. Stattdessen erfolgt die Steuerung über organisationsweite Standards, Tools und Richtlinien sowie über Trendanalysen innerhalb einzelner Projekte oder auf aggregierter Ebene.

Aus den Ergebnissen lassen sich diese Empfehlungen ableiten: Softwarequalität sollte nicht direkt projektübergreifend verglichen, sondern organisationsweit gesteuert werden. Der Grund dafür ist, dass Projekte sich stark in Anforderungen, Technologien, Ressourcen und Rahmenbedingungen unterscheiden. Sinnvoller sind deshalb eine einheitliche Toollandschaft, gemeinsame Mindeststandards und Metriken, die aus den Zielen der Organisation abgeleitet werden. Besonders empfohlen wird der Einsatz statischer Codeanalyse, da sie automatisiert in Repositories und CI/CD-Pipelines integriert werden kann und technische Qualitätsaspekte wie Wartbarkeit und Sicherheit kontinuierlich überprüfbar macht. Ergänzend können Quality Gates, Security-Scans, Issue-Tracking-Daten und je nach Kontext DORA-Metriken eingesetzt werden, um Qualitätsentwicklung, Stabilität und Lieferfähigkeit sichtbar zu machen. So wird Softwarequalität nicht falsch zwischen Projekten verglichen, sondern effizient, nachvollziehbar und kontextbezogen auf Portfolio- oder Organisationsebene gesteuert.

Aus den Interviews ergeben sich weitere Ansatzpunkte für Forschung und Praxis. Ein wichtiger Bereich ist die frühere Messung von Softwarequalität bereits auf Ebene der Anforderungen und Feature-Ideen. Dabei könnten zu Beginn eines Features konkrete Nutzen-Hypothesen formuliert und nach der Umsetzung anhand von Messwerten und Feedback überprüft werden. Zusätzlich gewinnt der Einsatz von Künstlicher Intelligenz an Bedeutung: Einerseits stellt sich die Frage, wie sich KI-generierte Artefakte auf Wartbarkeit, Sicherheit und funktionale Korrektheit auswirken, andererseits könnte KI selbst zur Qualitätskontrolle beitragen, etwa durch die Analyse von Metriken oder das Erkennen unvollständiger und unscharfer Spezifikationen. Damit bieten sich neue Möglichkeiten, Softwarequalität stärker mit Anforderungen, Entwicklung und messbarer Wirkung zu verbinden.

Fazit

Die Forschungsfrage lässt sich dahingehend beantworten, dass eine projektübergreifende Vergleichbarkeit von Softwarequalität in heterogenen Softwareportfolios weder als sinnvoll erachtet noch in der Praxis umgesetzt wird. Hauptgrund dafür sind die stark variierenden Kontextbedingungen der einzelnen Projekte. Zudem wird ein direkter Vergleich zwischen Projekten oder Teams als kritisch angesehen, da er Fehlinterpretationen und Vertrauensverlust innerhalb der Teams sowie zum Management begünstigen kann. Weiter können Identische Metriken zwar projektübergreifend eingesetzt werden, ermöglichen jedoch
keine objektive Vergleichbarkeit. Eine effektive und effiziente Messung von Softwarequalität ist hingegen möglich, erfolgt jedoch primär kontextbezogen innerhalb einzelner Projekte und wird durch aggregierte Betrachtungen ergänzt. Insgesamt zeigt sich, dass Softwarequalität in heterogenen Portfolios weniger vergleichbar, sondern vielmehr übergreifend steuerbar und im Zeitverlauf analysierbar ist. Metriken sind dabei stets im Kontext organisationsspezifischer Ziele sowie im Zusammenspiel mit Prozessen und kulturellen Faktoren zu interpretieren.