Processus d'un projet

tonguescurlySoftware and s/w Development

Nov 17, 2012 (4 years and 11 months ago)

341 views

Processus d'un projet
Processus d'un projet
F.Pfister (francois.pfister@ema.fr)
F.Pfister (francois.pfister@ema.fr)
2
institut eerie 2007­2008
Pérénité d'un développement
Structure d'une application
Partie
Métier
Partie
Métier
La partie métier doit être intangible
3
institut eerie 2007­2008
Evolution de la technologie

Modèle d'exécution

Application desktop 2 ou 3 niveaux

Application web client léger

Application web client lourd

Service web

Modèle de persistance

Sérialisation

Base de données objet

Base de données relationnelle (SGBDR)

Mapping objet + SGBDR
4
institut eerie 2007­2008
Séparation des préoccupations

Le modèle métier doit rester indépendant 

des couches techniques 

De l'interface utilisateur

Lorsque cette condition est réalisée

le coeur des applications peut migrer d'une 
technologie informatique à la suivante

Les fonctionnalités métier peuvent être testées et 
validées par des procédures automatisées (tests 
unitaires et tests d'intégration)
5
institut eerie 2007­2008
Démarche d'ingénierie

Un langage

UML, Unified modeling Language

Un procesus

UP, Unified Process

XUP, Extreme Unified Process

2TUP, Two Track Unified Process

etc..
6
institut eerie 2007­2008
Le processus du projet

UP est à base de composants

UP utilise UML

UP est piloté par les cas d’utilisation

UP est centré sur l’architecture

UP est itératif et incrémental

UP sépare les préoccupations

Les aspects techniques

Solution de persistance

Nature du client (lourd ­léger)

Le modèle métier

Classes métier 
7
institut eerie 2007­2008
Les cas d'utilisation

Point d'entrée de la démarche

L'approche est purement fonctionnelle

Spécifient le besoin

Point de vue de l'utilisateur

Forme:

Scénarii textuels

Diagrammes de cas (use cases)
8
institut eerie 2007­2008
Trouver les cas d'utilisation

Exemple: modélisation d'un GAB
Client
Effectuer un retrait
Consulter un compte
Operateur
9
institut eerie 2007­2008
Réaliser les cas d'utilisation
Trouver les cas d’utilisation
Réaliser les cas d’utilisation
Réaliser les cas d’utilisation

Modéliser les scénarii

Identifier les entités du système et 
leurs interactions
10
institut eerie 2007­2008
Réaliser les cas d'utilisation

Vue dynamique

Objets, rôles et interactions
Client
Consulter un compte
Operateur
Alimenter le GAB en billets
:Client
:InterfaceGuichet
:Distributeur
:Retrait
:Compte
identifier()
demandeRetrait(montant)
valider(montant)
effectuerRetrait(montant)
distribuer(montant)
delivrerBillets()
Effectuer un retrait
11
institut eerie 2007­2008
Structurer le système en objets
Structurer le système en objets

Trouver les entités du système

Définir leurs propriétés

Définir leurs relations (associations, héritage)
Trouver les cas d’utilisation
Réaliser les cas d’utilisation
Structurer le système en objets

12
institut eerie 2007­2008
Découverte des classes candidates

Vue statique du système

Classes et associations
Client
Guichet Automatique
Bancaire
Consulter un compte
Operateur
Alimenter le GAB en billets
Guichet Automatique
Bancaire
:Compte
Effectuer un retrait
:Client
interfaceGuichet:
distributeur:
:Retrait
identifier()
demandeRetrait(montant)
valider(montant)
effectuerRetrait(montant)
distribuer(montant)
delivrerBillets()
distribuer()
Client
InterfaceGuichet
Distributeur
Retrait
Compte
*
demandeRetrait()
valider()
effectuerRetrait()
identifier()
solde
13
institut eerie 2007­2008
Implémentation et tests d'intégration
Trouver les cas d’utilisation
Réaliser les cas d’utilisation
Implémenter les composants
de déploiement du système
Tester les cas d’utilisation
ok ?
Guichet
Automatique
Bancaire
Guichet
Automatique
Bancaire
*
Structurer le système en objets
14
institut eerie 2007­2008
Notre projet

Réaliser une application de gestion bancaire

Le modèle d'exécution est le client léger avec 
serveur applicatif

La technologie utilisée est JEE 5 aka Java 
Enterprise Edition 5

Le modèle métier est partiel et simplifié, car 
notre propos est de faire de la technique

Mais nous n'oublions pas que le modèle 
métier est au coeur du projet
15
institut eerie 2007­2008
La démarche

Appréhender les outils de développement

Rédiger une spécification fonctionnelle simplifiée

Concevoir un modèle métier simplifié (6 classes)

Banque

Client

Compte

Compte­epargne

Compte­courant

Ville

Implémenter les classes

Réaliser des jeux de test unitaire

Concevoir l'architecture technique (serveur web)

Réaliser le serveur web

Concevoir l'interface utilisateur

Choisir la technologie de persistance des objets métier

Intégration et tests
16
institut eerie 2007­2008
Modalités

Ratio 30% de théorie ­ 70% de pratique

Outils utilisés: Eclipse, Netbeans, Jboss

Durée: 32 heures

Evaluation: par binôme, dossier de projet et 
démo lors de la dernière séance.