Warum ist das Requirements Engineering in ERP-Evaluationen wichtig?

In diesem Artikel gehe ich auf die Bedeutung von Anforderungen bei der Software-Evaluation ein und erläutere, warum die Vernachlässigung des Requirements Engineerings keine kluge Idee ist.

Wie man Software-Anforderungen definiert

Geschäftliche Anforderungen: Die Bedeutung von Geschäftsanforderungen besteht darin, dass sie eine Vision des Endziels vermitteln. Wenn das Ziel vor Augen ist, kann der Anbieter auch Prioritäten setzen. Dabei können diese auch ihr Fachwissen einsetzen, um bessere Lösungen zur Erreichung dieser Ziele anzubieten. Es gibt einen Grund, warum die Geschäftsanalyse bei den meisten Unternehmen in den Entwicklungsprozess einbezogen wird.

Ohne klare Geschäftsanforderungen können schlechte Entscheidungen getroffen werden. Entscheidungen, die die Entwicklung verlangsamen, Fristen stören und zu zusätzlichen Entwicklungsstufen führen.

Software-Anforderungen: Es gibt zwei Arten von Anforderungen: funktionelle und nichtfunktionelle. Einfach ausgedrückt, ist die Unterscheidung wie folgt:

Funktionale Anforderungen sind die, welche Anforderungen - Wozu ist dieses System gedacht? Wie der Name schon sagt, beschreiben sie die Funktionalität der Software.

Nichtfunktionale Anforderungen sind die Wie-Anforderungen - Wie wird dieses System das tun, wofür es entwickelt wurde? Diese Anforderungen beschreiben, wie sich jede Funktion unter welchen Bedingungen verhalten sollte, welche Einschränkungen es geben sollte, und so weiter.

Beides geht Hand in Hand. Nichtfunktionale Anforderungen ergänzen und definieren die funktionalen Anforderungen. Stellen wir uns zum Beispiel vor, wir machen brauchen in der Software eine  Messaging-Funktion.

In diesem Fall wären die wichtigsten funktionalen Anforderungen:

  • Die Software muss in der Lage sein, Nachrichten zu senden.
  • Die Software muss Datei- und Medienübertragungen unterstützen.
  • Etc.

Diese sind ziemlich einfach, und es ist leicht zu verstehen, warum funktionale Anforderungen wichtig sind: Sie umreissen die Funktionalität. In diesem Beispiel könnten die nichtfunktionalen Anforderungen wie folgt lauten:

  • Der Dienst muss in allen gängigen Browsern volle Funktionalität bieten: Microsoft Edge, Google Chrome (neueste zwei Versionen), Mozilla Firefox (neueste zwei Versionen), Opera, Safari (neueste Version).
  • Mobile Layouts müssen unterstützt werden.
  • Etc.

Wie man sieht, handelt es sich bei den funktionalen Anforderungen im Grunde um eine Liste von Funktionen, die in das System aufgenommen werden müssen. Nicht funktionale Anforderungen sind hingegen spezifisch. Sie sind notwendig, um die Entwicklungs- und Testbedingungen zu definieren.

Anforderungen müssen gründlich analysiert und dokumentiert werden. Und warum? Weil so viele Dinge schief gehen können, wenn sie es nicht sind. Lesen Sie in meinem nächsten Blog über das Problem von undokumentierten Anforderungen.

Haben Sie Fragen zum Thema Requirements-Engineering oder allgemein zu Software-Evaluationen? Acreo consulting ag  steht Ihnen gerne zur Verfügung.