16
1 Applications N-Tiers Applications N-Tiers Rappels: architecture Rappels: architecture et méthodologie et méthodologie F.Pfister ([email protected]) F.Pfister ([email protected])

Applications N-Tiers Rappels: architecture et méthodologie

Embed Size (px)

DESCRIPTION

Applications N-Tiers Rappels: architecture et méthodologie. F.Pfister ([email protected]). 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

Page 1: Applications N-Tiers Rappels: architecture et méthodologie

1

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

méthodologieméthodologie

F.Pfister ([email protected])F.Pfister ([email protected])

Page 2: Applications N-Tiers Rappels: architecture et méthodologie

2

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

Structure d'une application

PartieMétier

PartieMétier

La partie métier doit être intangible

Page 3: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 4: Applications N-Tiers Rappels: architecture et méthodologie

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)

Page 5: Applications N-Tiers Rappels: architecture et méthodologie

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..

Page 6: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 7: Applications N-Tiers Rappels: architecture et méthodologie

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)

Page 8: Applications N-Tiers Rappels: architecture et méthodologie

8

Trouver les cas d'utilisation

Exemple: modélisation d'un GAB

Client

Effectuer un retrait

Consulter un compte

Operateur

Page 9: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 10: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 11: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 12: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 13: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 14: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 15: Applications N-Tiers Rappels: architecture et méthodologie

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

Page 16: Applications N-Tiers Rappels: architecture et méthodologie

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.