Applications N-Tiers Rappels: architecture et méthodologie

Preview:

DESCRIPTION

Applications N-Tiers Rappels: architecture et méthodologie. F.Pfister (francois.pfister@mines-ales.fr). Pérénité d'un développement. Structure d'une application. Partie Métier. La partie métier doit être intangible. Evolution de la technologie. Modèle d'exécution - PowerPoint PPT Presentation

Citation preview

1

Applications N-TiersApplications N-TiersRappels: architecture et Rappels: architecture et

méthodologieméthodologie

F.Pfister (francois.pfister@mines-ales.fr)F.Pfister (francois.pfister@mines-ales.fr)

2

Pérénité d'un développement

Structure d'une application

PartieMétier

PartieMétier

La partie métier doit être intangible

3

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

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

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

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

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

Trouver les cas d'utilisation

Exemple: modélisation d'un GAB

Client

Effectuer un retrait

Consulter un compte

Operateur

9

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

Réaliser les cas d'utilisation

• Vue dynamique– Objets, rôles et interactions

Client

Consulter un compte

OperateurAlimenter le GAB en billets

:Client :InterfaceGuichet :Distributeur :Retrait :Compte

identifier()demandeRetrait(montant)

valider(montant)

effectuerRetrait(montant)

distribuer(montant)

delivrerBillets()

Effectuer un retrait

11

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

Découverte des classes candidates

• Vue statique du système– Classes et associations

Client

Guichet Automatique Bancaire

Consulter un compte

OperateurAlimenter 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

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

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 (Java

Enterprise Edition) 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

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

Modalités

Outils utilisés: Eclipse, Jboss Durée: 20 heures cours + tp Evaluation: dossier de projet et démo

lors de la dernière séance.