Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Metamodellbasierte und hierarchieorientierte ... - RosDok
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
5.1 Einführung 93<br />
der Aufgaben ein integraler Bestandteil der Modelle. Zusätzlich ist an jeder Dekomposition einer Aufgabe<br />
ein sogenannter Plan zu annotieren, der informell beschreibt, in welcher Reihenfolge die Unteraufgaben zu<br />
erledigen sind. Diese informelle Angabe mit umgangssprachlichen Text repräsentiert die Kontrollflusskanten<br />
in flussorientierten Modellierungssprachen. Informelle Texte beinhalten von Natur aus Mehrdeutigkeiten,<br />
womit diese für eine So<strong>und</strong>ness-Analyse bzw. Workflow-artige, rechnergestützte Ausführung der HTA-<br />
Modelle nicht ausreicht.<br />
Weitere Aufgabenmodellierungsansätze sind mit Goals Operations Methods Structure (GOMS) [Kie03]<br />
<strong>und</strong> Task Knowledge Structure (TKS) [JJ91] gefolgt. Diese werden ebenfalls nur zur konzeptionellen<br />
Modellierung verwendet <strong>und</strong> sind nicht dafür vorgesehen, ausgeführt zu werden.<br />
Die Sprache ConcurTaskTree (CTT) [Pat99] hat sich als populärste Aufgabenmodellierungssprache etabliert.<br />
Diese wird vornehmlich im Zusammenhang mit der User Interface-Modellierung eingesetzt. Die<br />
ConcurTaskTrees haben die Angabe des Kontrollflusses für Aufgabenmodelle eher formalisiert (s. Abschnitt<br />
5.2.2), für eine Workflowausführung sind aber auch diese Modelle noch zu informell. Zum einen fehlt eine<br />
Veröffentlichung zur formale F<strong>und</strong>ierung, nach der eine eindeutige Abarbeitung bei allen Operatoren <strong>und</strong><br />
deren Kombinationen definiert ist. Zum anderen liefert das Referenzwerkzeug ConcurTaskTree Environment<br />
(CTTE) [MPS02] zwar eine Umgebung zur Simulation der Modelle, dort entstehen aber schnell Probleme<br />
wie Dead- bzw. Lifelocks, die während der Modellierung nicht immer automatisch erkannt werden. Eine<br />
Formalisierung, die eine So<strong>und</strong>ness-Überprüfung zur Designtime erlaubt, ist hier notwendig, um Aufgabenmodelle<br />
zur Workflowausführung zu nutzen. Abschnitt 5.3 präsentiert einen präzisen metamodellbasierten<br />
Ansatz für den Zweck, Konsistenzeigenschaften von CTT-Modellen zu überprüfen.<br />
Wendet man Aufgabenmodelle für Geschäftsprozesse an, muss man beachten, dass die Wurzelaufgabe<br />
kein Nutzerziel verfolgt, sondern eher das Ziel des Unternehmens oder der Abteilung. Dieser Sachverhalt<br />
ist im Kontrast zur nutzerzentrierten Aufgabenmodellierung zu sehen. Daraufhin wird das Ziel, wie in<br />
Aufgabenmodellen üblich, in einer baumartigen Form dekomponiert. Hierbei ist eine grafische Integration<br />
der Organisationsmodellierung durch Pools bzw. Swimlanes, so wie sie bei BPMN vorhanden ist, nicht<br />
vorgesehen. Stattdessen können Cooperative ConcurTaskTrees (CCTT) eingesetzt werden, um kooperierende<br />
Tätigkeiten zu modellieren [MPS02]. Dafür wird für jede beim Geschäftsprozess beteiligte Rolle<br />
bzw. Person ein Aufgabenbaum zugeordnet. Die Koordination der unterschiedlichen Aufgaben wird dann<br />
in einem separaten, koordinierenden Aufgabenbaum angegeben. In diesem wird im Wurzelknoten das<br />
gemeinschaftliche Ziel modelliert, das nicht einer Person sondern der Organisationseinheit zuzuordnen ist.<br />
Hierarchische Modelle, die mehrere Abstraktionsebenen in einem Modell darstellen, haben neben der<br />
integrierten Zielmodellierung einen weiteren Vorteil gegenüber imperativen Sprachen. Es kann eine „depthfirst“-Modellierung<br />
verfolgt werden im Gegensatz zu nicht hierarchischen Modellen, die eine „breadthfirst“-Modellierung<br />
erzwingen. Omerod hat festgestellt, dass diese Herangehensweise Vorteile bei der<br />
Modellierung aus folgenden Gründen haben kann [OR99]. Kritische Probleme <strong>und</strong> wiederum spezielle<br />
Unterprobleme können beispielsweise durch Dekomposition als erstes genauer betrachtet werden. Dadurch<br />
kann man zur Erkenntnis gelangen, dass das Problem so nicht gelöst werden kann <strong>und</strong> ein anderes Handlungsmodell<br />
erforderlich ist. Es kann somit die Erstellung des Problemlösungsmodells abgeborchen <strong>und</strong><br />
ein neues begonnen werden. Hätte man hier eine „breadth-first“-Modellierung verfolgt wäre deutlich mehr<br />
Arbeit zur Modellierung vonnöten gewesen, bis man zu dieser Erkenntnis gekommen wäre.<br />
Strukturiertheit ist des Weiteren ein wichtiger Aspekt sowohl in der Programmierung als auch zunehmend in<br />
der Modellierung. Dijkstra hat Ende der 1960er Jahre erkannt, das goto-Anweisungen in Computerprogrammen<br />
zu komplizierten, nicht nachvollziehbaren Programmen führen [Dij68]. So wie goto-Anweisungen bei<br />
komplexen Programmen nicht nachvollziehbar sind, können flussorientierte Prozessmodellierungssprachen<br />
ebenfalls zu solchen unverständlichen Prozessmodellen führen. In [FL11] wurde die kognitive Komplexität