On the Relationship between the Object Constraint Language (OCL) and the Java Modeling Language (JML)

Author(s):  
Ali Hamie
2001 ◽  
pp. 186-210 ◽  
Author(s):  
Franck Barbier ◽  
Brian Henderson-Sellers ◽  
Andreas L. Opdahl ◽  
Martin Gogolla

This study of the semantics of the Whole-Part relationship in OO modeling is based upon, extends and, specifically, formalizes earlier analyses of the semantics of UML’s Aggregation and Composition (white and black diamonds, also called shared aggregation and composite aggregation). Although UML is nowadays regarded as a standard and is widely used as an OO modeling language, the way the Whole-Part relationship is formalized is unsatisfactory. Here, we provide a rigorous specification of various forms of the Whole-Part relationship using OCL (Object Constraint Language). The first part of the specification is based on the differentiation between primary characteristics (applicable to all Whole-Part relationships) assigned to a new Whole-Part metatype in the UML and secondary features, which are possessed by subtypes of this metatype and permit the representation of several “flavors” of the Whole-Part relationship. This UML-compliant style of specification, based on the use of OCL as well as metamodeling, allows us to directly incorporate our results into the UML metamodel, in particular revising UML’s definition of Composition.


2015 ◽  
Vol 25 (03) ◽  
pp. 1640021 ◽  
Author(s):  
Nils Przigoda ◽  
Robert Wille ◽  
Rolf Drechsler

Modeling languages such as the unified modeling language (UML) or the systems modeling language (SysML) in combination with constraint languages such as the object constraint language (OCL) allows for an abstract description of a system prior to its implementation. But the resulting system models can be highly non-trivial and, hence, errors in the descriptions can easily arise. In particular, too strong restrictions leading to an inconsistent model are common. Motivated by this, researchers and engineers developed methods for the validation and verification of given formal models. However, while these methods are efficient to detect the existence of an inconsistency, the designer is usually left alone to identify the reasons for it. In this contribution, we propose an automatic method which efficiently determines reasons explaining the contradiction in an inconsistent UML/OCL model. For this purpose, all constraints causing the contradiction are comprehensibly analyzed. By this, the designer is aided during the debugging of his/her model.


Author(s):  
Nora Koch

Although the Unified Modeling Language (UML) is by now accepted as a standard and is widely used as an object-oriented modeling language, some languages such as Z or VDM are preferred to formally specify reference models. Here, we present a reference model for hypermedia systems in UML. It is an object-oriented and Dexter-based approach that uses UML to provide an intuitive graphical representation of the model. The class diagrams are supplemented with formal constraints in the Object Constraint Language (OCL), adding invariants on elements as well as preconditions and postconditions on operations. The result is an easily extendable reference model for describing specific hypermedia systems, for example, like adaptive or mobile systems. Our contribution shows how formal and semiformal object-oriented techniques can be integrated in the metamodeling process.


2006 ◽  
Author(s):  
Χρήστος Τρανώρης

Η αναβάθμιση της διαδικασίας ανάπτυξης εφαρμογών λογισμικού που αφορούν τον έλεγχο βιομηχανικών συστημάτων, είναι ένα θέμα που απασχολεί για δεκαετίες του μηχανικούς ελέγχου αλλά και τους μηχανικούς λογισμικού. Κατά την ανάπτυξη των βιομηχανικών εφαρμογών, οι μηχανικοί καλούνται να ικανοποιήσουν πληθώρα απαιτήσεων μεταξύ των οποίων: συμβατότητα με το υπάρχον εγκατεστημένο υλικό, συμβατότητα με τις ήδη εγκατεστημένες παλαιότερες εφαρμογές και επαναχρησιμοποίηση τμημάτων λογισμικού. Για τους παραπάνω λόγους, αναζητούνται συνεχώς λύσεις οι οποίες: θα προσφέρουν μια περισσότερο φιλική προς το μηχανικό ελέγχου διαδικασία ανάπτυξης η οποία θα υποστηρίζει επεκτασιμότητα των εφαρμογών, θα διευκολύνει την επαναχρησιμοποίηση τμημάτων του λογισμικού, θα ενισχύει την συντήρηση του λογισμικού και θα είναι ανεξάρτητη από το υλικό εκτέλεσης των βιομηχανικών συστημάτων. Η International Electrotechnical Commission (IEC) για να αντιμετωπίσει τις απαιτήσεις των σύγχρονων συστημάτων δημιούργησε το πρότυπο IEC61499 το οποίο έρχεται να επεκτείνει το Function Block του IEC61131. Το IEC61499, καθορίζει μια μεθοδολογία σχεδιασμού, όπου το Function Block είναι το βασικό δομικό συστατικό για την ανάπτυξη διαλειτουργικών κατανεμημένων εφαρμογών αυτοματισμού και ελέγχου. Οι εφαρμογές ελέγχου μπορούν να υλοποιηθούν από Function Block δίκτυα διασυνδέοντας τις εισόδους και εξόδους τους. Το IEC61499 προτείνει επίσης τον σχεδιασμό εργαλείων λογισμικού για την υποστήριξη (εν μέρει αυτοματοποίηση) της διαδικασίας ανάπτυξης. Στην παρούσα διατριβή, παρουσιάζεται μια νέα προσέγγιση για τον σχεδιασμό κατανεμημένων βιομηχανικών εφαρμογών και πιο συγκεκριμένα Συστημάτων Μέτρησης και Ελέγχου Βιομηχανικών Διεργασιών1 (IPMCSs) όπως τα ορίζει το πρότυπο IEC. Η προσέγγιση εστιάζει στον ορισμό μιας μεθοδολογίας για την φάση της ανάλυσης και κύρια την τεκμηρίωση των απαιτήσεων και τον μετέπειτα μετασχηματισμό του μοντέλου ανάλυσης σε μοντέλο σχεδιασμού. Η προτεινόμενη προσέγγιση βασίζεται σε κατάλληλα οριζόμενες έννοιες και τεχνικές και αξιοποιεί τελευταίες τάσεις από το χώρο της Μηχανιστικής Λογισμικού (Software Engineering), όπως είναι η έννοια της μετα-μοντελοποίησης (Meta-modeling) όπως αυτή ορίζεται στα πλαίσια της βασισμένης σε μοντέλα ανάπτυξης (Model Driven Development) και της Unified Modeling Language (UML) και των επεκτάσεων της (UML Profiles) και εφαρμογή αυτών στο σχεδιασμό βιομηχανικών εφαρμογών. Για την ομαλή μετάβαση από τις καταγεγραμμένες απαιτήσεις σε μοντέλα σχεδιασμού τεκμηριώθηκε και παρουσιάζεται ένα σύνολο κανόνων μετασχηματισμού το οποίο περιγράφηκε αυστηρά με χρήση της Object Constraint Language. Για να αξιοποιηθεί η προτεινόμενη προσέγγιση από μηχανικούς ελέγχου, σχεδιάστηκε και υλοποιήθηκε ένα εργαλείο λογισμικού συμβατό με το πρότυπο IEC61499. Το εργαλείο που έχει το όνομα CORFU ESS έρχεται να υποστηρίξει: α) την φάση της ανάλυσης, β) τον μετασχηματισμό του μοντέλου ανάλυσης σε μοντέλο σχεδιασμού, γ) τον σχεδιασμό εφαρμογών με Function Blocks όπως ορίζει το IEC61499, δ) την κατανομή των Function Block στις συσκευές των βιομηχανικών δικτύων και ε) τον έλεγχο των τελικών Function Block δικτύων. Η προσέγγιση εφαρμόσθηκε σε μελέτες περίπτωσης για να επιδείξει την εφαρμοσιμότητα της προτεινόμενης διαδικασίας, την αποτελεσματικότητα του εργαλείου που αναπτύχθηκε και την δυνατότητα της διαδικασίας και του εργαλείου να καλύψουν απαιτήσεις μικρής ή μεγάλης κλίμακας εφαρμογών.


Sign in / Sign up

Export Citation Format

Share Document