• Keine Ergebnisse gefunden

Extracting frame conditions from operation contracts

N/A
N/A
Protected

Academic year: 2022

Aktie "Extracting frame conditions from operation contracts"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

2#1: 01%%$, 45# -/71(Hrsg.):6%"953!# )1;81##!81; &('., Lecture Notes in Informatics (LNI), Gesellschaft f¨ur Informatik, Bonn&('. +*

Extraktion von Frame Conditions aus Operation Contracts

Philipp Niemann1, Frank Hilken1, Martin Gogolla1, Robert Wille2

1 Einleitung und Hintergrund

Um die steigende Komplexit¨at heutiger Softwaresysteme mit modellbasierten Ans¨atzen zu beherrschen, hat sich dieUnified Modeling Language(UML) zusammen mit derOb- ject Constraint Language(OCL) zu einem de-facto Standard herausgebildet. UML/OCL erm¨oglicht die Beschreibung von Anforderungen an Verhalten und Struktur komplexer Systeme ohne dabei konkrete Implementierungsdetails zu verlangen. In den vergangenen Jahren wurden viele Verfahren zur Validation und Verifikation von UML/OCL-Modellen vorgestellt.

In dieser Arbeit wird die Beschreibung des Verhaltens mit Hilfe von Klassendiagrammen und dazugeh¨origerOperation Contracts(gegeben in OCL in Form von Vor- und Nachbe- dingungen) betrachtet [Me92]. Vor- und Nachbedingungen beschreiben die Funktionalit¨at einer Operation auf deklarative Weise. Sie schr¨anken Systemzust¨ande ein, in denen eine Operation ausgef¨uhrt werden darf, und beschreiben Eigenschaften, die der resultierende Systemzustand erf¨ullen muss. F¨ur Verifikationsverfahren ist aber außerdem von Bedeu- tung, welche Modellelemente zus¨atzlich zu diesen Bedingungen ver¨andert bzw. eben nicht ver¨andert werden d¨urfen.

Die Ermittlung eines konkreten Verhaltens einer Operation aus den gegebenen Operati- on Contracts wird in der Literatur alsFrame Problembezeichnet [BMR95]. Zur L¨osung des Problems, wurden verschiedene Beschreibungsmittel vorgeschlagen, welche die Vor- und Nachbedingungen um so genannteFrame Conditionserweitern [Ko13, BKW09]. Da- bei handelt es sich um zus¨atzliche Bedingungen, die Modellelemente angeben, welche bei der Ausf¨uhrung einer Operation ge¨andert werden d¨urfen. Durch die Angabe von Vor- und Nachbedingungen sowie Frame Conditions steht eine vollst¨andige Beschreibung der Funktionalit¨at einer Operation auf Modellebene zur Verf¨ugung.

1Department of Computer Science, University of Bremen, 28359 Bremen, Germany, {pniemann,fhilken,gogolla}@informatik.uni-bremen.de

2Insitute for Integrated Circuits, Johannes Kepler University Linz, 4040 Linz, Austria, robert.wille@jku.at Cyber-Physical Systems, DFKI GmbH, 28359 Bremen, Germany

(2)

2 Betrachtetes Problem und Beitrag

Die Erzeugung der Frame Conditions stellt allerdings eine zus¨atzliche Herausforderung dar, die bisher ¨uberwiegend manuell bew¨altigt werden muss – verbunden mit den entspre- chenden Kosten. In dieser Arbeit wird untersucht, inwiefern sich Frame Conditions auto- matisch aus den bereits gegebenen Vor- und Nachbedingungen extrahieren lassen. Dazu wird eine Methodik vorgestellt, die Elemente (Objektinstanzen, Attribute und Rollen) ei- nes gegebenen Modells automatisch einer der folgenden Kategorien zuordnet:

• Das Element istvariabel, d.h. kann w¨ahrend der Operationsausf¨uhrung ver¨andert werden.

• Das Element istunver¨anderlich, d.h. kann w¨ahrend der Operationsausf¨uhrung nicht ver¨andert werden.

• Das Element l¨asst sich nicht eindeutig zuordnen und muss manuell klassifiziert wer- den.

Ziel dieser Kategorisierung ist, den/die Entwerfer/-in bei der Erzeugung von Frame Condi- tions zu unterst¨utzen. Fallstudien zeigen, dass in der Tat ein Großteil der Modellelemente automatisch klassifiziert und damit die notwendigen Frame Conditions automatisch er- zeugt werden k¨onnen. Entwerfer/-innen m¨ussen anschließend nur f¨ur einen recht kleinen Teil von nicht eindeutig zuordbaren Modellelementen manuell entsprechende Bedingun- gen erg¨anzen. Dadurch wird die Produktivit¨at der modellbasierten Verifikation deutlich gesteigert.

3 Weitere Quellen

Die generelle Idee des Problems sowie der L¨osungsidee wird in [Ni15a] skizziert. Eine detaillierte Beschreibung des L¨osungsansatzes sowie eine Evaluation des Ansatzes findet sich in [Ni15b].

Literaturverzeichnis

[BKW09] Brucker, Achim D.; Krieger, Matthias P.; Wolff, Burkhart: Extending OCL with Null- References. In: MoDELS. S. 261–275, 2009.

[BMR95] Borgida, Alexander; Mylopoulos, John; Reiter, Raymond: On the Frame Problem in Pro- cedure Specifications. IEEE Trans. Software Eng., 21(10):785–798, 1995.

[Ko13] Kosiuczenko, Piotr: Specification of invariability in OCL - Specifying invariable system parts and views. Software and System Modeling, 12(2):415–434, 2013.

[Me92] Meyer, Bertrand: Applying Design by Contract. IEEE Computer, 25(10):40–51, 1992.

[Ni15a] Niemann, Philipp; Hilken, Frank; Gogolla, Martin; Wille, Robert: Assisted generation of frame conditions for formal models. In: DATE. S. 309–312, 2015.

[Ni15b] Niemann, Philipp; Hilken, Frank; Gogolla, Martin; Wille, Robert: Extracting frame con- ditions from operation contracts. In: MoDELS. 2015.

!' *(&%&## .&+$-"" +, -%)

Referenzen

ÄHNLICHE DOKUMENTE

Ein topologischer Raum (X, T ) heißt vollst¨ andig metrisierbar, falls der Raum (X, T ) metrisierbar ist und falls eine Metrik d auf X existiert, die die Topologie T induziert und

Sei M > 0 eine reelle Zahl, dann sind nur endlich viele Folgenglieder kleiner als M.. Da die Wahl von M dabei belanglos ist, hat man

Beim K.O.-System verliert bis auf den Gewinner jeder Teilnehmer genau einmal; jedes Spiel hat genau einen Verlierer. ein Spiel weniger als

[r]

In this section, we focus on the current density and spin accumulation near a finite contact between a half-infinite R2DEG and a half-infinite 2DEG (figure 3(a))5. The model we adopt

gegeben wurde und jetzt die naturlichen Zahlen mit vielen ih- rer Eigenschaften auch zur Verfugung stehen, konnen wir auch die viel anschaulichere Beschreibung endlicher

Nenne 4 Rechenoperationen mit ihren Umkehroperationen samt Beispielen. Die Umkehroperation einer Rechenoperationen hebt deren Wirkung

The fact that our German corpus annotation is based on frames and roles that were created for English raises the question of the applicability of frame semantic descriptions to