Un processus simplifi pour le dveloppement des applications

  • Slides: 25
Download presentation
Un processus simplifié pour le développement des applications web 1

Un processus simplifié pour le développement des applications web 1

Problématique Le problème fondamental auquel on s’efforce de répondre est finalement assez simple :

Problématique Le problème fondamental auquel on s’efforce de répondre est finalement assez simple : comment passer des besoins des utilisateurs au code de l’application ? 2

Processus simplifié § Le processus à suivre tout au long de ce travail §

Processus simplifié § Le processus à suivre tout au long de ce travail § conduit par les cas d’utilisation, comme UP, mais beaucoup plus simple § relativement léger et restreint, comme les méthodes agiles, mais sans négliger les activités de modélisation en analyse et conception § fondé sur l’utilisation d’un sous-ensemble nécessaire et suffisant du langage UML § Référence: Pascal Roques, UML 2 Modéliser une application web, Eyrolles, 4 e édition, 2008 § Etude de cas: Une librairie en ligne (je. Bouquine) 3

Processus simplifié • Schéma complet du processus de modélisation d’une application web 4 UML

Processus simplifié • Schéma complet du processus de modélisation d’une application web 4 UML 2 : Modéliser une application web UML 2

Spécification des exigences d’après les cas d’utilisation 5

Spécification des exigences d’après les cas d’utilisation 5

Spécification des exigences d’après les cas d’utilisation 6 UML 2 : Modéliser une application

Spécification des exigences d’après les cas d’utilisation 6 UML 2 : Modéliser une application web UML 2

Spécification des exigences d’après les cas d’utilisation § Cas d’utilisation et maquette ü Dans

Spécification des exigences d’après les cas d’utilisation § Cas d’utilisation et maquette ü Dans un premier temps, les besoins vont être modélisés au moyen des cas d’utilisation UML. ü Ils seront représentés de façon plus concrète par une maquette d’IHM (Interface Homme-Machine) destinée à faire réagir les futurs utilisateurs. 7

Spécification des exigences d’après les cas d’utilisation (2) § Diagramme de cas d’utilisation ü

Spécification des exigences d’après les cas d’utilisation (2) § Diagramme de cas d’utilisation ü montre les interactions fonctionnelles entre les acteurs et le système à l’étude ü Acteurs et cas d’utilisation sont les concepts UML fondamentaux pour la spécification des exigences ü Ils sont identifiés à partir de l’expression initiale des besoins de l’étude de cas § La maquette ü montre rapidement l’aspect visuel (le « look » ) du site web 8

Acteur § Un acteur représente un rôle joué par une entité externe (utilisateur humain,

Acteur § Un acteur représente un rôle joué par une entité externe (utilisateur humain, dispositif matériel ou autre système) qui interagit directement avec le système étudié. § Un acteur peut consulter et/ou modifier directement l’état du système, en émettant et/ou en recevant des messages susceptibles d’être porteurs de données 9

Cas d’utilisation § Un cas d’utilisation (use case) représente un ensemble de séquences d’actions

Cas d’utilisation § Un cas d’utilisation (use case) représente un ensemble de séquences d’actions qui sont réalisées par le système et qui produisent un résultat observable intéressant pour un acteur particulier § Un cas d’utilisation modélise un service rendu par le système. Il exprime les interactions acteurs/système et apporte une valeur ajoutée « notable » à l’acteur concerné 10

Démarche de construction du modèle des cas d’utilisation Les différentes étapes de la démarche

Démarche de construction du modèle des cas d’utilisation Les différentes étapes de la démarche adoptée afin d’aboutir au modèle des cas d’utilisation § identifier les acteurs, § identifier les cas d’utilisation, § structurer les cas d’utilisation en packages, § ajouter les relations entre cas d’utilisation, § finaliser un ou plusieurs diagramme(s) de cas d’utilisation par package 11

12

12

Identification des acteurs § Identifier chaque acteur § Représentation graphique 13

Identification des acteurs § Identifier chaque acteur § Représentation graphique 13

Identification des cas d’utilisation § Pour chaque acteur identifié précédemment, on cherche les différentes

Identification des cas d’utilisation § Pour chaque acteur identifié précédemment, on cherche les différentes intentions « métier » selon lesquelles il utilise le système § Un cas d’utilisation doit être relié à au moins un acteur § Il faut bien comprendre que chaque cas d’utilisation doit avoir un objectif en soi et pouvoir être réalisé indépendamment des autres 14

Acteurs principales Acteurs secondaires 15

Acteurs principales Acteurs secondaires 15

Structuration en packages § Afin d’améliorer le modèle § Les cas d’utilisation sont regroupés

Structuration en packages § Afin d’améliorer le modèle § Les cas d’utilisation sont regroupés en ensembles fonctionnels cohérents § En utilisant le concept général d’UML, le package § Le package est un mécanisme général de regroupement d’éléments en UML, qui peut être utilisé par exemple pour regrouper des cas d’utilisation, mais aussi des acteurs, des classes, etc. 16

Structuration en packages Organisation des cas d’utilisation et des acteurs en packages (avec l’outil

Structuration en packages Organisation des cas d’utilisation et des acteurs en packages (avec l’outil Enterprise Architect) 17

Affinement du modèle de cas d’utilisation 18

Affinement du modèle de cas d’utilisation 18

Affinement du modèle de cas d’utilisation (2) 19

Affinement du modèle de cas d’utilisation (2) 19

Exemple de cas d’utilisation 20

Exemple de cas d’utilisation 20

Relation entre cas d’utilisation § Pour affiner le diagramme de cas d’utilisation, UML définit

Relation entre cas d’utilisation § Pour affiner le diagramme de cas d’utilisation, UML définit trois types de relations standardisées entre cas d’utilisation : § Une relation d’inclusion, formalisée par le mot-clé <<include>> : le cas d’utilisation de base en incorpore explicitement un autre, de façon obligatoire § Une relation d’extension, formalisée par le mot-clé <<extend>> : le cas d’utilisation de base en incorpore implicitement un autre, de façon optionnelle § Une relation de généralisation/spécialisation : les cas d’utilisation descendants héritent de la description de leur parent commun. Chacun d’entre eux peut néanmoins comprendre des interactions spécifiques supplémentaires 21

Types de relations § Association (trait plein avec ou sans flèche, entre acteurs et

Types de relations § Association (trait plein avec ou sans flèche, entre acteurs et cas d’utilisation § Dépendance (flèche pointillée) entre cas d’utilisation, avec les mots-clés «extend» ou «include» § Relation de généralisation (flèche fermée vide) entre cas d’utilisation 22

Cas d’utilisation de second rang § « fragment » Il ne représente pas un

Cas d’utilisation de second rang § « fragment » Il ne représente pas un objectif à part entière du client, mais plutôt un objectif de niveau intermédiaire üExemple: S’authentifier § Secondaires üExemple : Consulter l’aide en ligne 23

Cas d’utilisation de second rang (2) § Pour bien structurer l’expression de besoin, il

Cas d’utilisation de second rang (2) § Pour bien structurer l’expression de besoin, il est préférable d’isoler les cas d’utilisation de second rang dans un package à part, intitulé UC de second rang 24

25

25