Übliche IT-Projekte laufen so ab: Der Verkäufer redet mit dem Kunden über seine Anforderungen, der Verkäufer übersetzt die Anforderungen in technische Anforderungen und gibt sie dem Programmierer. Anschließend warten alle auf den Programmierer.
Dieses System hat einen Nachteil: Alle warten auf den Programmierer. Dieser legt erst los, wenn er alle Anforderungen kennt, denn sonst riskiert er, Dinge zu entwickeln, die nachher niemand benötigt und für die er nicht bezahlt wird.
Kernproblem ist, dass sich programmierter Code schlecht aus Projekten herauslösen lässt und in anderen Projekten wiederverwerten lässt. Doch ist das wirklich so? Immerhin sollte es doch möglich sein, mit einem guten Programmierstil wiederverwertbaren Code herzustellen.
Fakt ist aber, dass sämtlicher wiederverwertbarer Code bereits irgendwo in kostenlosen Programmier-Bibliotheken zusammengefasst sind. Was moderne Entwickler nur noch tun ist, entsprechende Bibliotheken zu verwenden und Anwendungen daraus zusammenzusetzen.
FOP geht da einen Schritt weiter: Anstatt wie normale Programmiersprachen Programmbibliotheken einzubinden und zu verwenden, setzt FOP eine Abstraktionsstufe höher an: Bei den Kundenanforderungen.
Jede Kundenanforderung hat zur Folge, dass gewisse Dinge in der Software programmiert werden müssen: Bibliotheken eingebunden werden, Dinge verknüpft, Felder angelegt… – und genau das kann FOP beschreiben.
Kommt in Zukunft also eine Kunden-Anforderung auf den Verkäufer zu, kann dieser diese Anforderung in FOP hinschreiben und schon entsteht daraus Programmcode. Die eigentliche Programmier-Arbeit hat der Programmierer nämlich zeitlich entkoppelt bereits viel früher getan: Nämlich definiert, wie Kundenanforderung X allgemein umgesetzt werden müsste.
FOP ist eine Beschreibungssprache, mit der es möglich ist, komplexe IT-Software-Systeme aus einer formalisierten Anforderungs-Beschreibung zu generieren.
Comments are closed