Evaluierung von Software-Qualität

Foto von David Travis auf Unsplash

Die Evaluierung von Software-Qualität für eingekaufte Software ist schwierig. Einige Indikatoren gibt es allerdings, die eine Beurteilung ermöglichen.

Die angelegte Qualitäts-Messlatte liegt um so höher, je geringer die Bereitschaft ist, den Risikofall zu tragen. Sind die Kosten eines möglichen Risikos hoch oder gibt es andere Gründe, die Wahrscheinlichkeit für ein unerwartetes Verhalten zu reduzieren, dann lohnt das Investment in eine höhere Qualität.

Das Interessante dabei: Nicht die Hersteller entscheiden, wie viel Qualität es sein darf. Ausschliesslich die Anwender, der Anwendungszweck und die Konsequenzen von unerwartetem Verhalten entscheiden, wie hoch die Qualitäts-Messlatte liegen muss.

Wir fassen Software-Qualität als Funktion von unerwartetem Verhalten auf.

Innerliche Aspekte von Software-Qualität

Die innere Software-Qualität, insbesondere die Code-Qualität, beeinflusst maßgeblich die Lebensdauer und Fehleranfälligkeit einer Anwendung.

Der Software-Lebenszyklus erstreckt sich über Jahre, während die meiste Zeit in Wartung und Weiterentwicklung investiert wird. Regressionsfehler, durch Code-Änderungen verursacht, bedrohen die Stabilität.

Automatisierte Tests sind entscheidend, um den exponentiell wachsenden Testaufwand zu bewältigen. Entkoppelung und Kapselung der Code-Komponenten sind essenziell, um die Wartbarkeit sicherzustellen. Refactoring, das „Putzen“ des Codes, ist wie die Pflege von Wohnungen, um technische Schulden zu vermeiden. Kontinuierliches Refactoring und automatisierte Tests sind Schlüssel für langfristige Softwarequalität. Technische Prinzipien wie das Single-Responsibility-Prinzip sind unerlässlich.

Äusserliche Aspekte der Software-Qualität

Je nach Stakeholder-Gruppe wird der Schwerpunkt von Software-Qualität auf andere Aspekte gelegt. Im Folgenden werden einige Äusserliche Aspekte der Software-Qualität betrachtet. Die Auflistung ist nicht vollständig, gibt jedoch schon einen guten Überblick.

Ein wichtiger Aspekt der Software-Qualität ist für viele Menschen der Funktionsumfang einer Software. Lange Zeit hat man darunter meist den maximal möglichen Funktionsumfang verstanden – dementsprechend waren auch die Auswahlverfahren durch Maximal-Listen geprägt.

Zwischenzeitlich hat sich mehr und mehr die Erkenntnis durchgesetzt, dass die “eierlegende Wollmilchsau” nie benötigt wird und ein unnötig hoher Funktionsumfang sich außerdem negativ auf weitere Aspekte der Software-Qualität (wie z.B. Usability, Performance und Wartbarkeit) auswirken kann.

Software-Qualität: Einfluss auf dein Business

Software-Systeme spielen eine immer größere und wichtigere Rolle in Unternehmen. Deshalb stehen Unternehmen auch immer wieder vor der Aufgabe, die Qualität von Software-Systemen zu bewerten – und zwar sowohl bei der Auswahl neuer Systeme als auch bei der Re-Evaluierung bereits vorhandener Systeme. Bei dieser Bewertung spielt üblicherweise die fachliche Perspektive eine besonders große Rolle – und damit Aspekte wie Funktionsumfang und Benutzerfreundlichkeit des betrachteten Systems. Weitere Aspekte werden oft vernachlässigt – vermutlich deshalb, weil sie den handelnden Personen nicht bekannt oder aber schwer greifbar und bewertbar sind. Im schlechtesten Fall führt das dazu, dass ein Software-System falsch bewertet wird, was bei der zunehmenden Relevanz von Software sehr teuer oder sogar unternehmenskritisch sein kann. Mit diesem Beitrag wollen wir deshalb die verschiedenen Aspekte von Software-Qualität beleuchten und damit die Grundlage für eine umfassendere und objektivere Bewertung von Software-Systemen schaffen.

Digitalisierung für KMU – Teil 4

Ein Szenario als Muster für viele andere: Gute Kundenbetreuung und eine langfristige Kundenbeziehung bedeuten, die Kunden zu kennen. Dieses Wissen haben in vielen Unternehmen noch ausschliesslich die Menschen: Langjährige Mitarbeitende mit immensem Kundenwissen. Geht diese/dieser Mitarbeitende in Pension oder Ferien oder wird krank, ist es um die gute Kundenbetreuung geschehen.

Der digitale Ansatz: Ein CRM (Customer Relation Management) System, in dem jeder Kundenkontakt hinterlegt und dokumentiert ist. Mit dem Firmenwachstum und der Notwendigkeit, ausfallende oder ausscheidende Mitarbeiter zu ersetzen, wird ein professionelles System zur Verwaltung der Kundendaten immer wichtiger.

Digitalisierung für KMU – Teil 3

Ein Szenario als Muster für viele andere: Gute Kundenbetreuung und eine langfristige Kundenbeziehung bedeuten, die Kunden zu kennen. Dieses Wissen haben in vielen Unternehmen noch ausschliesslich die Menschen: Langjährige Mitarbeitende mit immensem Kundenwissen. Geht diese/dieser Mitarbeitende in Pension oder Ferien oder wird krank, ist es um die gute Kundenbetreuung geschehen.

Der digitale Ansatz: Ein CRM (Customer Relation Management) System, in dem jeder Kundenkontakt hinterlegt und dokumentiert ist. Mit dem Firmenwachstum und der Notwendigkeit, ausfallende oder ausscheidende Mitarbeiter zu ersetzen, wird ein professionelles System zur Verwaltung der Kundendaten immer wichtiger.

Digitalisierung für KMU – Teil 2

Anachronistisch organisierte Unternehmen werden kaum die Mitarbeitenden finden, die das Unternehmen nach vorne bringen können.

Mitarbeitende von heute wollen nicht mehr in verstaubten grauen «Cubicles» hocken, den ganzen Tag lang immer wieder dieselben Arbeitsabläufe durchführen und ihre Arbeitsergebnisse über die Abtrennung in den «nächsten Cubicle werfen». Die Mitarbeitenden von heute, oder besser: Die von morgen, die «Digital Natives», suchen nach Sinn stiftenden Jobs.

Sie werden keine Arbeitgeber wählen, die sinnlose und anachronistische analoge Abläufe hegen und pflegen sowie sich vor Neuem und Modernem verschliessen.

Digitalisierung für KMU – Teil 1

Optimierung von Abläufen/Prozesse werden oft mit Digitalisierung in Verbindung gebracht oder sogar gleichgesetzt. Grund genug, um diesem Thema näher auf den Grund zu gehen.

Werfen wir einen Blick darauf, was Digitalisierung beziehungsweise Digitale Transformation für mittelständische Unternehmen im praktischen Einsatz bedeuten kann.

Fun-Fact: Im ursprünglichen Wortsinne bedeutet «Digitalisierung» die Behandlung eines Menschen oder Warmblüters mit Digitalis. Nachzulesen auf Wikipedia. Um diese Bedeutung des Wortes müssen wir uns hier nicht kümmern.

Die ursprüngliche Bedeutung im Zusammenhang mit Computern klingt schon interessanter, nämlich: Die Umwandlung von analogen Daten in digitale Daten

Liquidität sichern

Noch nie war Liquiditätssicherung so akut wie heute. Noch gab es die Situation, dass für viele Unternehmer und Unternehmen von heute auf morgen nahezu sämtliche Einnahmen weggebrochen sind oder dass damit zu rechnen ist, dass dies noch passiert. Noch nie sind Liquiditätsreserven in einer derart atemberaubenden Geschwindigkeit weggeschmolzen.

Kommunikation, Teil 4: Textgliederung

Kontext matters! Wer’s nicht glaubt: Bitte mal nach #grillenundsex recherchieren.

Ein gut verständlicher Text enthält eine Einleitung. Die Einleitung stellt sicher, dass der Leser den folgenden Text in den richtigen Kontext setzen kann. In der Einleitung werden die Empfänger auf das Thema eingestimmt und der folgende Inhalt in den richtigen Kontext gesetzt.