Refonte du système d’information de l’ASP

Preview:

Citation preview

Refonte du système d’information de l’ASPMarc HERMANCapgemini 2009

SommaireCapgeminiL’Agence de Service et de

PaiementLe projet DEFIGestion des anomaliesIntégration continueTests de performancesRefactoring et développement

CapgeminiUne des

premières SSII mondiales

1 octobre 1967 par Serge Kampf

9%

38%

37%

16%

Part des activités dans le CA

Conseil Intégration

Infogérance Services de proximité

Capgemini91 621

collaborateurs32 pays France

24%

Espagne / Por-tugal et

Amérique latine4% Italie

1%Pays nordiques7%

Royaume-Uni22%

Allemagne7%

Amérique du Nord19%

Asie-Pacifique1%

Benelux15%

Capgemini

2004 2005 2006 2007 2008

-800,000

-600,000

-400,000

-200,000

0

200,000

400,000

600,000

800,000

1,000,000

CA/10Résultat opéra-tionnelRésultat Net

L’ASPASP = Agence de Service et de

PaiementFusion de :

◦CNASEA = Centre National pour l’Aménagement des Structures des Exploitations Agricoles

◦AUP = Agence Unique de Paiement

L’ASP 454 436 stagiaires

◦ 301 millions d'euros pour l'Etat

◦ 395 millions d'euros pour les Régions

267 243 bénéficiaires de contrats emploi-solidarité (CES) ◦ 0,786 milliard d'euros

104 193 bénéficiaires de contrats emploi-consolidé (CEC)◦ 0,896 milliard d'euros

17 887 bénéficiaires de contrats nouveaux services, emplois-jeunes ◦ 1,228 milliard d'euros

2.3 Milliards €

4.9 Milliards €

7.2 Milliards €

Formation professionnelle

Domaine agricole

DEFIPourquoi

◦Transfert de compétence de l’Etat aux régions pour la formation professionnelle

◦Etat = Livre IX◦Régions = ?

Comment◦Refonte du système d’information

pour répondre aux exigences des régions

DEFI4000 jours hommes60 personnes sur 3 sitesContrat au forfait

Gestion de projet◦Méthode Y◦Scrum

DEFIArchitecture Complexe

◦Imposée par le client◦Inscrite dans l’architecture logicielle

de l’ASP◦Réutilisation des services existants

Nouvelles technologies◦SOA light◦J2EE Struts◦Maven 2

DEFI

Client

Serveurs HTTP

Serveurs applicatifs

Moteurs de base de données

Client

Services distants

Internet

NPS

TIMTAM

DEFI

Gestion des anomalies

Tests fonctionnels

Correction des anomalies

Validation par le responsable

des tests

Assignation d’une anomalie au responsable du processus

Passage de l’anomalie à l’état : résolu

Réouverture de l’anomalie

Confirmation de la correction

fermeture de l’anomalie

Gestion des anomaliesTests fonctionnels

◦Lectures de scénarii décrivant un cas fonctionnel

◦Exécution du scénario et vérification des résultats

◦Référence aux SFD si besoin◦Ouverture d’un bug sur Bugzilla

Rébarbatif mais utile à la compréhension fonctionnelle du projet

Gestion des anomaliesCorrection des anomalies

Compréhension du problème au niveau du code

Lecture du bug compréhension de la nature du problème

Répétition de l’erreur sur le serveur de test ainsi que sur le projet déployé localement sur son poste

de travail

Recherche de l’origine du problème

Correction de l’anomalie

Confirmation par les testeurs de la correction

Niveau général : couche

Niveau détaillé : processus, service, classes concernées

Problème technique : erreur de codage,

régression,…Problème

fonctionnel : oubli ou conflit au niveau des

spécifications

Gestion des anomaliesInstructif sur la manière de coder

◦S’imprégner du code du projet◦Rencontrer les principales sources

d’erreurs

Intégration continuePassage régulier (continu) de

tests et d’outils de qualité de code afin de connaître l’état du projet, son évolution et détecter les régressions◦Donne un référentiel

Serveur d’intégration en panne depuis mon arrivée sur le projet

Intégration continueCycle de production basé sur

Maven 2◦Fichier de configuration (POM) de

type XMLPrincipaux problèmes

◦Version des librairies utilisées◦Non configuration des outils

M’a permis de comprendre de manière précise l’architecture technique du projet

Intégration continue

Tests de performancePerception

mauvaise des performances de l’application

Besoin de définir un périmètre

OpenSTA

Nombre d’utilisateurs simultanés <100 >100

Temps d'affichage des pages de connexion 1 sec. 1 sec

Temps d'affichage des pages de consultation simple

1 sec. 3 sec

Temps d'affichage des pages de transaction simple de mise à jour

3 sec. 5 sec

Temps d'affichage des pages de transaction complexe de mise à jour

10 sec. 15 sec

Temps d'affichage des interactions ponctuelles - mise à jour de données métiers

2 sec. 4 sec

Temps d'affichage des éditions (type pdf) 4 sec. 4 sec

Tests de performance

Tests de performance

1

•Définition des scénarii

2

•Enregistrement des scénarii

3

•Définition des métriques mises en œuvre

4

•Analyse des résultats

5

•Redéfinition des exigences

Tests de performance

14:24:00 14:38:24 14:52:48 15:07:12 15:21:36 15:36:00 15:50:24 16:04:480

5

10

15

20

25

30

35

40

0

5

10

15

20

25

30

Timer secondes

Moving average (Timer secondes)

VU

secondes

VU

Refactoring et développement

Inversion de contrôle◦Découplage des couches◦Framework Hivemind

Injection de dépendances pour la conversion des objets métiers◦Découplage de la couche de

coordination avec les converters◦Framework Dozer

Refactoring et développementProblèmes de qualité de codeAntériorité du code avec des

standards mis en place sur le projet

Présence de nombreux bouchonsManques de fonctionnalités

=> Réécriture de certains écrans de l’application

Conclusion

Recommended