Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
cnam:nfe114:secureuml [2024/06/04 20:13] – jcheron | cnam:nfe114:secureuml [2024/06/05 01:31] (Version actuelle) – [Exemples] jcheron | ||
---|---|---|---|
Ligne 17: | Ligne 17: | ||
Regroupent les permissions en fonction des responsabilités des utilisateurs. | Regroupent les permissions en fonction des responsabilités des utilisateurs. | ||
=== Permissions === | === Permissions === | ||
- | Actions autorisées que les rôles peuvent effectuer sur les objets du système. | + | Actions autorisées que les rôles peuvent effectuer sur les objets du système |
==== Diagrammes de Secure-UML ==== | ==== Diagrammes de Secure-UML ==== | ||
Ligne 72: | Ligne 72: | ||
Les permissions sont ensuite reliées aux cas d' | Les permissions sont ensuite reliées aux cas d' | ||
=== Secure Use case diagram === | === Secure Use case diagram === | ||
+ | < | ||
<uml> | <uml> | ||
@startuml | @startuml | ||
Ligne 106: | Ligne 107: | ||
</ | </ | ||
+ | < | ||
+ | == Source == | ||
+ | |||
+ | <sxh ; | ||
+ | @startuml | ||
+ | |||
+ | !define ROLE Actor | ||
+ | !define PERMISSION Actor/ # | ||
+ | |||
+ | ' Définition des rôles | ||
+ | ROLE Bibliothécaire | ||
+ | ROLE Membre | ||
+ | |||
+ | ' Définition des permissions | ||
+ | PERMISSION Lecture | ||
+ | PERMISSION Modification | ||
+ | PERMISSION Administration | ||
+ | |||
+ | ' Acteurs (rôles) et leurs permissions | ||
+ | Bibliothécaire -down-> Lecture : << | ||
+ | Bibliothécaire -down-> Modification : << | ||
+ | Bibliothécaire -down-> Administration : << | ||
+ | |||
+ | Membre -down-> Lecture : << | ||
+ | |||
+ | ' Cas d' | ||
+ | Lecture --> (Lire un livre) : << | ||
+ | Lecture --> (Emprunter un livre) : << | ||
+ | Lecture --> (Retourner un livre) : << | ||
+ | Modification --> (Ajouter un livre) : << | ||
+ | Modification --> (Modifier les informations sur un livre) : << | ||
+ | Modification --> (Supprimer un livre) : << | ||
+ | Administration --> (Gérer les emprunts) : << | ||
+ | |||
+ | @enduml | ||
+ | </ | ||
+ | |||
+ | === Secure Class Diagram === | ||
+ | |||
+ | < | ||
+ | < | ||
+ | |||
+ | !define ROLE Class | ||
+ | !define PERMISSION Class | ||
+ | |||
+ | note "<< | ||
+ | |||
+ | ' Définition des classes pour les rôles | ||
+ | ROLE Bibliothécaire << | ||
+ | ROLE Membre << | ||
+ | |||
+ | ' Définition des permissions | ||
+ | PERMISSION Lecture << | ||
+ | + read(unLivre): | ||
+ | + return(unLivre): | ||
+ | + borrow(unLivre): | ||
+ | } | ||
+ | PERMISSION Modification << | ||
+ | + add(): | ||
+ | + modify(): | ||
+ | + delete(): | ||
+ | } | ||
+ | PERMISSION Administration << | ||
+ | + manage(): | ||
+ | } | ||
+ | |||
+ | ' Association des rôles avec les permissions | ||
+ | Bibliothécaire -down-> Lecture : << | ||
+ | Bibliothécaire -down-> Modification : << | ||
+ | Bibliothécaire -down-> Administration : << | ||
+ | |||
+ | Membre -down-> Lecture : << | ||
+ | |||
+ | ' Classes du système | ||
+ | class Livre << | ||
+ | +title: String | ||
+ | +author: String | ||
+ | +ISBN: String | ||
+ | +getDetails(): | ||
+ | } | ||
+ | |||
+ | class Emprunt << | ||
+ | +startDate: Date | ||
+ | +endDate: Date | ||
+ | +isOverdue(): | ||
+ | } | ||
+ | |||
+ | class Bibliothèque << | ||
+ | +add(Livre): | ||
+ | +modify(Livre): | ||
+ | +delete(Livre): | ||
+ | +borrow(livre: | ||
+ | +return(emprunt: | ||
+ | +manage(List< | ||
+ | } | ||
+ | |||
+ | ' Permissions pour les méthodes de la classe Bibliothèque | ||
+ | Lecture --> Livre : << | ||
+ | Lecture --> Bibliothèque:: | ||
+ | Lecture --> Bibliothèque:: | ||
+ | |||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Livre : << | ||
+ | |||
+ | Administration --> Bibliothèque:: | ||
+ | Administration --> Emprunt : << | ||
+ | Lecture .. N1 | ||
+ | @enduml | ||
+ | </ | ||
+ | < | ||
+ | |||
+ | == Source == | ||
+ | |||
+ | <sxh ; | ||
+ | @startuml | ||
+ | |||
+ | !define ROLE Class | ||
+ | !define PERMISSION Class | ||
+ | |||
+ | ' Définition des classes pour les rôles | ||
+ | ROLE Bibliothécaire << | ||
+ | ROLE Membre << | ||
+ | |||
+ | ' Définition des permissions | ||
+ | PERMISSION Lecture << | ||
+ | + read(): execute | ||
+ | + return(): execute | ||
+ | + borrow(): | ||
+ | } | ||
+ | PERMISSION Modification << | ||
+ | + add(): | ||
+ | + modify(): | ||
+ | + delete(): | ||
+ | } | ||
+ | PERMISSION Administration << | ||
+ | + manage(): | ||
+ | } | ||
+ | |||
+ | ' Association des rôles avec les permissions | ||
+ | Bibliothécaire -down-> Lecture : << | ||
+ | Bibliothécaire -down-> Modification : << | ||
+ | Bibliothécaire -down-> Administration : << | ||
+ | |||
+ | Membre -down-> Lecture : << | ||
+ | |||
+ | ' Classes du système | ||
+ | class Livre << | ||
+ | +title: String | ||
+ | +author: String | ||
+ | +ISBN: String | ||
+ | +getDetails(): | ||
+ | } | ||
+ | |||
+ | class Emprunt << | ||
+ | +startDate: Date | ||
+ | +endDate: Date | ||
+ | +isOverdue(): | ||
+ | } | ||
+ | |||
+ | class Bibliothèque << | ||
+ | +add(Livre): | ||
+ | +modify(Livre): | ||
+ | +delete(Livre): | ||
+ | +borrow(livre: | ||
+ | +return(emprunt: | ||
+ | +manage(List< | ||
+ | } | ||
+ | |||
+ | ' Permissions pour les méthodes de la classe Bibliothèque | ||
+ | Lecture --> Livre : << | ||
+ | Lecture --> Bibliothèque:: | ||
+ | Lecture --> Bibliothèque:: | ||
+ | |||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Bibliothèque:: | ||
+ | Modification --> Livre : << | ||
+ | |||
+ | Administration --> Bibliothèque:: | ||
+ | Administration --> Emprunt : << | ||
+ | |||
+ | @enduml | ||
+ | </ | ||