Referenzen
Softwareprodukte
IOP – Internet Operating Platform
Unser hochintegriertes Enterprise-Framework für die Entwicklung von Unternehmensanwendungen.
- Wieso IOP
- IOP in Fachchinesisch
Die Grundlage eines Projekts in IOP ist ein Modell. Dabei ist zunächst einmal offen, in welcher Sprache oder Format das Modell beschrieben ist. Für bestimmte Infrastrukturen (Programmiersprache, Zielumgebung, Datenbank) und Skillsets gibt es unterschiedliche Modellierungssprachen und –tiefen.
IOP verfolgt den Ansatz der Model Driven Architecture (MDA) der OMG. Dabei werden insbesondere der statische und der dynamische Teil einer Anwendung modelliert:
- Der statische Teil der Anwendung – die Entity Objekte in den verschiedenen Business Domains – werden durch UML Klassendiagramme modelliert. Dabei werden insbesondere Konzepte wie Vererbung, Compositions, Aggregations und Behavior unterstützt. Das statische Modell wird mittels Generatoren in die entsprechenden Zielformate übersetzt, insbesondere Java, meist auch in eine Datenbanksprache (SQL).
- Der dynamische Teil der Anwendung – die Workflows – wird in XPDL abgebildet. Auch hier übersetzen Generatoren das Modellierungsformat in ein Zielformat, welches zur Laufzeit verwendet wird.
Somit gibt es bei beiden Modellierungsarten einen Design-Teil und einen Laufzeit-Teil. Der Design-Teil ist nur während der Generierung notwendig, auf den Laufzeit-Teil wird während der Ausführung der eigentlichen Anwendung zurückgegriffen.
Entwicklungsprozess
Ähnlich wie bei der Modellierung muss sich auch ein Entwicklungsprozess an einer vorhandenen Infrastruktur und gegebenem Skillsets orientieren. Der Einsatz von IOP erlaubt es, Entwickler mit unterschiedlichen Skills und Neigungen entsprechend ihrer Fähigkeiten einzusetzen.
So gibt es zum einen die Einteilung in Analyse, Design und Implementierung, zum anderen stehen sich Framework- und Anwendungsentwicklung gegenüber. Framework-Entwicklung bezeichnet dabei zum einen die Erweiterung von IOP Basisfunktionalitäten, zum anderen die Anbindung/Unterstützung eines externen Systems an/durch IOP. Beispiele für letzteres können die Anbindung eines bestimmten Drivers (Beispiel Webservices), eines speziellen Content Management Systems oder auch Modellierungstools sein.
Der Entwicklungsprozess beginnt mit der Erstellung eines statischen und dynamischen Modells in den entsprechenden Modellierungssprachen UML und XPDL.
Um ein frühes Feedback der späteren Endanwender zu erhalten und damit Fehlentwicklungen zu vermeiden, ist auch das Storyboard – die Oberflächenprozesse – wesentlicher Bestandteil der Anfangsphase eines Projekts.
Die grundsätzliche Architektur von IOP erlaubt dann die Zuordnung von Skills bzw. Teams zu einzelnen Building Blocks wie Oberflächendesign, Workflow und Komponenten Entwicklung, Anbindung von externen Systemen (Device/Driver) sowie Optimierung von Abfragen (generischen als auch manuell erstellten).
Der Entwicklungsprozess von IOP gibt kein explizites Vorgehensmodell vor, sondern integriert sich in bestehende Modelle.