© Excellent backgrounds/Shutterstock.com
Teil 1: Qualitätsmerkmale von Websystemen

Qualität von Websites fassbar machen


Schnelle und schöne Websites sind heute die Regel. Auf den Schultern der Riesen moderner Frontend-Technologien lassen sich höchst ergonomische und hübsch anzusehende Oberflächen herstellen. Das Fach hat sich daran gewöhnt: Wird ein neues System bestellt, so soll es selbstverständlich flott, sicher und attraktiv sein, zusätzlich auch auf dem Tablet oder dem Smartphone, das erst kommenden Monat in den Handel kommt.

Dass schnelle, sichere, geräteunabhängige und schöne Websysteme aber nicht einfach zu entwickeln sind, sondern Investitionen benötigen, ist dabei nicht jedem klar. Der Aufwand, der betrieben werden muss, lässt sich hinter der adretten Oberfläche nur erahnen. Tatsächlich zeigt sich, dass die gewünschten Eigenschaften aber Kostentreiber in der Entwicklung und im Betrieb sind: Möchte man ein schnelles System, so muss gegebenenfalls ein Content Delivery Network her, damit der Content auch weltweit schnell geliefert werden kann. Ein sicheres System sollte auditiert und im Labor angegriffen werden, um Schwachstellen zu finden. Ein schönes System braucht ein gut gemachtes Design in Kombination mit durchdachter Bedienbarkeit, und hier sind Design- und Usability-Experten nötig. Diese Liste ließe sich endlos fortführen, und die Kosten summieren sich, sodass es geraten erscheint, nur auf die Qualitätsmerkmale Wert zu legen, die für das vorliegende System wichtig sind.

Aber welche Merkmale gibt es überhaupt, und welche davon sind für mich wichtig? Und wie kann ich dem Auftraggeber den Zusammenhang zwischen Qualität und den Kosten am besten erklären? Diese Wechselwirkung und die griffige Beschreibung von Qualität ist das Thema dieser neuen Artikelserie.

Qualitätsmerkmale

Ein Qualitätsmerkmal ist eine Eigenschaft eines Softwaresystems. Merkmale werden auch nicht funktionale Anforderungen genannt, um sie von den funktionalen Anforderungen zu unterscheiden. Funktionale Anforderungen beschreiben, was ein System tun soll; ein Qualitätsmerkmal hingegen beschreibt eine gewünschte Eigenschaft des Systems, die messbar und/oder testbar sein sollte (wie schnell, wie sicher etc.). Es gibt verschiedene Qualitätsmodelle, welche die Merkmale gliedern und hierarchisch anordnen, d. h., Merkmale können Submerkmale haben. Ein paar Beispiele für Qualitätsmerkmale sind:

Die Wartbarkeit beschreibt die Anpassbarkeit einer Software über ihren Lebenszyklus. Sie beeinflusst die Kosten von Änderungen am System. Websysteme sollten sich leicht ändern lassen, da sie oft von Marketing­anforderungen getrieben werden, die wechselhaft sind, da sich Märkte, bzw. der Wunsch nach ihrer Bewirtschaftung, beständig wandeln. Deswegen ist eine hohe Wartbarkeit für Websysteme von entscheidender Bedeutung, denn wir gehen davon aus, dass sich ein solches System innerhalb einer nützlichen Frist und zu vertretbaren Kosten anpassen lassen muss, ansonsten wird es ersetzt. Die Wartbarkeit lässt sich beispielsweise analysieren nach Prüfbarkeit, Änderbarkeit, Analysierbarkeit, Testbarkeit oder auch Flexibilität.

Die Performance beschreibt die Sparsamkeit in Bezug auf Rechenzeit und Speicherplatz einer Software (Effizienz), deren Dynamik (ob sich die Performance im Laufe der Zeit verändern soll), sowie das Antwortverhalten des Systems (das insbesondere bei Webanwendungen aufgrund der geografischen Verteilung wichtig ist). Im Allgemeinen ist die Performance neben der Verfügbarkeit für viele Stakeholder das wichtigste Thema, auch weil sie diese im Browser selbst sehr gut beurteilen können. Lädt eine Webseite zu langsam, so sinken Besucherzahlen und der Page Rank bei Google. Stellt man hingegen zu viel Kapazität zur Verfügung, so sind die Kosten im Betrieb unverantwortlich. Eine korrekte Erfassung der Performance ist also wichtig. Die Performance lässt sich nach Kapazität, Latenz oder Skalierbarkeit analysieren.

Die Sicherheit eines Systems beschreibt, wie es die legitimen Interessen Dritter vertreten soll. Speichert ein System personenbezogene Daten, so haben diese Personen ein Interesse daran, dass diese Daten nicht missbraucht werden, und wir müssen sie entsprechend schützen. Die Sicherheit eines Systems zu beschreiben, bedeutet also, sich darüber klar zu werden, welche Arten von Daten verarbeitet werden, wer auf diese Daten Zugriff erhält und wie sie manipuliert werden dürfen. Im Allgemeinen wird Sicherheit nach den drei Faktoren Vertraulichkeit, Verfügbarkeit und Integrität analysiert.

Die Portierbarkeit beschreibt die möglichen Umgebungen, auf denen die Software betrieben werden soll. In der Webentwicklung wird die Portierbarkeit gerne übersehen. Man meint, dass die Software nur auf einem Webserver laufen muss. Dies ist aber nicht der Fall, denn in den meisten Fällen ist die Entwicklungsumgebung verschieden von der Test- und Produktionsumgebung, sodass die Software in Wahrheit auf drei verschiedene Umgebungen portiert werden muss. Ebenfalls steht nicht immer fest, wer das System später installieren und welche Kompetenzen diese Personen haben soll. Hinzu kommt ein Zoo an verschiedensten Browsern auf unterschiedlichsten Endgeräten, von denen aus das System bedienbar sein muss. Zur Portierbarkeit gehören also neben der Geräteunabhängigkeit auch die Installierbarkeit.

Unter Transparenz fasse ich die Anforderungen an die Sichtbarkeit eines Systems zusammen. Da Software unsichtbar ist und Werkzeuge zur Beobachtung manchmal selbst hergestellt werden müssen, lauern hier versteckte Kosten, die es im Vorfeld zu klären gibt. So möchte der Betrieb die Last auf den Maschinen beobachten können: Es soll rechtzeitig Alarm geschlagen werden, bevor die Platte voll läuft. Oft sind hier schon Werkzeuge wie Nagios im Einsatz, die aber auch integriert werden möchten. Im Marketing und der Redaktion sind ...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang