Im Projektmanagement ist ein Proof of Concept (PoC) ein Meilenstein, an dem die prinzipielle Durchführbarkeit eines Vorhabens belegt ist. Der positive oder negative Machbarkeitsnachweis ist das Ergebnis einer Machbarkeitsstudie. In der Regel ist mit dem Proof of Concept meist die Entwicklung eines Prototyps verbunden, der die benötigte Kernfunktionalität aufweist.[1]
Mittels eines Proof of Concept können Risiken in der Entscheidung minimiert werden. In der Regel stehen folgende Argumente im Vordergrund:
Bei Projekten zur Einführung neuer Unternehmenssoftware wird zuweilen ein Proof of Concept umgesetzt, was mit einer Installation der Software und Anbindung an ausgewählte Schnittstellen einhergeht. Dadurch erreicht man zunächst genau die Punkte, die in der Definition von Prototyping (Softwareentwicklung) beschrieben sind.
Ein Beispielprojekt ist eine komplexe Systemumgebung mit diversen Abhängigkeiten, z. B. Schnittstellen zu weiterer Anwendersoftware.
Zusätzliche Ziele sind einerseits die gemeinsame Erarbeitung einer belastbaren Anforderungsliste, während der Proof of Concept es andererseits ermöglicht, ausgewählte Anforderungen an die neue Software/Architektur bereits in dieser Projektphase zu testen.
Derselbe Begriff wird auch im Bereich der Computersicherheit verwendet. In diesem Umfeld wird als Proof of Concept angesehen, wenn eine Sicherheitslücke durch den Entdecker ausgenutzt wird, ohne dass eine Schadfunktion ausgelöst wird. Es wird dadurch bewiesen, dass ein Sicherheitsproblem besteht, so dass der Softwarehersteller dieses nicht beziehungsweise nicht weiter bestreiten kann. Der Hersteller wird dadurch unter Zugzwang gesetzt, die Lücke (durch einen Patch) zu schließen, eine schwerwiegende Sicherheitslücke kann einen sofortigen Hotfix erforderlich machen.
Ein Beispiel könnte sein, dass es gelingt, das Taschenrechner-Programm auf einem entfernten Computer zu starten, ohne dass man regulär berechtigt ist, dort Programme zu starten. Wenn dies gelingt, ist bewiesen, dass ein Programmstart möglich ist; ein bösartiger Angreifer könnte vermutlich auch andere Programme starten und damit Schäden auslösen.