les diagrammes d'activitÉs
TRANSCRIPT
![Page 1: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/1.jpg)
1
Isima
Chapitre 8
LES
DIAGRAMMES
D'ACTIVITÉS
![Page 2: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/2.jpg)
2
Isima
[pas de café] [pas de soda]
[sodatrouvé]
[café trouvé]
[plus de gouttes]
Boire
Trouverà boire
Mettre cafédans filtre
Mettre filtreds cafetière
Mettre eau ds réservoir
Allumerla cafetière
Attendre
Trouverune tasse
Prendrebouteille
soda
Servircafé
EXEMPLE
![Page 3: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/3.jpg)
3
Isima
Christine FORCE
SPECIFICATIONDES BESOINS
ANALYSE
CONCEPTIONde l’architecture
TESTS
IMPLEMENTATION
Modélisationdes
traitements
Modélisationdes
processus métier
DIAGRAMMES D’ACTIVITES
![Page 4: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/4.jpg)
4
Isima
DIAGRAMMES D’ACTIVITES
S’intéressent aux étapes d’une tâche complexe à acco mplir.
Modélisent les processus : enchaînements d’activités .
Décrivent le flot de contrôle entre activités.
S’utilisent à plusieurs niveaux :
Processus m étiers de haut niveau (par exemple étude de l’existant).
Alternative aux diagrammes de séquences pour décrire un cas d’utilisation.
Description des délégations entre objets dans un système logiciel.
Description d’algorithmes (difficultés pour décrire de s algorithmes complexes)
![Page 5: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/5.jpg)
5
Isima
DOMAINE D'APPLICATION
Processus m étier :
Le système (d'information, industriel),
Un sous-système,
Cas d’utilisation
Description d’une famille de scénarios,
Enchaînements d’écrans dans une IHO,
Logique complexe
d'une opération, ou d'une classe,
d'une collaboration (la dynamique d’un ensemble d’objets).
Processus m étier
commande
Produit
Expédition
![Page 6: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/6.jpg)
6
Isima
EXEMPLE : PROCESSUS INDUSTRIEL
palette
lecteur code barres
Aire de stockage
Aire de stockage
convoyeur
![Page 7: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/7.jpg)
7
Isima
[Saturation][emplacement
disponible]
[incident]
[interventionopérateur terminée]
[OK]
RANGEMENT D’UNE
PALETTE
Ejecter
Lire codebarre
DéterminerEmplacement
Mettreà Jour BD
Activer Automate
AfficherRangement
Effectué
AfficherAppel
Opérateur
AfficherOpérationterminée
Nœud de décision
Synchronisation(concurrence)
Activitédécomposée
synchronisation(rendez-vous)
Nœud defusion
garde
![Page 8: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/8.jpg)
8
Isima
DIAGRAMMES D’ACTIVITÉS
Syntaxe proche des diagrammes d’états
Contiennent :
Des activités ( peuvent se redécomposer
en un autre diagramme d’activités)
Des actions (non décomposables) et des attentes,
Des transitions automatiques : le flot de contrôle reste dans l’activité jusqu’à ce que le traitement soit ter miné.
Des nœuds de décision (associés à des gardes) et de fusion,
Des barres de synchronisation
Des objets (pour monter qui est modifié par une action) .
![Page 9: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/9.jpg)
9
Isima
DIAGRAMMES D’ACTIVITÉS
Un nœud de décision est représenté par un losange d’oùpartent toutes les alternatives obligatoirement exclus ives.
Un autre losange (nœud de « fusion ») matérialise la fu sion des branches d’une décision.
Une barre de synchronisation spécifie le parallélisme : en sortie d’une barre on indique plusieurs flots de contrô les concurrents.
à l’exécution du système, ces activités peuvent être physiquement concurrentes, séquentielles ou entrela cées.
Une autre barre de synchronisation représente le rendez -vous entre flots de contrôles parallèles : la barre n’ est franchie que lorsque chaque flot amont est terminé.
Etat initial et final peuvent être représentés sur l e diagramme.
![Page 10: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/10.jpg)
10
Isima
DIAGRAMMES D’ACTIVITÉS
Les itérations sont représentées par une « région d’expansion » : partie d’un diagramme où les actions so nt exécutées pour tous les éléments d’une collection.
Les actions peuvent être concurrentes ou itératives .
Le symbole ⊗⊗⊗⊗ représente un flux qui s’arrête même si l’activité n’est pas finie (exemple : dans une collec tion on rejette un élément).Les diagrammes peuvent être découpés en partitions (s wimlanes), pour montrer les différentes responsabilités d ans un mécanisme ou une organisation.
Chaque responsabilité assurée par un objet est allou ée à une partition donnée.La position relative des partitions n’est pas signi ficative, les transitions peuvent traverser librement les frontiè res.Les partitions peuvent être représentées en couloir s ou en damiers.
![Page 11: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/11.jpg)
11
Isima
REGION D’EXPANSION
bon mauvais
itérative
Traitercommande
Vérifierproduit
Attribuerproduit
Vérifierclient
Validercommande
Annulercommande
Expédiercommande Flux final : met fin à la
branche, mais pas aux activité concurrentes
Notation pour une activitédécomposée
Région d’expansion :traitement d’une collection d’objets qui peut être itératif ou parallèle.
Brochede sortie
![Page 12: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/12.jpg)
12
Isima
PARTITIONS
objet
État de l’objet
Partition
![Page 13: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/13.jpg)
13
Isima
ENVOI ET RÉCEPTION DE SIGNAUX
Attendreauthentification
authentifier
reprendre
:ContrôleurSécurité /send ContrôleurSécurité.
Authentifier ( )
Autre représentation
suite
Annuleropération
20s
Envoi d'un signal
Objetémetteur oudestinataire(facultatif)
Réception d'un signal
Attente (délai)
Attendreauthentification
![Page 14: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/14.jpg)
14
Isima
MODÉLISATION DES FLUX
Établir l’objectif.
Sélectionner les objets qui ont les responsabilités de haut niveau.
Identifier les pré-conditions de l’état initial et les post-conditions de l’état final.
Spécifier les actions et les placer sur le diagramm e.
Regrouper en Action Composite les actions complexes ou les ensembles d’actions qui apparaissent à plusieurs rep rises et développer un diagramme d’activités pour chacun.
Tracer les transitions. Commencer avec les flux séq uentiels, puis les branchements et enfin les flux parallèles.
Insérer les objets importants dans les diagrammes.
Montrer les changements de valeur et d’état utiles à la compréhension de l'objectif.
![Page 15: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/15.jpg)
15
Isima
EXERCICE 1 : organisation d’un examen
Le service scolarité :planifie l’examen, prépare les copies, puis, une fois l’examen corrigé, saisit et affiche le s notes,et archive les copies.
L’enseignant prépare un sujet et corrige les copies.Les étudiants rédigent une solution et prennent connaissance de leur note après affichage.Rédiger un diagramme d’activités (en remettant les cho ses dans l’ordre).
![Page 16: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/16.jpg)
16
Isima
Exercice 2 : AtelierPour créer une fiche de réparation, le chef d’ateli er saisit les critères de recherche de voitures dans le système.Le logiciel de gestion des réparations lui donne la liste des voitures correspondant aux critères entrés.Si la voiture existe dans la liste, le chef d’ateli er va sélectionner la voiture. Le logiciel va, ensuite, fournir les informations s ur le véhicule.Si la voiture est sous garantie, le chef saisit la date de demande de réparation.Si la voiture n’existe pas, le chef saisit les info rmations concernant ce
nouveau véhicule.Dans tous les cas, le chef d’atelier entre la date de réception et de restitution.Si le dommage de la voiture est payé par l’assurance , le logiciel fournit une liste d’assurances au chef d’atelier.Ce dernier sélectionne l’assurance adéquate.Enfin, le logiciel enregistre la fiche de réparatio n.
![Page 17: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/17.jpg)
17
Isima
AUTRE FORMALISME : RESEAU DE PETRI
entrée palette
saturation
Mettreà Jour BD
Activer Automate
IncidentEjecter
AppelerOpérateur
RangementEffectué
Opérationterminée
![Page 18: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/18.jpg)
18
Isima
AUTRE FORMALISME : SADT / IDEF0
Lire code barre
ActiverAutomates
Ejecter
Rangement
AppelerOpérateur
E1 : palettesaturation
M1 : PC
M2 : automate
C1 : état du stock
incident
S2 : opérationterminée
S1 : palette éjectée
Calculer emplacement
Mettreà Jour BD
![Page 19: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/19.jpg)
19
Isima
Chapitre 8
LA CONCEPTION
![Page 20: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/20.jpg)
20
Isima
L’ACTIVITÉ DE CONCEPTION
La spécification et l’analyse des besoins ont
permis de définir le système à construire (Quoi).
L’activité de conception, s’intéresse à la façon de
construire le système (Comment).
Elle vise à construire une solution qui est
conforme aux besoins du système
![Page 21: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/21.jpg)
21
Isima
CONCEPTION
Organiser le développement,
Concevoir et documenter précisément la solution
informatique (le code),
Passer de l’analyse objets à l’architecture,
Combiner les différents points de vue de la
modélisation pour obtenir les détails de
fabrication en langage objets,
Répondre à toutes les questions qui concernent
la manière de réaliser le système.
![Page 22: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/22.jpg)
22
Isima
CONCEPTION
Définition des classes à implémenter, en utilisant :
Les diagrammes de classes d’analyse pour préciser la structure des classes techniques :
� Concevoir les associations,
� Concevoir les attributs (sdd, conteneurs),
� Définir les m éthodes.
� Intégrer patrons (design patterns) et composants sur étagère (COTS).
Les diagrammes d’interactions (communication entre o bjets),
Les diagrammes d’activités (délégations entre objets , méthodes).
![Page 23: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/23.jpg)
23
Isima
ARCHITECTURE
Organisation des classes de conception en configuratio n logicielle : paquets sous-systèmes (cohésion, couplage).
Séparation des responsabilités :La présentation,
La logique applicative (services),
Le domaine métier,
L’accès aux données.
![Page 24: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/24.jpg)
24
Isima
ARCHITECTURE
Passage du modèle objets au modèle physique (soluti ons qui traduisent des choix techniques) :
Type d’architecture (clients/serveur, n tiers…),
Localisation des composants (nœuds du réseau),Migration des objets.
![Page 25: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/25.jpg)
25
Isima
LA PERSISTANCE
Type de gestion de données.Retouche du diagramme de classes :
Objets volumineux,Chargement trop long,Navigation,Persistance trop étendue,
Transformation de l'héritage (cohérence du modèle et navigabilité).Transformation des associations (requêtes, contrainte s d’intégrité, économies de stockage).Passage au modèle relationnel (Cf. annexe 3 poly 1) .
![Page 26: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/26.jpg)
26
Isima
Chapitre 9
CLASSES NOTATIONS AVANCEES
![Page 27: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/27.jpg)
27
Isima
INTERFACES
egalA()superieurA()inferieurA()differentDe()
« interface »comparableEquipe « realize »
Joueur« realize »
Equipe
Joueur
comparable
comparable
![Page 28: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/28.jpg)
28
Isima
NAVIGABILITE DES ASSOCIATIONS
notation
Source Cible Centurion CampRomain1 1
dirige ����
Exemple
![Page 29: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/29.jpg)
29
Isima
CLASSES GENERIQUES
Elément
Généricité : classe paramétrée
Classe Générique
Paramètregénérique
formelAnnuaire
<personne>
«bind»<personne>
Table générique
![Page 30: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/30.jpg)
30
Isima
STEREOTYPES
«métaclasse»TypeXX
«utilitaire»Maths
«interface»Runnable
exemple : les classes d’analyse de Jacobson
boundary(classe d’IHO)
control entity(classe métier)
![Page 31: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/31.jpg)
31
Isima
TECHNIQUES DE CONCEPTION
![Page 32: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/32.jpg)
32
Isima
EXEMPLE : MEDUSE
: FenêtreEmprunt
: ctrlEmprunt : Lecteur
emprunter ()
demNumAdh ()
new (numAdh)
estOK(numAdh)
cherchAdhParNum(numAdh)
numAdh
Etc.
:AccèsDonnéesLecteur
![Page 33: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/33.jpg)
33
Isima
Chapitre 10
DIAGRAMMES DE
COMMUNICATION
(COD)
![Page 34: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/34.jpg)
34
Isima
DIAGRAMMES DE COMMUNICATION
objet1:ClasseA
objet2:ClasseA
objet4:ClasseC
1: message1()
2: [garde] message2()3: message3()
4: * message4()
objet3:ClasseBobjet3:
ClasseB
![Page 35: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/35.jpg)
35
Isima
EXEMPLES
a : A
CopieDeB : B{transient}
b : B{destroy}
2 : Effacer
1: Copier
: Commande
:LigneProduit
Client
1 : new
2 : * new
![Page 36: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/36.jpg)
36
Isima
: Cabine
: Moteur
: Superviseur
1: PréparerAPartir()
3 : *Fermer ()
2 : Allumer ()
6 : Démarrer ()
4 : Fermée
5 : prête
Appeler()
: Porte
Ascenseur :: appel
EXEMPLE
: Lampe
![Page 37: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/37.jpg)
37
Isima
COMPARAISON COMMUNICATION/SEQUENCES
: Commande
: Fenêtre Saisie
Commande
: LigneCommande
: Livraison
1: préparer ()
2 *: préparer ()
: Article en Stock
3 : estEnStock ()4: besoinDeRéapprovisionner ()
: Réapprovision-nement
5 : new6 : new
cf. diag de séquences poly 1
![Page 38: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/38.jpg)
38
Isima
PATRON OBSERVER
Subject
attach (observer)detach (observer)notify ( )
ConcreteSubject
attach (observer)detach (observer)notify ( )getInfo ( )
Observer
update( )
ConcreteObserver
update ( )
0..*
![Page 39: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/39.jpg)
39
Isima
sujet:ConcreteSubjectObservateur:
ConcreteObserver
utilisateur:Utilisateur
4 - * upDate ()
1 - attachObserver()6 - detachObserver()
{déclenchées par la création (resp. la destruction) de l’Observer}
2 – modifierDonnées
LE PATRON OBSERVER
5 – getInfo ()3 - notify
![Page 40: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/40.jpg)
40
Isima
REPRÉSENTATION DE LA COLLABORATION
![Page 41: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/41.jpg)
41
Isima
EXERCICE
Au lieu de faire la queue pour affranchir vos lettre s, vous préférez utiliser le distributeur automatique, il faut :
Initialiser le distributeur (p. ex. un bouton sur l ’écran tactile)
Poser une lettre sur la balance,
Choisir le tarif d’expédition sur l’écran tactile,
L’écran affiche alors le prix et demande si d’autre s lettres sont àaffranchir.
Si oui, le même scénario se répète (à partir de pose r une lettre),
Sinon il faut payer : le montant total s’affiche et vous devez introduire les pièces.
La monnaie est rendue et les vignettes sont délivré es.
NB : Représenter le distributeur sous forme de plus ieurs objets.
![Page 42: LES DIAGRAMMES D'ACTIVITÉS](https://reader036.vdocuments.net/reader036/viewer/2022062420/62ae9fb13723f72947211214/html5/thumbnails/42.jpg)
42
Isima
Distributeur
Balance Ecran MonnayeurClavier
Client*1 sert >
Vignette
1..*
achètev
distributeur
vendrevignettes