processus unifié développement de logicielsofiane.am.free.fr/perso/umlenpratique.pdfprocessus...
Post on 15-Nov-2020
5 Views
Preview:
TRANSCRIPT
Processus Unifiéde
développement de logiciel
2Cours GLPOO de Michel Futtersack
Plan
1. SUP : une simplification de RUP
2. Les éléments de modélisation de SUP
3. Description de la dynamique de SUP
4. SUP sur une étude de cas
3Cours GLPOO de Michel Futtersack
SUP : une simplification de RUP
Philippe Kruchten
www-306.ibm.com/software/awdtools/rup/
4Cours GLPOO de Michel Futtersack
Pourquoi utiliser un processus de développement logiciel ?
�planifier les travaux d'une équipe
�spécifier les artefacts à réaliser
�guider dans leurs tâches les développeurs
�offrir des critères et des outils pour le suivi et l'évaluation
5Cours GLPOO de Michel Futtersack
Structure logique de SUP : un processus à deux dimensions
6Cours GLPOO de Michel Futtersack
Les quatre éléments de modélisation
– les TRAVAILLEURS : le qui ?
– les ACTIVITÉS et les ÉTAPES D'ACTIVITÉS : le comment ?
– les ARTEFACTS : le quoi ?
– les ENCHAINEMENTS D'ACTIVITÉS : le quand ?
7Cours GLPOO de Michel Futtersack
Travailleur (worker)Rôle que doit tenir un individu dans le cadre du projet
Ressource Travailleur Activité
Paul
Marie
Vincent
Sylvie
Philippe
Concepteur
Auteur de cas d'utilisation
Auditeur du modèle de conception
Architecte
Conception objet
Description détaillée d'uncas d'utilisation
Inspection du modèlede conception
Analyse de l'architecturelogicielleConception de l'architecturelogicielle
8Cours GLPOO de Michel Futtersack
Activité "Trouver des cas d'utilisation et des acteurs"
1. trouver des acteurs
2. trouver des cas d'utilisation
3. décrire comment les acteurs et les cas d'utilisation interagissent
4. mettre les cas d'utilisation et les acteurs dans des paquetages
5. représenter le modèle de cas d'utilisation via des diagrammes de cas d'utilisation
6. préparer un examen du modèle de cas d'utilisation
7. évaluer les résultats
9Cours GLPOO de Michel Futtersack
Artefacts
�modèle (ex : un modèle de conception)
�élément de modèle (ex : un diagramme)
�document (ex : une étude de rentabilité, un CR de réunion)
�code source
�exécutable
10Cours GLPOO de Michel Futtersack
Ensembles d'artefacts
G : ensemble de gestion
E : ensemble des exigences
C : ensemble de conception
I : ensemble d'implantation
D : ensemble de déploiement
G E C I D G E C I D G E C I D G E C I D
Inception (Début) Elaboration Construction Transition
11Cours GLPOO de Michel Futtersack
Enchaînement d'activités (disciplines)
12Cours GLPOO de Michel Futtersack
Les 9 principaux enchaînements d’activités
13Cours GLPOO de Michel Futtersack
Les quatre phases du cycle de développement
�Début Décrire la vision du produit final �Élaboration Détailler les fonctionnalités�Construction Concevoir et implanter le produit�Transition Transmettre une version du produit aux utilisateurs
temps
Début Elaboration Construction Transition
Jalon "Objectif
du cycle de vie"
Jalon "Architecture
du cycle de vie"
Jalon "Capacité
opérationnelleinitiale"
Jalon"Livraison du
produit"
Version n
14Cours GLPOO de Michel Futtersack
Itérations, phases et cycles
Début Elaboration Construction Transition
itération #2
itération #1
itération #3
itération #4
itération #5
itération #6
itération #7
itération #8
première livraisoninterne (alpha)
première livraisonexterne (beta)
livraisonfinale (recette)
itération #8
D E C T Version 1
D E C T Version 2
D E C T
10% 30% 50% 10%
cycle de développement
initial cycled'évolution
cycled'évolution
15Cours GLPOO de Michel Futtersack
Les différents niveaux de modélisation Objet ?
Un programme orienté objet est un ensemble de classes. Comment définir ces classes ? De façon ITERATIVE.
1er diagramme de classesDécrire les objets métiers et leur relations
Perspective conceptuelle
2ième diagramme de classesDécrire les interfaces des classesAjouter les classes non métier
Perspective spécification
3ième diagramme de classesDécrire les parties privées
Perspective implantation
Les trois perspectives dans la modélisation objet (Martin Fowler) :
La phase de Début
� Activité 1: étude préliminaireResponsable :Analyste Système Artefact : Document de Vision
� Activité 2 : affectation des travailleursResponsable :Chef de projet informatique Artefact : Staff
� Activité 3 : planification du projetResponsable :Chef de projet informatique Artefact : Planning
La phase d’Élaboration� Activité 1: détailler les cas d’utilisationResponsable :Spécificateur de cas d’utilisation Artefacts :Diagramme
de cas d'utilisation, diagrammes d'activité� Activité 2 : Modélisation objet au niveau conceptuelResponsable :Concepteur Objet Artefact : Diagramme de classes
niveau conceptuel� Activité 3 : Modélisation objet au niveau spécification Responsable :Concepteur Objet Artefacts :Diagrammes de séquence
IHM<->Noyau, diagramme de classes au niveau spécification� Activité 4 : Réalisation d'une maquette d’IHMResponsable :Concepteur IHM Artefact : Maquette IHM� Activité 5 : Approfondir les technologiesResponsable :Testeur technologies Artefact : Dossier de tests
La phase de Construction
� Activité 1: Modélisation objet au niveau implantationResponsable :Concepteur Objet Artefact : Diagramme de classe au
niveau implantation
� Activité 2 : implanter une classeResponsable :Implémenteur Artefact : Code source commenté d'une
classe
� Activité 3 : test unitaireResponsable :Testeur de classe Artefact : Code source commenté de la
classe de test
� Activité 4 : tests d’intégrationResponsable :Intégrateur Artefact : Copies d'écran de l'exécution
correspondant aux scénarios
19Cours GLPOO de Michel Futtersack
La phase de Transition
� Activité 1: rédiger la procédure d’installationResponsable :Rédacteur technique Artefact : LisezMoi
� Activité 2 : réaliser un logiciel d'installationResponsable :Responsable du déploiement Artefact : Go
� Activité 3 : rédiger le manuel de l’utilisateurResponsable :Rédacteur technique Artefact : Manuel
20Cours GLPOO de Michel Futtersack
Démonstration de SUP sur une étude de cas : ComptoirFact
Le cahier des charges
ComptoirFact est un logiciel qui permet à l'utilisateur d'éditer et d'imprimer des factures émises par la société Comptoir. Chaque facture correspond à une commande d'un client. Les informations décrivant les clients, les commandes et les produits sont mémorisées dans une base de données ACCESS. On distingue trois types d'utilisateurs, qui devront s'identifier :1) l'administrateur : il peut uniquement modifier le mot de passe d'un employé. 2) le représentant: il peut éditer une nouvelle facture ou imprimer une facture existante. L'employé peut sauvegarder la facture et/ou demander à l'imprimer.3) le chef des ventes: il peut éditer, modifier, supprimer ou imprimer une facture. Il peut choisir un client et afficher une liste dont chaque ligne contient le numéro de la facture, le numéro de la commande, le nom et la quantité de chaque produit commandé et le montant total TTC de la facture. La seule modification que l'on peut faire sur une facture est l'ajout d'un pourcentage de remise exceptionnel sur le montant total hors taxe de cette facture.
ComptoirFact une application de type bureau fonctionnant sous Windows XP avec une architecture à deux niveaux : la base de données ACCESS Comptoir et un programme client écrit en Java.
22Cours GLPOO de Michel Futtersack
Phase Début :Activité 1 : décrire la vision du projet
23Cours GLPOO de Michel Futtersack
Phase Début :Activité 2 : affectation des travailleurs
24Cours GLPOO de Michel Futtersack
Phase Début :Activité 3 : Planning
�Attribuer une durée à chaque activité
�Indiquer les relations de précédence entre activités
�Indiquer les dates des réunions intermédiaires et revues de fin de phase
25Cours GLPOO de Michel Futtersack
Utiliser MS Project
26Cours GLPOO de Michel Futtersack
Phase Elaboration :Activité 1 : détailler les cas d’utilisation
Réaliser le diagramme de cas d'utilisation
Décrire TOUS les scénarios de chaque cas d’utilisation
Scénario standard, puis scénarii particuliers
1) Description textuelle2) Diagrammes d'activité
27Cours GLPOO de Michel Futtersack
Diagramme des cas d'utilisation de ComptoirFact
28Cours GLPOO de Michel Futtersack
Scénario standard "Créer une facture"
1) Le représentant choisit un nom de client 2) le système affiche les numéros des commandes non encore facturées de ce client3) Le représentant choisit un numéro de commande4) Le système affiche les coordonnées de l'entreprise Comptoir, les coordonnées du client, la date courante, la liste des noms et des quantités de chaque produit de la commande, le pourcentage de remise et le montant total hors taxe à payer pour ce produit (après avoir déduit la remise indiquée dans la table "Détails commandes"). Le système affiche également le montant total hors taxes de la facture.5) Si le pourcentage de taxe d'un produit n'est pas connu dans la table Produit, l'utilisateur doit le saisir. 6) Le système calcule le montant total TTC de chaque produit ainsi que le total TTC. 7) Le représentant peut imprimer la facture.
29Cours GLPOO de Michel Futtersack
Diagramme d'activité "Créer une facture"
30Cours GLPOO de Michel Futtersack
Scénarios secondaires de "Créer une facture"
Si le représentant veut créer plusieurs factures pour le même client, doit-il choisir le nom du client pour chaque nouvelle facture ?
Si le représentant s'aperçoit après l'affichage de la facture que ce n'est pas la bonne, peut-il revenir en arrière ? À quel niveau ?
Si toutes les commandes du client choisi ont déjà été facturées, est-ce que le système affiche un message ?
Ajouter des actions au scénario principal ou si celui-ci devient tropcompliqué (non visible sur une page A4) introduire des sous-scénarios
Deuxième version du scénario "Créer une facture"
32Cours GLPOO de Michel Futtersack
Exercice : Décrire sous forme textuelle le scénario complet du cas d'utilisation "Login"
33Cours GLPOO de Michel Futtersack
Correction
1) Le système affiche la fenêtre de Login2) l'utilisateur choisit son identifiant3) L'utilisateur saisit son mot de passe4) L'utilisateur valide le formulaire5) Si le mot de passe est incorrect
4.1) Le système pose une question à l'utilisateur4.2) L'utilisateur saisit la réponse4.3) Si la réponse est incorrecte
4.3.1) Le système affiche un message d'erreur4.3.2) Retour en 1)
6) Le système affiche la liste des actions accessibles au type d'utilisateur
Dessiner le diagramme d'activité correspondant
35Cours GLPOO de Michel Futtersack
Correction
Phase Elaboration :Activité 2 : Modélisation Objet au niveau conceptuel
37Cours GLPOO de Michel Futtersack
Est-ce qu'on va conserver en mémoire vive pendant toute la session la liste des clients avec toutes leurs caractéristiques ?
Et la liste des commandes détaillées (noms des produits et quantités) d'un client ?
Diagramme de classes niveau conceptuel 2ième version
39Cours GLPOO de Michel Futtersack
Les différentes catégories de classes
– Classes de données
– Classes génératrices de données
– Classes d'IHM
– Classes auxiliaires
40Cours GLPOO de Michel Futtersack
Phase Elaboration :Activité 3 : Modélisation Objet au niveau Spécification
1) Découvrir les classes "frontières" du noyau grâce aux diagrammes de séquence2) Décrire les données et services publics fournis par ces classes
Dessiner un diagramme de séquence décrivant le scénario de Login
41Cours GLPOO de Michel Futtersack
Diagramme de séquence de Login
42Cours GLPOO de Michel Futtersack
Interface de la classe frontière Login
Phase Elaboration :Activité 4 : réaliser la maquette d’IHM
top related