350 likes | 794 Views
Specifications en Langage Z. Chapitre 7. Langage Z (Zed). Jean Raymond Abrial Annees 70 Oxford University Base sur les ensembles et les relations Largement utilise dans la communaute ‘’methodes formelles’’, EU Langage B Annees 90 Z + Concepts OO Ligne de metro a Paris. Specifier en Z.
E N D
Specifications en Langage Z Chapitre 7
Langage Z (Zed) Jean Raymond Abrial • Annees 70 • Oxford University • Base sur les ensembles et les relations • Largement utilise dans la communaute ‘’methodes formelles’’, EU Langage B • Annees 90 • Z + Concepts OO • Ligne de metro a Paris
Specifier en Z • Formuler specs en termes abstraits • Ensembles/ relations, sans souci de representation/ programmation • What vs How • Conception independante du langage
Ensembles en Z • Types de donnes usuels (sans souci de representation) • Types de donnees definis par l’usager • CITIZEN • DRIVER • LICENCE_NUMBER • REPLY = yes | No • STATUS = InUse | Free | OnHold | OutOfOrder • LIGHTS = Green | Orange | Red
Ensembles en Z • MAGHREB = TN | DZ | MA | MU | LY • homeland: MAGHREB • homeland = TN
i: integer; • i=10; • 5<i<15 vrai • 15<i<25 faux • i = ‘’hello world’’ illegal
Symboles d’Entrée/ Sortie • Entrée: ? Sortie: !
Relations en Z • Ensemble des Relations de X vers Y: • Declaration d’Une relation de X vers Y:
X={0,1} • Y={a,b} • XxY = {(0,a),(0,b),(1,a),(1,b)} • P(XxY)= • R est deterministe: chaque element de X a au plus une image. • R est totale: chaque element de X a au moins une image.
Fonctions en Z • Relations Deterministes: • Relations Deterministes et Totales:
Exemple de Specification en Z Gestion d’une bibliotheque • Gestion des ressources bibliographiques • Gestion des acquisitions • Gestion des suppressions (pertes, etc) • Gestion des emprunts • Gestion des abonnes
Donnees a maintenir • Livres que nous possedons • Livres disponibles a l’emprunt • Nombre par livre • Emprunts • Ensemble des abonnes
Declaration de l’espace • m: ensembles des abonnes, • t: date courante, • k: possessions de la bibliotheque • r: emprunts • s: livres disponibles a l’emprunt
r: PERSON BOOK • q: PERSON P(BOOK) • PERSON = {P1, P2, P3, P4} • BOOK = {B1, B2, B3} • r = {(P1,B1),(P1,B3),(P3,B1),(P3,B2)} • q = ? Quelle est la relation q qui correspond a la meme situation