27
Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Embed Size (px)

Citation preview

Page 1: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Mise en œuvre SOAau sein de l’IP Web

Atelier technique 10/02/2006

Page 2: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Architecture Applicative

Modèle en couchesOutils et FrameworkNormes et standards

Page 3: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 3Le 10/02/2006

Modèle en couches

Gestion des IHMs

Interactions utilisateurs

Appels de services

Sessions utilisateurs

Contrôles de la

cinématique

Gestion des processus métiers

Services d’utilisation des

objets de la couche domaine

Contrôle de l’intégrité

transactionnelle

Contrôle de la sécurité

Gestion des règles métiers

Fourniture des accès à

l’information

Persistance et cycle de vie des

occurrences d’entités métier

Présentation Coordination Services Domaine Persistance

Services Métiers et TechniquesPrésentation Persistance des

informations

Page 4: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 4Le 10/02/2006

Modèle en couches

1. Agilité Chaque couche a un périmètre précis en terme de responsabilités

Isoler plus simplement les traitements

Réutiliser

Evite les interdépendances

Code simplifié et plus léger

Assurer l’évolutivité

2. Sécabilité Illustrée concrètement par l’architecture logicielle

Spécialisation possible des développeurs (frameworks, ergonomie)

Code compréhensible -> Faciliter la maintenance

Minimiser les impacts liés au changement d’un framework

3. Réactivité Approche ciblée sur l’identification des problèmes par couche

Réaliser un monitoring par couche

Page 5: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 5Le 10/02/2006

Outils et Framework

Outils et Framework à travers les couches

Licences Open Source Apache License v2

Lesser General Public License (LGPL)

Licences non virales

Présentation Coordination Services Domaine Persistance

STRUTS

Tiles & Validator AXIS AXIS

STRUTS

SPRING SPRING SPRING

HIBERNATE

SPRINGSPRING

LOG4J LOG4J LOG4JLOG4JLOG4J

Page 6: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 6Le 10/02/2006

Normes et standards

Respect des préconisations SDET, ADAE et AMUE

Préconisations technologiques Pré-requis J2EE 1.4 (JVM 1.4, Servlet 2.4, JSP 2.0) -> Tomcat 5.0.28

SOAP 1.1, JAX-RPC 1.1 -> Axis 1.3

WS-I basic profile 1.0 -> WTP 1.0 et Axis 1.3

(WS-Security 1.0 -> Wss4j 1.1.0)

Préconisations de conception Structuration en couches indépendantes

Design pattern (MVC, IoC etc.)

Indépendance vis-à-vis des protocoles physiques d'invocation -> Spring

Respect des principes SOA

Page 7: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Proof of Concept

Objectifs, Périmètre, Planning et Résultats du prototypage

Page 8: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 8Le 10/02/2006

Les objectifs du POC

1. Valider les outils, les normes et l’architecture (WS-*, Frameworks)

2. Réutiliser au mieux l’existant (procédures stockées, IA Web)

3. Vérifier l’intégration aux ENTs (réalisation de portlets test)

5. Définir et valider un environnement de développement adapté

6. Mesurer les performances (scenarii et configurations de tests)

7. Mettre en évidence les points durs résiduels

Hors périmètre :• Identification et dimensionnement fonctionnel des services

• « Prototype » et non « maquette » Gestion de la livraison et du déploiement

Page 9: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 9Le 10/02/2006

Les macro-tâches du POC

Mettre en place la plate-forme de développement et ses outils Mise en place opérationnelle des outils (Eclipse, plugins,…)

Gestion de configuration

Normes de développement & Qualité

Frameworks

Outils de tests

Mettre en œuvre concrètement l’approche orientée services Interopérabilité (Applications, ENT,…)

Sécurité

Transaction

Mettre en œuvre l’architecture en couches Couplage faible / Séparation des responsabilités

Maintenabilité (découpage, traces)

Intégration de l’existant (PL/SQL, concurrences d’accès)

Gestion des erreurs

Page 10: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 10Le 10/02/2006

Architecture du POC

Page 11: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 11Le 10/02/2006

Les phases du POC et le planning

Objectifs

Résultats

Réunion de lancement

Phase 1

• Définition du périmètre et objectifs du POC

• Recueil de l’existant web• Documents• Code java

• Proposition d’un planning

CADRAGE

• Cadrage• Besoins de plate-forme

Phase 2

• Installation des plates-formes• Mise en place du cadre des développements (normes, structure des projets)• Utilisation des frameworks• Approche services et web services

MISE EN PLACE PTF& DEVELOPPEMENT

•Plates-formes opérationnelles•Mise en place des couches•1ers Développements

Plate-forme OK

1ers services – 01/02 Tests (20/02)

Phase 3

• Tests de charge

• Mise en place UDDI

• Intégration ENT

• Tests flexibilité solution

ANALYSE & DEV. COMPLEMENTAIRE

CONSOLIDATION

•Périmètre technique complet réalisé•Préconisations•Tous les outils opérationnels

Phase 4

BILAN & DOCUMENTATION

• Documentation

•POC prêt à la démonstration•Documentation

POC opérationnel (Fin O2/06)

Lancement – 02/01

Page 12: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 12Le 10/02/2006

Documentation en résultat du POC

Normes de développement

Dossier d’architecture applicative

Mise en place organisation et outils de développement Création des projets

Intégration gestion de configuration

Guides d’utilisation du développeur Couche Persistance

Couche Coordination

Couche Services

Application Proof of concept Javadoc

Page 13: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 13Le 10/02/2006

Thème accès à la base de données

Mapping des tables de la base de données Création des objets valeurs

Mise en place du framework de gestion de la persistance Hibernate Spring : commodités pour la gestion des exceptions et des transactions

Transactions avec la base de données Transactions avec la base de données (insert, update, delete, get) Intégration de Procédures stockées

Gestion des accès concurrents Déclaration via Spring

Page 14: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 14Le 10/02/2006

Thème sécurité

Etape 1 - Limiter l'adhérence des agents d'authentification et de SSO Utilisation de composants externes paramétrables permettant de s’intégrer au système

d’authentification du SI Classes Java « Filter », découplées de la couche présentation, traitant les requêtes en amont

des processus applicatifs

Exemple : composant CASFilter jouant le rôle d’agent au sein d’un SSO CAS

Etape 2 – Etude prévisionnelle de WS-Security et de la fédération d’identité Intégration de WS-Security au POC

Intégrité : XML-Signature

Confidentialité : XML-Encryption

Utilisation de l’outil apache Wss4j

Etude des possibilités offertes par SAML pour fédérer les identités (Liberty Alliance et Shibboleth)

Objectif : Implémentation orthogonale de la sécurité par rapport à l’applicatif (composants « plugables » et indépendants)

Page 15: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 15Le 10/02/2006

Thème interopérabilité

Intégration au sein des ENTs Mise en place d’une portlet au sein d’un portail accédant aux Web Services Apogee

Appel local, appel distant Couche coordination découplée du type d’invocation effectué

Communication par Interface

Utilisation de Spring pour les dépendances

Interface du service

Spring

Fichier de mappingImplémentation Proxy local

Client

Page 16: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Développements

Plate-forme, Organisation, Développements

Page 17: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 17Le 10/02/2006

Une plate-forme industrialisée

1. Un processus unifié de développement s’appuyant sur les retours d’expérience de nos centres ADC

1. Les étapes sont identiques et formalisées

2. Les étapes sont documentées

2. Faciliter l’intégration de nouveaux développeurs

3. Aider au travail des développeurs et à la qualité des développements

4. Une plate-forme à base de composants open source

Page 18: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 18Le 10/02/2006

Plate-forme de développement

Page 19: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 19Le 10/02/2006

1 couche = 1 projet Eclipse

Présentation Coordination Services Domaine Persistance

Transverse

ip-webapp ip-coordination

ip-transverse

ip-services ip-domaine ip-persistance

Objectifs•Indépendance des déploiements•Tests et qualification par projet•Spécialisation des développeurs•Eviter les dépendances multiples

Page 20: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 20Le 10/02/2006

Développements et design patterns

Définition de classes d’interface Limiter l’adhérence

Design patterns : MVC2 : Modèle Vue Contrôleur

DAO : Encapsule les accès aux données – Préconisé par Sun Microsystems

PAO : Procedure Access Object

Value object : Transporter les données entre les couches du modèle

Session Façade : Un point d’entrée unique pour un sous-système

Filter

Page 21: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Axes de réflexion

Page 22: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 22Le 10/02/2006

Axes de réflexion

Quelle sont l’activité et la charge attendues ?

Page 23: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 23Le 10/02/2006

Axes de réflexion

Les pré-requis techniques (JVM 1.4, Servlet 2.4 et JSP 2.0)

sont-ils clairs et satisfaisants pour tous ?

Page 24: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 24Le 10/02/2006

Axes de réflexion

Quels sont les trois navigateurs (et leur version) les plus utilisés dans les établissements ?

Page 25: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 25Le 10/02/2006

Axes de réflexion

Quelle est la politique de sécurité au niveau des navigateurs ?

Page 26: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt Page : 26Le 10/02/2006

Axes de réflexion

Existe-t-il des contraintes de packaging spécifiques ?

Page 27: Référence PRE.021.AtelierTechAMUE_100206.ppt Mise en œuvre SOA au sein de l’IP Web Atelier technique 10/02/2006

Référence PRE.021.AtelierTechAMUE_100206.ppt

Questions