03.08.2013 Views

Rapport de fin de phase I - Haute école du paysage, d'ingénierie et ...

Rapport de fin de phase I - Haute école du paysage, d'ingénierie et ...

Rapport de fin de phase I - Haute école du paysage, d'ingénierie et ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

context Mongolfiere.lacherLest(quantite : Poids) post :<br />

self.poids = self.poids@pre - quantite<br />

context Company ::hireEmployee(p : Person)<br />

pre: not employee->inclu<strong>de</strong>(p)<br />

post: employee->inclu<strong>de</strong>(p) and<br />

stockprice() = stockprice@pre() + 10<br />

Opérateur d’implication<br />

A implies B Si A est faux la condition est vraie<br />

Si A est vrai <strong>et</strong> B est vrai, la condition est vraie<br />

Si A est vrai <strong>et</strong> B est faux, la condition est fausse<br />

context Personne inv :<br />

estUnCon<strong>du</strong>cteur = vrai implies age > 18<br />

Opérations prédé<strong>fin</strong>ies<br />

OCL dé<strong>fin</strong>it cinq opérations qui peuvent être appliquées à tous les obj<strong>et</strong>s.<br />

oclInState<br />

Syntaxe : oclInState(s : oclState) : booléen<br />

L’expression est vraie si l’obj<strong>et</strong> est dans l’état « s » sinon elle est fausse. Les valeurs <strong>de</strong> « s »<br />

sont les noms <strong>de</strong>s états dé<strong>fin</strong>is dans l’automate d’états associé au classificateur <strong>de</strong> l’obj<strong>et</strong>. Le<br />

symbole « :: » perm<strong>et</strong> <strong>de</strong> présenter <strong>de</strong>s états imbriqués (<strong>et</strong>at_parent ::<strong>et</strong>at_enfant).<br />

oclIsNew<br />

Syntaxe : oclIsNew : booléen<br />

C<strong>et</strong>te expression est utilisée dans une post-condition ; elle est vraie si l’obj<strong>et</strong> est créé<br />

lors <strong>de</strong> l’exécution <strong>de</strong> l’opération.<br />

oclAsType<br />

Syntaxe : oclAsType(t : oclType) : instance d’oclType<br />

22.06.2005 18/78

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!