Processus d'un projet F.Pfister
2 institut eerie 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 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 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 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 Le processus du projet UP est à base de composants UP utilise UML UP est piloté par les cas dutilisation UP est centré sur larchitecture 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 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 Trouver les cas d'utilisation Exemple: modélisation d'un GAB Client Effectuer un retrait Consulter un compte Operateur
9 institut eerie Réaliser les cas d'utilisation Trouver les cas dutilisation Réaliser les cas dutilisation – Modéliser les scénarii – Identifier les entités du système et leurs interactions
10 institut eerie 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 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 dutilisation Réaliser les cas dutilisation Structurer le système en objets
12 institut eerie 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 Implémentation et tests d'intégration Trouver les cas dutilisation Réaliser les cas dutilisation Implémenter les composants de déploiement du système Tester les cas dutilisation ok ? Guichet Automatique Bancaire Guichet Automatique Bancaire * Structurer le système en objets
14 institut eerie 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 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 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.