Um sich ein Bild einer Software zu machen, ist es oft sinnvoll einen Prototyp zu erstellen. Man unterscheidet (Quelle: de.wikipedia.org):

Vertikales Prototyping (Durchstich)

Ziel: Die Entwicklung eines funktionalen Ausschnitts eines Programmes
Wichtigstes Ergebnis: Ein ausgewählter Teil des Systems ist durch alle Ebenen hindurch implementiert.

Hierbei wird ein ausgewählter Teil umgesetzt. Dies eignet sich besonders für Fälle, in denen noch Funktionalitäts- oder Implementierungsfragen ungeklärt sind. Abgeschlossene Teile können dann bereits umgesetzt werden, bevor die Anforderungen für den Rest komplett festgelegt wurden.

Horizontales Prototyping

Ziel: Eine funktionierende Ebene, die vorgestellt werden kann, oder an der sich andere Ebenen orientieren können.
Wichtigstes Ergebnis: Eine ausgewählte Ebene des Gesamtsystems ist fertiggestellt.

In diesem Fall wird nur eine spezifische Ebene des Gesamtsystems realisiert, welche jedoch möglichst vollständig abgebildet wird (z. B. Realisierung der Grafischen Benutzeroberfläche ohne tiefer liegende Funktionalitäten, zur Vorlage für den Auftraggeber). Diese Methode hat den Vorteil, dass man dem Auftraggeber schon etwas zeigen kann, ohne das komplette System entwickelt zu haben. Dies setzt eine starke (jedoch ohnehin sinnvolle) Trennung der einzelnen Komponenten voraus. Die Oberfläche muss dementsprechend unabhängig von der dahinter liegenden Logik funktionieren, oder, wenn die Logik-Ebene umgesetzt wird, muss diese unabhängig von der Oberfläche funktionieren.

Aufgabe 1

Formuliere je ein Beispiel für vertikales und horizontales Prototyping am Beispiel einer Software zum Vokabellernen.

Aufgabe 2

Erstelle eine GUI als Prototyp für eine Vokabellern-Software. Nutze dazu einen GUI-Builder. Inwiefern lässt sich hier horizontales und vertikales Prototyping kombinieren?