Evolutionäres Prototyping

Beim Evolutionären Prototyping wird der Prototyp iterativ immer weiter verbessert und schließlich zum fertigen Zielsystem weiterentwickelt. Die vorhandenen Ressourcen können aufgrund dessen immer weiter verwendet werden, der Prototyp entwickelt sich peu à peu zum fertigen Produkt. Meistens hat man hier das große Problem, passende Werkzeuge zu finden mit denen schnell und kostengünstig Prototypen erstellt werden können. Gleichzeitig muss der erzeugte Programmcode robust und effizient sein. Für die Umsetzung kommen nur umfangreiche Programme wie z. B. GUI Builder in Frage, wodurch die Entwicklung deutlich schleppender und kostenintensiver ist als beim Revolutionären Prototyping. Oftmals besteht beim Evolutionären Prototyping ein weiteres Problem: die Entwickler geraten in Versuchung, das System zu implementieren, anstatt den Prototyp zu Testzwecken zu entwickeln. Da der Code weiterverwendet wird, geht er oftmals über das tatsächlich nötige Minimum hinaus. Der eigentlich zu bestimmten Testzwecken entwickelte Prototyp wird dadurch zu einer unvollständigen Version des Endsystems ausgebaut. Aus diesem Grund werden Evolutionäre Prototypen, wenn überhaupt, bevorzugt in späten Phasen des Designs eingesetzt.