Prototyping hilft bei der Softwareentwicklung

Heute muss Software zügig entwickelt und produktiv gesetzt werden. Dabei kann Prototyping helfen, die Effizienz im Entwicklungsprozess zu verbessern. [...]

Ein Prototyp in der Softwareentwicklung kann dabei helfen, Softwareprojekte in der Spur zu halten und zügig abzuschließen (c) pixabay.com

Softwareentwicklung ist eine sehr dynamische Disziplin, in der sich die Anforderungen schnell ändern. Häufig entwickelt die Auftraggeber-Seite eine Reihe von Anforderungen oder User Stories, obwohl sie das entsprechende Resultat nicht genau einschätzen kann. Das Entwicklerteam macht sich Gedanken und arbeitet an einem repräsentablen Stakeholder. Wenn dieser jedoch hinter den Erwartungen zurückbleibt, weil die Anlage zur Visualisierung anfänglicher Anforderungen fehlt, kann es passieren, dass so ein Projekt komplett neu auf die Spur gesetzt werden muss.

Dies führt im Ergebnis zu einem erhöhten Budget für die Produktentwicklung. Um den Ablauf und dementsprechend das Budget zu optimieren, können verschiedene Ansätze verfolgt werden: PoC (Proof of Concept), Wireframes, Funktionales PrototypingMVP (Minimum Viable Product) oder ein Pilotprojekt. Dieser Artikel konzentriert sich auf das Prototyping: Was ist Prototyping? Wie funtkioniert die Methode? Und in welchen Situationen verwendet man sie am besten?

Klassifizierung von Prototypen

Dass Software-Überprüfung unter realen Bedingungen und die daraus gesammelten Daten und Erkenntnisse zu einem optimierten Ergebnis führen, verschafft den Entwicklern mehr als einen großen Vorteil. Schließlich erhalten sie wichtige Informationen aus den Berührungspunkten der Nutzer und aus deren Anwenderverhalten. Doch so unterschiedlich die Ansprüche an das Endprodukt, so verschieden sind auch die Arten des Herangehens an das Prototyping selbst. Eine vorab festgelegte Art des Prototyping hilft bei der Umsetzung durch eine strukturierte Verfahrensweise, die sich an unterschiedlichen Dimensionen orientiert.

A. Nach Abmessungen

A.1. Horizontales Prototyping

Beim horizontalen Prototyping werden nur einige Schichten des Systems wie beispielsweise bloß die Benutzeroberfläche entweder als Wireframes oder als eigentliche UI-Implementierung aufgebaut. Dies hilft bei der Verfeinerung der Anforderungen zusammen mit dem Auftraggeber, damit dieser die Komplexität des Arbeitsaufwands besser versteht. Obwohl diese Art von Prototyping sehr nützlich und effektiv sein kann, zeigt die tatsächliche Implementierung der Funktionalität hinter der Benutzeroberfläche / dem Wireframe manchmal einige neue Aspekte der Komplexität, die beim Design von Benutzeroberflächen-Interaktionen möglicherweise noch nicht offensichtlich sind.

A.2. Vertikales Prototyping

Beim vertikalen Prototyping wird im Gegensatz zum horizontalen Prototyping nur ein Teil des Systems gebaut, jedoch auf einem fortgeschrittenen Level. Dieser Ansatz eignet sich besser für Teile des Systems, bei denen eine hohe Komplexität erwartet wird, oder wenn es für einen Teil des Systems (PoC) keine offensichtliche Lösung gibt. Dieser Ansatz hilft für eine bessere Annäherung von Ressourcenbedarf, erwartetem Netzwerkverkehr und Budget, das für den Betrieb eines solchen Systems in einer Produktionsumgebung erforderlich ist.

B. Nach Lebensdauer

B.1. Erstmaliges Prototyping

Dies ist ein Rapid Prototyping, bei dem das System so schnell wie möglich aufgebaut wird. Die Entwickler zeigen das Ergebnis den Interessengruppen, woraufhin die Anforderungen weiter verfeinert und verbindlich vereinbart werden, jedoch ohne dass dieses Ergebnis Teil des Endprodukts sein wird. So ermöglicht dieses Verfahren eine schnelle Entwicklung mit minimalem Aufwand an Architektur, Sicherheit oder Best Practices.

B.2. Evolutionäres Prototyping

B.2.1. Inkrementelles Prototyping

Inkrementelles Prototyping bezieht sich auf ein größeres Produkt, das aus der Verbindung mehrerer getrennter Prototypen besteht. Mit der Verwendung dieses Ansatzes kann die Problematik entstehen, die einzelnen Prototypen mühsam zu einer funktionalen Lösung zusammenfassen zu müssen. Dies lässt sich vermeiden, indem eine definierte Schnittstelle für den Datenaustausch zwischen den Prototypen vereinbart wird. Geschieht dies nicht, könnte ein großer Aufwand erforderlich sein, um aus diesen einzelnen Prototypen einen finalen Prototyp zu machen. Inkrementelles Prototyping eignet sich gut für die Architektur von Mikroservices, wenn bestimmte Teile des Produkts von verschiedenen Teams parallel erstellt werden.

B.2.2. Extremes Prototyping

Extremes Prototyping bezieht sich auf eine Weiterentwicklung des Prototyps durch Hinzufügen zusätzlicher Schichten in mehreren Stufen. Ein Beispiel ist die Entwicklung von Webanwendungen, in welcher ein Prototyp gebaut werden könnte, der nur die statische HTML-Version enthält. Im nächsten Schritt werden HTML-Seiten funktionsfähig, aber ohne funktionierendes Backend. Dies passiert in der letzten Phase der Implementierung der Backend-Lösung. Die Implementierung von extremem Prototyping in Unternehmen, in denen die Backend- und Frontend-Entwicklung von verschiedenen Teams/Teammitgliedern durchgeführt wird, ist nicht ideal. Die Backend-Entwicklung wird durch die Frontend-Entwicklung blockiert, so dass sie besser für die Full-Stack-Entwicklung geeignet ist.

Prototyping und Sicherheitsüberlegungen

Im Falle von evolutionärem Prototyping wird der Prototyp die Grundlage für das serienreife System bilden. Das ist aus haushaltspolitischer Sicht gut, könnte aber aus sicherheitstechnischer Sicht problematisch sein. Abhängig von den Sicherheitsfragen treten zwei Situationen auf:

a) Im Falle von Sicherheitsproblemen, die leicht zu lösen sind und keine architektonischen Probleme darstellen, können sie nachträglich behoben werden, wenn der Prototyp mit dem Auftraggeber vereinbart wird und das Produkt in die nächsten Phasen übergeht.

b) Im Falle von architektonischen Sicherheitsfragen, bei denen einige Teile des Systems neu gestaltet werden müssen, betrifft dies sowohl das Budget als auch den Zeitplan des Projekts. Um dies zu vermeiden, könnten entweder Wegwerf-Prototypen verwendet werden (weil sie schneller zu implementieren sind) und für die serienreife Konstruktion des Systems mit Blick auf die Sicherheit, oder der Prototyp mit Blick auf die Sicherheit, auch wenn es während der Prototypisierungsphase zeitaufwendiger ist.

Fazit

Abhängig von der Organisationsstruktur und der architektonischen Gestaltung des Produkts kann das Prototyping in seinen verschiedenen Ausformungen als mächtiges Werkzeug eingesetzt werden, um Zeit und Kosten für die Verfeinerung der Anforderungen zu reduzieren und sie mit dem Auftraggeber abzustimmen. Allerdings müssen Entwickler sorgfältige Überlegungen über Softwarearchitektur, Softwareprinzipien und Sicherheitsbedrohungen anstellen. Diese Entwicklungen gilt es, in die Prototypenentwicklung einzubinden, bevor dieser Ansatz zu einem serienreifen Produkt weiterentwickelt wird. Je komplexer das Produkt werden soll, desto teurer und zeitaufwendiger wird die Lösung der Aufgaben.

*Pierre Gronau ist seit über 25 Jahren für namhafte Unternehmen als Senior IT-Berater mit umfangreicher Projekterfahrung tätig. Zu seinen Kompetenzfeldern gehören Server-Virtualisierungen, IT-Sicherheit, moderne Cloud- und Automationslösungen sowie Informationsschutz in kritischen Infrastrukturen.


Mehr Artikel

Die Teilnehmer des Roundtables (v.l.n.r.): Roswitha Bachbauer (CANCOM Austria), Thomas Boll (Boll Engineering AG), Manfred Weiss (ITWelt.at) und Udo Schneider (Trend Micro). (c) timeline/Rudi Handl
News

Security in der NIS2-Ära

NIS2 ist mehr ein organisatorisches Thema als ein technisches. Und: Von der Richtlinie sind via Lieferketten wesentlich mehr Unternehmen betroffen als ursprünglich geplant, womit das Sicherheitsniveau auf breiter Basis gehoben wird. Beim ITWelt.at Roundtable diskutierten drei IT-Experten und -Expertinnen über die Herausforderungen und Chancen von NIS2. […]

Christoph Mutz, Senior Product Marketing Manager, AME, Western Digital (c) AME Western Digital
Interview

Speicherlösungen für Autos von morgen

Autos sind fahrende Computer. Sie werden immer intelligenter und generieren dabei jede Menge Daten. Damit gewinnen auch hochwertige Speicherlösungen im Fahrzeug an Bedeutung. Christoph Mutz von Western Digital verrät im Interview, welche Speicherherausforderungen auf Autohersteller und -zulieferer zukommen. […]

Andreas Schoder ist Leiter Cloud & Managend Services bei next layer, Alexandros Osyos ist Senior Produkt Manager bei next layer. (c) next layer
Interview

Fokus auf österreichische Kunden

Der österreichische Backup-Experte next layer bietet umfassendes Cloud-Backup in seinen Wiener Rechenzentren. Im Interview mit ITWelt.at erläutern Andreas Schoder, Leiter Cloud & Managed Services, und Alexandros Osyos, Senior Produkt Manager, worauf Unternehmen beim Backup achten müssen und welche Produkte und Dienstleistungen next layer bietet. […]

Miro Mitrovic ist Area Vice President für die DACH-Region bei Proofpoint.(c) Proofpoint
Kommentar

Die Achillesferse der Cybersicherheit

Eine immer größere Abhängigkeit von Cloud-Technologien, eine massenhaft mobil arbeitende Belegschaft und große Mengen von Cyberangreifern mit KI-Technologien haben im abgelaufenen Jahr einen wahrhaften Sturm aufziehen lassen, dem sich CISOS ausgesetzt sehen. Eine große Schwachstelle ist dabei der Mensch, meint Miro Mitrovic, Area Vice President DACH bei Proofpoint. […]

Alexander Graf ist Geschäftsführer der Antares-NetlogiX Netzwerkberatung GmbH. (c) Antares-NetlogiX Netzwerkberatung GmbH
Interview

Absicherung kritischer Infrastrukturen

NIS2 steht vor der Tür – höchste Zeit, entsprechende Maßnahmen auch im Bereich der Operational Technology (OT) zu ergreifen. »Wenn man OT SIEM richtig nutzt, sichert es kritische Infrastrukturen verlässlich ab«, sagt Alexander Graf, Experte für OT-Security (COSP) und Geschäftsführer der Antares-NetlogiX Netzwerkberatung GmbH, im ITWelt.at-Interview. […]

Brian Wrozek, Principal Analyst bei Forrester (c) Forrester
Interview

Cybersicherheit in der Ära von KI und Cloud

Die Bedrohungslandschaft im Bereich der Cybersicherheit hat sich zu einer unbeständigen Mischung von Bedrohungen entwickelt, die durch zunehmende Unsicherheit und steigende Komplexität bedingt ist. Zu diesem Schluss kommt der Report »Top Cyber-security Threats In 2024« von Forrester. ITWelt.at hat dazu mit Studienautor Brian Wrozek ein Interview geführt. […]

In Österreich gibt es die freie Wahl des Endgeräts. Oder doch nicht? (c) Pexels
News

RTR erklärt Wahlfreiheit zum Nischenthema

Bei der Frage, ob Endkunden oder die Provider darüber entscheiden sollten, welches Endgerät sie an ihrem Breitbandanschluss nutzen können, stellt sich die RTR klar auf eine Seite. Laut RTR existiert bereits Wahlfreiheit. Dennoch will die Regulierungsbehörde aktiv werden, wenn sich noch mehr Kunden über das Fehlen der Wahlfreiheit bei ihr beschweren. Logik geht anders. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*