Wie entstehen Informationssysteme?
Neu-Ulm University of Applied Sciences
15. August 2025
We‘ve minimized the economic impact of the defects of the system via an advanced business process called ‘hoping nobody notices’. Dilbert, merican comic strip written and illustrated by Scott Adams
As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications. David Parnas, early pioneer of software engineering and professor of computer science
Nach dieser Einheit
Für viele Bereiche sind Anwendungen am Markt erhältlich, mit der die fachlichen Anforderungen vieler Unternehmen abgedeckt werden können — sogenannte Standardsoftware (Mertens et al., 2016).
Sind die Anforderungen des Unternehmens sehr spezifisch, so muss die Standardsoftware modifiziert bzw. erweitert werden.
Ist das nicht möglich, ist die Entwicklung eines unternehmensspezifischen Anwendungssystems erforderlich — sogenannte Individualsoftware (Mertens et al., 2016).
Der Lebenszyklus von betrieblichen Anwendungssystemen überspannt den Zeitraum zwischen der ursprünglichen Idee über die Entwicklung und Einführung, sowie die Wartung und evtl. Weiterentwicklung bis hin zur Ablösung (Krcmar, 2015).
Angesichts der relativ langen Lebensdauer von betrieblichen Anwendungen muss der Lebenszyklus systematisch gesteuert werden.
Der Anwendungslebenszyklus wird im Allgemeinen in sechs Phasen unterteilt: Entwicklung, Einführung, Wachstum,Sättigung/Reife, Rückgang und Abschaffung (Heinrich & Lehner, 2005).
Vor der Auswahl einer Standardsoftware bzw. der Entwicklung einer Individualsoftware sowie deren Einführung eines Systems müssen die Anforderungen unternehmensspezifisch erhoben werden (Krcmar, 2015).
Informationssysteme sind soziotechnische Systeme. Deshalb müssen neben den technischen Anforderungen auch Anforderungen an die nicht-technischen Komponenten formuliert werden (insbesondere die zu gestaltenden Prozesse).
Das Anforderungsmanagement ist eine systematische Vorgehensweise, um alle relevanten Anforderungen zu ermitteln, zu analysieren, zu vereinbaren, zu spezifizieren, zu validieren, im Projekt zu verfolgen und gegebenenfalls zu ändern (Ebert, 2019).
Die Anforderungen an ein zu entwickelndes System können in funktionale und nichtfunktionale Anforderungen unterschieden werden.
Die Form der Beschreibung wird mit zunehmendem Detaillierungsgrad immer formaler bis hin zu einer detaillierten technischen Spezifikation (Modelle).
Der Erfolg einer Anwendungsentwicklung hängt wesentlich davon ab, wie gut die einzelnen Schritte des Projektes geplant, wie gut Probleme vorhergesehen und mögliche Lösungen vorbereitet werden (Krcmar, 2015).
In der Praxis werden in der Software-Entwicklung zwei verschiedene Typen von Vorgehensmodellen verwendet:
Die linearen Phasenmodelle zerlegen den Entwicklungsprozess in aufeinanderfolgende Spezifikationsschritte.
Die einzelnen Teilschritte schließen jeweils mit einem nachzuweisenden Ergebnis ab, das den Input für die nächste Phase bildet. Deshalb wird dieses Modelle auch oft als Wasserfall-Modell bezeichnet.
Falls Probleme auftauchen, für die Entscheidungen in vorigen Phasen ursächlich sind, muss in die Phase zurückgesprungen werden, in der diese getroffen wurden. Die Fehlerbeseitigung kann dann aufwändig sein.
Agile Ansätze umfassen wiederholt ablaufende Aktivitäten, an deren Ende jeweils ein messbares Teilergebnis, d. h. eine teilfertige und nutzbare Version des zu erstellenden Systems, als Grundlage für nachfolgende Iterationen steht (Mertens et al., 2016).
Projekte zum Einführen von Standardsoftware dauern zumeist mehrere Monate. Die Einführungskosten, insbesondere Personalkosten, übersteigen dabei meistens deutlich die Kosten für die Software (insbesondere Lizenzkosten) (Mertens et al., 2016).
Auch bei der Einführung von Standardsoftware ist ein erhebliches fachliches Verständnis für die zu unterstützenden betrieblichen Funktionen und Prozesse notwendig.
Projekte zum Einführen von Standardsoftware laufen vergleichbar der Individualentwicklung in Phasen ab.
Analog zur Entwicklung von Individualsoftware existieren verschiedene phasenorientierte Vorgehensmodelle. Allen gemein sind drei Grundphasen: die Auswahl, die Einführung sowie der Betrieb der Software.
Bei der Anpassung unterscheidet man zwischen Customizing und Parametrisierung. Im Rahmen des Customizing werden Eigenschaften der Software in der Regel per Programmierung angepasst, im Rahmen der Parametrisierung werden vorhandene Einstellungsmöglichkeiten des Systems zur Anpassung verwendet.
Die in der Praxis vorkommenden Lizenzmodelle für kommerzielle Anwendungssysteme unterscheiden sich hauptsächlich in den Bezugsgrößen, die für die Ermittlung der Lizenzkosten herangezogen werden (Krcmar, 2015):
Diese Anforderung muss sukzessive auf drei Ebenen spezifiziert werden (Grobkonzept, Fachkonzept, technisches Design):
| Ebene | Leitfrage | Beispielhafte Spezifikation |
|---|---|---|
| Grobe Anforderung | Was soll grundsätzlich erreicht werden? | Studierende sollen über die App ihren Stundenplan einsehen können. |
| Fachliche Anforderung | Was soll die App konkret leisten? | Die App zeigt den persönlichen Stundenplan basierend auf belegten Modulen und Veranstaltungen. Änderungen im LSF werden automatisch übernommen. |
| Technische Anforderung | Wie wird das technisch umgesetzt? | Anbindung an das Moodle-System, täglicher Datenabgleich um 02:00 Uhr im JSON-Format, Anzeige in der App und in Moodle |
In dieser Übung vertiefen Sie zentrale Konzepte aus Softwareentwicklung und Anforderungsmanagement spielerisch.
Bilden Sie Paare und erklären Sie sich rundenweise untenstehende Begriffspaare. Nach der Erläuterung diskutieren Sie gemeinsam, vergleichen Vor- und Nachteile oder Einsatzszenarien.
01:30
Die HNU plant eine neue Campus-App. Ihre Aufgabe ist es, die Anforderungen für die App zu erfassen.
Bilden Sie Gruppen und arbeiten Sie an folgenden Aufgaben:
10:00
Anforderungen werden iterativ auf drei Ebenen spezifiziert:
Aufgabe:
15:00
Für die Campus-App müssen Sie entscheiden: Eigenentwicklung oder Standardsoftware?
Bilden Sie Gruppen und bearbeiten Sie folgende Aufgaben:
15:00
Sie haben sich für eine Individualsoftware entschieden. Für die Implementierung müssen Sie ein Vorgehensmodell auswählen.
Bilden Sie zwei Fraktionen: Wasserfall-Verfechter und Agile-Verfechter
Aufgaben:
10:00
Sie haben sich für eine Standardsoftware entschieden. Planen Sie nun den Auswahlprozess entlang des 4-Phasen-Modells.
Aufgaben:
15:00