YouX Abonnement
Software-Prototyping

Die Bedeutung von Software-Prototyping

Bild von Luís Filipe

Luís Filipe

Geschäftsführender Gesellschafter YouX

Was ist Software-Prototyping?

Allgemein können wir Software-Prototyping als den Prozess definieren, der die Erstellung eines visuellen Modells des Produkts oder Systems ermöglicht, dessen Entwicklung durchgeführt werden soll. 

Ein Rückblick auf die Geschichte der Softwareentwicklung hilft uns, den Einsatz von Prototyping zu verstehen. In den 60er Jahren des letzten Jahrhunderts entstand ein bis heute beliebtes Entwicklungsmodell, der SLDC – Software Development Life Cycle.

Als großen Vorteil stellte das SDLC die Segmentierung der Softwareproduktion in verschiedene einzelne Phasen dar, die systemisch arbeiten würden, mit ihren Inputs, Verarbeitungen und Ergebnissen, die nach Verifizierung und Validierung in die nächste Phase übergehen würden.

Software für Lebenszyklusmodelle
Der klassische Software-Lebenszyklus.

Quelle: The Role of Prototyping in Software Development G. Pomberger, R. Weinreich C. Doppler Labor für Software Engineering Johannes Kepler Universität Linz

Seine Verwendung offenbarte seine Grenzen: Er ging von der falschen Annahme aus, dass der Entwicklungsprozess linear sei und dass Wechselwirkungen zwischen Phasen Ausnahmen seien.

Dieser Ansatz führte dazu, dass die greifbaren Komponenten des Systems erst sehr spät verfügbar waren. Andererseits war es schwierig, jede erforderliche Änderung, beispielsweise auf Wunsch des Kunden, ohne den Aufwand enormer Ressourcen umzusetzen.

In diesem Zusammenhang entstand in den 80er Jahren der Prototyping-orientierte Software Live Cycle. Dieses Modell stellt keinen Bruch mit dem vorherigen dar, sondern ergänzt es vielmehr und macht es iterativer. Prototyping nimmt eine zentrale Rolle ein.

Prototyping-orientierter Softwarelebenszyklus
Der Prototyping-orientierte Softwarelebenszyklus.

Quelle: The Role of Prototyping in Software Development G. Pomberger, R. Weinreich C. Doppler Labor für Software Engineering Johannes Kepler Universität Linz

Wie Connell und Shafer sagen: „ Ein Software-Prototyp ist ein dynamisches visuelles Modell, das ein Kommunikationstool für Kunden und Entwickler bietet, das weitaus effektiver ist als entweder narrative Prosa oder statische visuelle Modelle zur Darstellung von Funktionalität.  Es wurde beschrieben als:

  • Funktioniert nach minimalem Kraftaufwand 
  • ein Mittel, um Benutzern einer vorgeschlagenen Anwendung vor der Systemimplementierung eine physische Darstellung wichtiger Teile des Systems bereitzustellen.
  • flexibel erfordern minimalen Änderungsaufwand 
  • nicht unbedingt repräsentativ für ein Gesamtsystem.”

(Connell JL, Shafer LB.: Structured Rapid Prototyping. Prentice Hall International, Yourdon Press, 1989)

Die Rolle des Prototypings in der Softwareentwicklung ist besonders wichtig in Fällen, in denen der Kunde keine genau definierten Projektanforderungen hat. Das Prototyping ermöglicht die Erstellung eines ersten Prototyps des Endprodukts, das Testen und Verbessern dieses bis zur Genehmigung. Von diesem Moment an wird der entwickelte Prototyp zur Entwicklungsbasis für das Endprodukt.

„Wie manche Entwickler gerne sagen: „Wenn ein Bild mehr als tausend Worte sagt, dann sagt ein Prototyp mehr als tausend Meetings.“ "

in, Was ist Prototyping in der Softwareentwicklung (und warum es wichtig ist)

Vorteile des Software-Prototypings

  • Früher testen und validieren: Haben Sie eine Darstellung des Produkts ohne Code. Die Iteration mit dem Prototyp ermöglicht es Ihnen, schnell und effizient zum bestmöglichen Design zu gelangen.
  • Ermöglicht es Ihnen, Investoren und Early Adopters zu beeindrucken: Ein Prototyp demonstriert eine Idee klar und deutlich.
  • Einfach, schnell und günstig: Prototypen lassen sich leicht entwickeln, sodass Sie ohne großen Zeit- und Arbeitsaufwand verschiedene Ideen erkunden können. Wenn wir zum Code übergehen, tun wir dies mit Zuversicht.
  • Es ermöglicht Ihnen auch, von Beginn des Entwicklungsprozesses an Feedback zu erhalten, wodurch Sie Systemprobleme erkennen können, bevor die Codierungsphase beginnt.
  • Größere Usability-Probleme können bereits vor dem Code erkannt und so mit sehr geringem Aufwand behoben werden.
  • Darüber hinaus regt das Prototyping auch die Kreativität an.
  • Interaction Foundation Design sagt :
Die 1-10-100-Regel, wie Prototyping Kosten senkt
Die InteractionDesign Foundation

Arten des Prototypings

In der Softwareentwicklung gibt es verschiedene Arten von Prototypen und auch verschiedene Nomenklaturen. Wenn wir versuchen, es ein wenig zu strukturieren, können wir sagen, dass sie sich anhand von zwei Hauptaspekten unterscheiden: dem Umfang (wie viel sie vom endgültigen System darstellen) und ihrem Grad an Realismus:

Umfang

  • Vertikale Prototypen: Es sind nur wenige Funktionen enthalten, die jedoch funktionsfähig sind und unter sehr realistischen Bedingungen (einschließlich der Verbindung zu realen Daten) bei der Ausführung realer Aufgaben getestet werden können.
  • Horizontale Prototypen: Sie sind nicht so funktional wie die ersten, umfassen aber das gesamte System und ermöglichen es Ihnen daher zu sehen, wie die verschiedenen Funktionalitäten im System artikuliert sind.
  • Szenarien: Es hat einen reduzierten Umfang und eine reduzierte Funktionalität und ermöglicht es Ihnen, das System zu testen, indem Sie ein bestimmtes Skript durchlaufen.

Realismus

  • Low-Fidelity: Wenig Funktionalität und Interaktion, sie werden normalerweise verwendet, um das Konzept, Layouts oder Designalternativen zu zeigen.
  • Hohe Wiedergabetreue: Sie sollen die Interaktion mit dem System demonstrieren und weisen ein hohes Maß an Realismus auf.

Prototyping-Modelle

4 Arten von Prototyping-Vorlagen

  1. Rapid Prototyping: Wird verwendet, um Ideen zu erforschen und Feedback vom Kunden zu erhalten, anstatt den Kunden zu kompromittieren, das Ziel ist es, notwendige Entwicklungen zu vermeiden.
  2. Evolutionärer Prototyp: besteht aus einer Verfeinerung des ursprünglichen Prototyps, der verbessert und weiterentwickelt wird, bis er schließlich vom Kunden akzeptiert wird.
  3. Inkrementeller Prototyp: Das Endprodukt wird in mehrere Teile geteilt und einzeln prototypisiert. Am Ende werden sie ordentlich zusammengesetzt. Dieser Prozess reduziert die Komplexität.
  4. Extreme Prototypen: Sie werden hauptsächlich in der Webentwicklung verwendet und bestehen aus 3 aufeinanderfolgenden Phasen:
    1. Es wird ein Prototyp mit allen statischen Seiten in HTML präsentiert
    2. Zur Simulation des Prozesses werden Funktionsbildschirme erstellt
    3. Alle Services werden in der finalen Gantry implementiert und verknüpft.

Sie denken darüber nach, neue Schnittstellen oder Produkte zu entwickeln oder bestehende Lösungen zu verbessern? Fahren Sie sicher fort. Siehe unsere Dienstleistungen .

Sie können den Inhalt dieser Seite nicht kopieren

Zum Inhalt springen