Die so genannte Datenmodellierung nimmt in Softwareprojekten meist den größten Raum ein. Es geht dabei darum, Geschäftsobjekte – also die Dinge aus der realen Welt – in die Informatik zu übertragen. Geschäftsobjekte – auch Businessobjekte genannt – werden dann durch die Datenmodellierung auf eine Datenbank abgebildet. Das Ziel ist es die einzelnen Informationen eines Softwaresystems permanent zu speichern und weiter zu verarbeiten. Geschäftsobjekte können dabei alles mögliche sein. Als Beispiel soll hier ein Softwaresystem zur Unterstützung des Projektmanagements in einem Unternehmen dienen. Es gibt hier typische Geschäftsobjekte wie: „Projektleiter“, „Stellvertreter“, „Projekt“, „Arbeitspaket“ usw.. Aber auch komplexere Geschäftsobjekte werden mit Hilfe der Datenmodellierung abgebildet – z.B.: „Risiko“, „Budget“ oder „Termin“.
Da alle Geschäftsobjekte miteinander in Beziehung stehen ist die Modellierung meist nur durch Softwareexperten und den jeweiligen Experten aus der Anwendungsdomäne – also dem Fachbereich – gemeinsam durchführbar. Ein so erstelltes Datenmodell bildet dann die Grundlage für das zu erstellende Softwaresystem. Spätere Ãnderungen führen hier schnell zu hohen zusätzlichen Kosten und einer Verzögerungen in der Fertigstellung des Softwaresystems. Große Softwaresysteme können oft nur noch schwer oder gar nicht mehr an sich ändernde Geschäftsprozesse und damit neu entstehende Geschäftsobjekte angepasst werden.
Datenmodelle im Workflow Management
Ein Workflow Management System (WMFS) vereinfacht den Prozess der Datenmodellierung. Ein solches System stellt in der Regel ein allgemein gültiges Datenmodell bereit mit dem sich unterschiedliche Geschäftsprozesse schneller und flexibler erstellen lassen. Da alle Geschäftsprozesse aus der realen Welt sich in Form von Papier abbilden lassen – und meist auch in Papierform abgebildet werden müssen – stellt das Businessobjekt „Dokument“ eine flexible Basis für solch eine Datenmodellierung dar. Ein Dokument kann nun verschiedene Informationen aufnehmen und verschiedene Dokumenttypen abbilden. Die Verknüpfung der so abgebildeten Geschäftsobjekte erfolgt dann einfach durch Verweise oder Links wie sie vom Internet bzw. HTML bekannt sind. Um das oben genannte Beispiel fortzusetzen, würde man bei einem Softwaresystem zur Unterstützung des Projektmanagements folgende Dokumente einem Projekt zuordnen: „Projektauftrag“, „Teamliste“, „Arbeitspakete“, „Risikobewertung“, „Budgetplanung“, „Terminplan“. Bereits hier ist deutlich zu sehen, dass wir aus Sicht der Dokumentenstruktur wesentlich einfacher Geschäftsobjekte identifizieren können, da wir die entsprechende Dokumente kennen.
Das Imixs IX Open Source Workflowsystem verwendet diese Art der Datenmodellierung. Alle Informationen eines Geschäftsprozesses können in Dokumenten sogenannten „Entities“ abgebildet werden. Das Dokument kann nun beliebige Eigenschaften – Felder beinhalten. Man kann ein solches Dokument mit einem Formular vergleichen, das der Anwender nur noch auszufüllen braucht. Der Softwareentwickler legt fest, welche Felder auf dem Formular sichtbar – also vom Anwender ausgefüllt werden sollen. Diese Dokumente werden dann vom Workflow Management System in einer Datenbank gespeichert. Zur Verwaltung der Dokumente legt das WFMS aber auch zusätzliche Informationen in dem Dokument ab. Diese Informationen dienen dazu das Dokument später wieder zu finden oder zum Beispiel die einzelnen Bearbeitungsschritte automatisch zu dokumentieren. Kommt es nun zu einer Ãnderung im Geschäftsprozess kann ein solches Dokument bzw. das zugehörige Formular einfach geändert und mit neuen Feldern ergänzt werden. Das WFMS sorgt dafür, dass alle bisher erfassten Informationen unverändert bleiben und neue Prozesse dem nun geänderten Datenmodell ensprechen.
Vorteile
Die Vorteile eines solchen Datemodells sind vor allem in der kürzeren Zeit zu sehen, die für die Softwareerstellung benötigt wird. Damit verringern sich die damit verbundenen Kosten. Aber auch die Flexibilität eines solchen Ansatzes bietet entscheidende Vorteile bei der Abbildung von Geschäftsprozessen die häufigen Ãnderungen unterliegen.