WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception d'un système de gestion de worlflow graphique.

( Télécharger le fichier original )
par MOMAR TALLA KANE
UCAD / Ecole Supérieure Polytechnique DAKAR - DIC Génie Informatique 2007
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

II. Présentation du langage UML

UML (Unified Modeling Language, « langage de modélisation objet unifié » en français) est un langage de description standard intégrant les avantages des différentes méthodes composantes (ainsi que celles d'autres analystes). Il a été normalisé par l'OMG en 1997. Rapidement devenu un standard incontournable, il donne une définition plus formelle à l'approche objet et lui apporte la dimension méthodologique qui lui faisait défaut.

Les créateurs d'UML ont tenu à ce qu'il tire le meilleur profit de ses principales méthodes composantes dont les caractéristiques suivantes sont confirmées :

· OOSE : expressive pour l'analyse des besoins grâce aux « cas d'utilisation » ;

· OMT : expressive pour l'analyse et la conception de systèmes à base de données ;

· Booch : expressive durant les phases de design et d'implantation des projets.

UML opte pour l'élaboration des modèles plutôt que pour une approche qui impose une barrière stricte entre analyse et conception : les modèles des deux activités ne diffèrent que par leur niveau de détail, il n'y a pas de différence dans les concepts utilisés.

Il n'introduit pas d'éléments de modélisation propres à une activité : le langage reste le même à tous les niveaux d'abstraction. L'élaboration encourage une approche non linéaire facilitant les retours en arrière entre niveaux d'abstraction différents.

Cependant, notons que UML a été construite afin de standardiser les artéfacts de développement (modèles, notation, diagrammes) sans pour autant standardiser la démarche, le processus de développement. De ce fait, UML est une notation, un langage qui permet de

« Mise en place d'un système de gestion de workflow : Paramétrage, suivi et représentation graphique » | Page 38

représenter des modèles mais il ne définit pas leur processus d'élaboration. En résumé, c'est

un formalisme et pas une méthode.

? Démarche préconisée

Les concepteurs d'UML préconisent l'utilisation d'une démarche qui soit :

- itérative et incrémentale,

- guidée par les besoins des utilisateurs du système,

- centrée sur l'architecture logicielle.

* Itérative et incrémentale

Il est évident que, pour modéliser (comprendre et représenter) un système

complexe, il vaut mieux procéder à une étude par étapes. Cette démarche devrait aussi

s'appliquer au cycle de développement dans son ensemble, en favorisant le prototypage.

Le but est de mieux maîtriser la part d'inconnu et d'incertitudes des systèmes. Si

l'itératif s'est imposé, c'est parce qu'il réduit la complexité de réalisation des phases, en

travaillant par approches successives et incrémentales. Il est alors possible de présenter

rapidement aux utilisateurs des éléments de validation. Chaque incrément ajoute de nouvelles

fonctionnalités. La difficulté réside dans le fait de combiner au final les sous projets ou

incréments et de respecter leurs interdépendances et la cohérence générale du produit

envisagé.

* Guidée par les besoins des utilisateurs

L'utilisateur est l'acteur principal lors de la définition des modèles. L'objectif étant de

répondre aux besoins des utilisateurs du système à concevoir, leurs besoins tracent les limites

et contours du futur système. Somme toute, ils déterminent sa nature.

Lors du cycle de développement, tout reste basé sur les exigences des utilisateurs :

- à la phase d'analyse, les besoins sont clarifiés, affinés et validés ;

- lors de conception et de réalisation, on veille à la prise en compte des besoins ;

- à la phase de test, on vérifie que les besoins sont satisfaits.

* Centrée sur l'architecture logicielle

Une architecture adaptée garantit le succès d'un développement. Elle décrit des choix

stratégiques qui déterminent en grande partie la qualité du logiciel (adaptabilité,

performances, fiabilité, etc.). Kruchten1 propose différentes perspectives indépendantes et

1 Model de Kruchten d'après Philippe Kruchten : model adopté dans le processus unifié

« Mise en place d'un système de gestion de workflow : Paramétrage, suivi et représentation graphique » | Page 39

complémentaires qui définissent un modèle d'architecture. Cette vue (« 4+1 ») a fortement inspiré UML :

Vue comportement Vue déploiement

Vue logique

Vue utilisateur

Vue implémentation

Figure 3.1 : Vue 4+1 définie par Kruchten

La vue logique se concentre sur l'abstraction et l'encapsulation. Elle modélise les mécanismes principaux du système, identifie les éléments du domaine et les liens qui les unissent. C'est la définition du système vue de l'intérieur. Elle explique comment peuvent être satisfait les besoins des acteurs. Il s'agit du « comment ».

La vue des composants montre l'allocation des éléments de modélisation dans des modules (fichiers sources, bibliothèques dynamiques, bases de données, exécutables, etc.). Elle identifie les modules qui réalisent physiquement les classes de la vue logique. Elle renseigne sur l'organisation des composants et leurs dépendances. Elle montre aussi l'organisation des modules en sous systèmes.

La vue des processus est la vue temporelle et technique. Elle montre la décomposition du système en termes de processus, les interactions entre les processus (communication), la synchronisation des activités parallèles.

La vue de déploiement décrit les ressources matérielles et la répartition du logiciel dans ces ressources. Elle précise la disposition, la nature physique et les performances des ressources ainsi que l'implantation des modules principaux sur les noeuds du réseau et les exigences en termes de performance.

La vue des besoins des utilisateurs guide toutes les autres vues et les unifient. Elle définit les besoins des clients et centre la définition de l'architecture du système sur la satisfaction de ces besoins. A l'aide de scénarios et de cas d'utilisation, cette vue conduit à la définition d'un modèle d'architecture pertinent. Elle motive les choix et force à se concentrer sur les problèmes importants. Il s'agit du « qui » et du « quoi ».

« Mise en place d'un système de gestion de workflow : Paramétrage, suivi et représentation graphique » | Page 40

? Les diagrammes UML

UML 2.0 comporte ainsi treize types de diagrammes représentant autant de vues distinctes pour représenter des concepts particuliers du système d'information. Ils se répartissent en deux grands groupes :

- Diagrammes structurels ou diagrammes statiques (diagramme de classes, d'objets, de composants, de déploiement, de paquetages, de structures composites)

- Diagrammes comportementaux ou diagrammes dynamiques (diagramme de cas d'utilisation, d'activités, d'états-transitions, d'interaction, de séquence, de communication, global d'interaction et de temps)

Ces diagrammes, d'une utilité variable selon les cas, ne sont pas nécessairement tous produits à l'occasion d'une modélisation.

? Diagramme de cas d'utilisation

Le diagramme de cas d'utilisation représente la structure des grandes fonctionnalités nécessaires aux utilisateurs du système. C'est le premier diagramme du modèle UML, celui où s'assure la relation entre l'utilisateur et les objets que le système met en oeuvre.

? Diagramme de classes

Le diagramme de classes est généralement considéré comme le plus important dans un développement orienté objet. Il représente l'architecture conceptuelle du système : il décrit les classes que le système utilise, ainsi que leurs liens, que ceux-ci représentent un emboîtage conceptuel (héritage) ou une relation organique (agrégation).

? Diagramme de séquences

Les diagrammes de séquences permettent de représenter des collaborations entre objets selon un point de vue temporel, on y met l'accent sur la chronologie des envois de messages. Les diagrammes de séquences peuvent servir à illustrer un cas d'utilisation.

? Diagrammes d'activités

UML permet de représenter graphiquement le comportement d'une méthode ou le déroulement d'un cas d'utilisation, à l'aide de diagrammes d'activités (une variante des diagrammes d'états transitions). Une activité représente une exécution d'un mécanisme, un déroulement d'étapes séquentielles. Le passage d'une activité vers une autre est matérialisé par une transition.

« Mise en place d'un système de gestion de workflow : Paramétrage, suivi et représentation graphique » | Page 41

Nous allons, dans le chapitre analyse et conception du système, utiliser certains de ces diagrammes pour analyser puis concevoir une solution qui réponde effectivement aux exigences de notre système.

UML n'étant pas une méthode, sa norme a été décrite en même temps qu'une méthode générique d'analyse et de conception des systèmes logiciels : le Processus Unifié. Synthèse de nombreuses méthodes et notations, le couple UML et Processus Unifié propose une approche pour conduire la réalisation de systèmes orientés objet depuis les spécifications jusqu'au déploiement. Aujourd'hui, il est à la base de nombreuses méthodes de travail utilisées dans les entreprises réalisant des logiciels. Nous allons nous appesantir sur cette méthode dite générique qui sera la nôtre.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous devons apprendre à vivre ensemble comme des frères sinon nous allons mourir tous ensemble comme des idiots"   Martin Luther King