Vous êtes sur la page 1sur 37

Exemple de mise en uvre dUML

Une application de contrle des accs dun btiment

Exemple UML

Pierre-Alain Muller Pierre-

Description des besoins


Le btiment est divis en quatre zones : deux ailes de recherche, une aile de travaux pratiques, une aile pour ladministration et un corps central qui abrite les salles de cours et les deux amphithtres. Le site accueille environ 500 personnes tous les jours, en majorit des tudiants, mais aussi des enseignants, des chercheurs, du personnel administratif et technique, ainsi que de nombreux visiteurs.
Exemple UML Pierre-Alain Muller Pierre2

Description des besoins


Suite la disparition dobjets divers, il a t dcid de restreindre les accs certaines salles, au moyen de portes fermeture automatique. Louverture de chacune de ces portes est commande par un lecteur de badges plac proximit. Les badges qui permettent louverture des portes ne sont dlivrs quaux personnes qui doivent accder aux locaux protgs dans lexercice de leurs activits.
Exemple UML Pierre-Alain Muller Pierre3

Description des besoins


Les droits daccs sont allous entre les groupes de personnes et les groupes de portes, de sorte quune personne ou une porte doit toujours tre au moins dans un groupe (le sien). Un groupe de portes peut contenir des portes disperses dans tout le btiment. Une porte donne ne peut appartenir qu un seul groupe de portes.
Exemple UML Pierre-Alain Muller Pierre4

Description des besoins


Un superviseur est responsable pour la configuration initiale et pour la mise jour des diffrentes informations de dfinition des groupes de personnes et de portes. Un gardien dispose dun cran de contrle et est inform des tentatives de passages infructueuses. Les alarmes sont transmises en temps lgrement diffr : la mise jour de linformation sur lcran de contrle est effectue toutes les minutes.
Exemple UML Pierre-Alain Muller Pierre5

Description des cas dutilisation


Dtermination des limites du systme Recherche des acteurs
Superviseur Gardien Porteur

Superviseur Porteur de badge

Gardien

Exemple UML

Pierre-Alain Muller Pierre-

Description des cas dutilisation


P orteur de badge

S upervis eur

Contrle d'ac c s

Configurat io n

< < Us es > >

< < Us es > > Identific ation Gardien


Exemple UML

S urveillanc e
Pierre-Alain Muller Pierre7

Etude de la configuration
Un cas dutilisation est une abstraction dune partie du comportement du systme. Dcomposition en scnarios

Superviseur

Configuration

Exemple UML

Pierre-Alain Muller Pierre-

Identification
: Systme Login (mot de Vrification Autorisation

: Superviseur

Exemple UML

Pierre-Alain Muller Pierre-

Modification des portes


: Systme : Superviseur Modification d'une porte Liste des portes Choix d'une porte Informations de la porte

Modification des informations Information de la porte Sauvegarde des informations

Exemple UML

Pierre-Alain Muller Pierre-

10

Modification des personnes


: Systme : Superviseur Modification d'une personne Liste des personnes Choix d'une personne Informations de la personne Modification des informations

Informations de la personne Sauvegarde des informations

Exemple UML

Pierre-Alain Muller Pierre-

11

Cas dutilisation et scnarios principaux


Configuration
Identification Modification des portes Modification des personnes Modification des groupes de personnes Modification des groupes de portes Recherche dune personne en fonction dun badge Recherche des portes franchissables par une personne donne
Exemple UML Pierre-Alain Muller Pierre12

Cas dutilisation et scnarios principaux


Configuration
Recherche des groupes qui contiennent une personne donne Recherche des personnes qui appartiennent un groupe donn Modification des accs dun groupe de personnes un groupe de portes Modification dune semaine type Affichage des droits daccs dune personne pour une porte donne
Exemple UML Pierre-Alain Muller Pierre13

Cas dutilisation et scnarios principaux


Surveillance
Identification Rapport des vnements Purge des vnements Dtection des alarmes Ouverture manuelle des portes Incendie

Contrle daccs
Autorisation de passage
Exemple UML Pierre-Alain Muller Pierre14

Ralisation des cas dutilisation par des collaborations

Exemple UML

Pierre-Alain Muller Pierre-

15

Diffrentes sortes de classes


<<dispositif>> <<contrleur>> <<interface>> <<vue>> <<substitut>>
Utilisateur Systme <<Vue>> I_Personne <<Substitut>> Personne

Exemple UML

Pierre-Alain Muller Pierre-

16

Place de lutilisateur
2: LireMotDePasse 1: LireNom : Login : Superviseur

3: Vrifier (MotDePasse)

Superviseur : Personne
Exemple UML Pierre-Alain Muller Pierre17

Matrialisation des classes dIHM


: F_Login 4: Cacher ( ) 2: Lire (Nom, MotDePasse) 1: Afficher ( ) : Login

: F_Configuration 5: Afficher ( ) 3: Correct ? ( MotDePasse) Superviseur : Personne


Exemple UML Pierre-Alain Muller Pierre18

Diagramme de classes prliminaire


F_Login 1 Login

1 F_Configuration Personne

Exemple UML

Pierre-Alain Muller Pierre-

19

Comportement des objets login


Login Lecture nom entry: Invite nom Nom lu Nom ou mot de Lecture mot de passe passe entry: Invite mot de passe incorrect Mot de passe lu Vrification

Nom et mot de passe OK Connexion

Exemple UML

Pierre-Alain Muller Pierre-

20

Hirarchie des classes dIHM


Fentre Afficher( ) Cacher( )

F_Login
Exemple UML

F_Configuration
Pierre-Alain Muller Pierre-

...
21

Modification dune seule porte


4: Afficher (Porte slectionne) : F_Configuration : F_Porte 1: Afficher ( ) 2: Slection ( ) 3: Cacher ( )

5: Image ( ) 6: Valeur ( )

: L_Portes
Exemple UML Pierre-Alain Muller Pierre-

: Porte
22

Modification dun groupe de portes


4: Afficher (Porte slectionne) : F_Configuration : F_GroupeDePortes 1: Afficher ( ) 2: Slection ( ) 3: Cacher ( )

5: Image ( ) 6: Valeur ( )

: L_GroupeDePortes
Exemple UML Pierre-Alain Muller Pierre-

: GroupeDePortes
23

Modification des accs


4: Afficher ( ) 5: Accs ( ) : F_Configuration 1: Afficher ( ) 2: Slection ( ) 3: Cacher ( ) : L_GroupeDePersonnes : F_GroupeDePersonnes

Rsultat 2 6: Afficher ( ) 9: Afficher ( ) : F_Accs 7: Image ( ) 8: Valeur ( ) : Accs : GroupeDePersonnes

: F_Calendrier

: GroupeDePersonnes

10: Image ( ) 11: Valeur ( ) : GroupeDePortes : Calendrier

Exemple UML

Pierre-Alain Muller Pierre-

24

Ouverture des portes en cas dincendie


: F_Surveillance : Porte

Pour toute les portes Ouvrir ( ) fin

Exemple UML

Pierre-Alain Muller Pierre-

25

Diagramme des classes


Lecteur de badge Adresse Anti-retour Site 1 Temporisation Type d'vnements Veille 1 0..4000 Badge Validit Numro de site Numro de badge 1 Porte Numro de porte 1 Numro de salle * 1 GroupeDePortes Nom * Accs Calendrier * 1 Personne Prnom Nom * GroupeDePersonnes * Nom * * Semaine type

Exemple UML

Pierre-Alain Muller Pierre-

26

Analyse de lexistant
Horloge 1 Plage horaire 8 Lecteur de badge Adresse Anti-retour 1 1 Site Temporisation Type d'vnements 1 Veille 1 1 0..4000 Badge
Exemple UML Pierre-Alain Muller Pierre27

ToutOuRien 1 Evnement 0..100

Plages horaires
PlageHoraire SousPlage Dbut 3 Fin Jour

1 Droit
Exemple UML Pierre-Alain Muller Pierre28

Hirarchie des vnements


Evnement

Anomalie

Normal

Coupure secteur

Carte refuse

Carte accepte

Anti-retour

Hors plage

Lecteur en veille

Mauvais site

Non programme

Exemple UML

Pierre-Alain Muller Pierre-

29

Types de messages
Message

Simple
Exemple UML

Fixe
Pierre-Alain Muller Pierre-

Variable
30

Les messages simples


Message

Simple

Synchronisation
Exemple UML

Requte
Pierre-Alain Muller Pierre-

Commande simple
31

Les requtes
Requte

Req_Evnements

Req_Paramtres

Req_Horloge

Req_CartesValides

Req_CartesInvalides

Req_CodeSite

Exemple UML

Pierre-Alain Muller Pierre-

32

Architecture logicielle
Lecteur de badge <<Acteur>>

Superviseur

Porteur de badge Gardien


Exemple UML Pierre-Alain Muller Pierre33

Architecture logicielle (suite)

Superviseur Configuration

Lecteur de badge <<Acteur>>

Identification Surveillance

Contrle d'accs

Porteur de badge

Gardien

Exemple UML

Pierre-Alain Muller Pierre-

34

Architecture logicielle (suite)


IHM

Domaine

Utilitaires global

Persistance

Lecteur physique

Machine virtuelle

Exemple UML

Pierre-Alain Muller Pierre-

35

Architecture matrielle
PC superviseur {1} 1 <<RS422>> 1 Lecteur de badges Prcdent 1 {64} 1 Suivant <<RS422>>
Exemple UML Pierre-Alain Muller Pierre36

PC gardien {1}

<<RS422>>

Ralisation
Gnration du schma de la base de donnes partir des classes persistantes Gnration des crans par un constructeur dinterfaces graphiques Ralisation manuelle des interactions partir des diagrammes de collaboration

Exemple UML

Pierre-Alain Muller Pierre-

37

Vous aimerez peut-être aussi