| |
Angenommene Spezifikation UML Ocl 2,0 5 7 Ocl-SprachcBeschreibung Dieses Kapitel stellt die Gegenstandbegrenzungssprache (OCL), eine formale Sprache vor, die verwendet wird, um Ausdrücke auf UML zu beschreiben Modelle. Diese Ausdrücke spezifizieren gewöhnlich unveränderliche Bedingungen, die für das System, das modelliert werden oder die Fragen halten müssen Übergegenstände beschrieben in einem Modell. Merken Sie, daß, wenn die OCL-Ausdrücke ausgewertet werden, sie nicht Nebenwirkungen haben; d.h.. ihre Auswertung kann nicht den Zustand des entsprechenden Durchführungssystems ändern. Ocl-Ausdrücke können verwendet werden, um Betriebe/Tätigkeiten zu spezifizieren, die, wenn sie durchgeführt werden, den Zustand des Systems ändern. UML modelers können OCL verwenden, um anwendungsspezifische Begrenzungen in ihren Modellen zu spezifizieren. UML-modelers können OCL zu auch verwenden spezifizieren Sie Fragen auf dem UML-Modell, die vollständig die unabhängige Programmiersprache sind. Dieses Kapitel ist informativ nur und nicht normativ. 7,1 Warum Ocl? Einem UML-Diagramm, wie ein Kategoriendiagramm, wird gewöhnlich nicht genug zum Bereitstellen aller relevanten Aspekte von a verfeinert Spezifikation. Es gibt unter anderem eine Notwendigkeit, zusätzliche Begrenzungen über die Gegenstände im Modell zu beschreiben. So Begrenzungen werden häufig in der natürlichen Sprache beschrieben. Praxis hat gezeigt, daß diese immer Mehrdeutigkeiten ergibt. Im Auftrag , um eindeutige Begrenzungen zu schreiben, sind sogenannte formale Sprachen entwickelt worden. Der Nachteil von traditionellem formale Sprachen ist, daß sie zu den Personen mit einem starken mathematischen Hintergrund verwendbar sind, aber schwierig für den Durchschnitt zu verwendendes Geschäfts- oder Systemmodeler. Ocl ist entwickelt worden, um diesen Abstand zu füllen. Es ist eine formale Sprache, die einfach zu lesen und zu schreiben bleibt. Es ist entwickelt worden als Geschäft hat das Modellieren von Sprache innerhalb der IBM-Versicherungsabteilung und seine Wurzeln in der Methode Syntropy. Ocl ist eine reine Spezifikationssprache; folglich wird ein OCL-Ausdruck garantiert, um ohne Nebenwirkung zu sein. Wenn Ocl-Ausdruck wird, es zurückbringt einfach einen Wert ausgewertet. Er kann nicht nichts im Modell ändern. Dies heißt daß der Zustand vom System ändert nie wegen der Auswertung eines OCL-Ausdruckes, obwohl ein OCL-Ausdruck sein kann verwendete zu spezifizieren eine Zustandänderung (z.B., in einem Pfosten-Zustand). Ocl ist nicht eine Programmiersprache; folglich ist es nicht möglich, Programm-Logik oder Steuerung des Datenflusses in OCL. You zu schreiben kann nicht Prozesse hervorrufen, oder zu aktivieren nicht-fragen Sie Betriebe innerhalb OCL. Weil OCL eine modellierende Sprache in der ersten ist setzen Sie, OCl-Ausdrücke sind nicht durch die vollziehbare Definition direkt. Ocl ist eine geschriebene Sprache, damit jeder OCL-Ausdruck eine Art hat. sich anpassen gut gebildet zu werden, muß ein OCL-Ausdruck zu den Artübereinstimmungrichtlinien der Sprache. Z.B. können Sie nicht eine Ganzzahl mit einer Zeichenkette vergleichen. Jeder Klassifikator definiert innerhalb eines UML-Modells stellt eine eindeutige OCL-Art dar. Zusätzlich umfaßt OCL einen Satz von Ergänzungs vorbestimmt Arten. Diese werden in Kapitel 11 beschrieben ("die OCL-Standardbibliothek"). Als Spezifikationssprache sind alle Implementierungsausgaben aus Bereich heraus und können nicht in OCL ausgedrückt werden. Die Auswertung eines OCL-Ausdruckes ist blitzschnell. Dies heißt, daß die Zustände der Gegenstände in einem Modell nicht ändern können während der Auswertung. 7,1,1 Wo man OCL verwendet Ocl kann für eine Anzahl von unterschiedlichen Zwecken verwendet werden: ? als Abfragesprache das ? zum Spezifizieren von invariants auf Kategorien und tippt das Kategorienmodell ein |  |
|
| |
|
|