Rapport de Stage CORS - Ingénieur d'études et ...cv.fabianpiau.com/common/documents/rapports/Rapport_Capgemini... · La signature des représentants des deux parties signifie que

  • Upload
    vukhanh

  • View
    223

  • Download
    2

Embed Size (px)

Citation preview

  • Fabian Piau

    Spcifications projet CORS

    Outils de gestion de projet

    Plateforme dIntgration Continue

    Rapport de stage

    23 Mars 2009 au 28 Aot 2009

    Branko Grouitch

    Vincent Le Squere

    Encadrants entreprise

    Christophe Suaudeau

    Tuteur enseignant

    Diffusion contrle

    Utilisation soumise autorisation.

  • Fabian Piau | Master 2 MIAGe

    2 | 63

    Rapport de stage - 2009

    APPROBATION

    La signature des reprsentants des deux parties signifie que le signataire a lu et approuv le

    contenu de ce document.

    Nom Reprsentant de Signature

    Client VSCT

    Capgemini

    DOCUMENTS LIS

    Annexes_FPiau_Capgemini_2009.pdf Document contenant les annexes de ce rapport

    SUIVI DES VERSIONS

    - Mi-juillet 2009 Version non finalise 1.0 Mi-aot 2009 1re version 1.1 20 aot 2009 Prise en compte des remarques de V. Le Squere et B.

    Grouitch 1.2 22 aot 2009 Prise en compte des remarques dA. Barraud

    Version finale

  • Fabian Piau | Master 2 MIAGe

    3 | 63

    Rapport de stage - 2009

    MENTION DE CONFIDENTIALIT

    Les informations contenues dans ce rapport de stage, et notamment sur le projet CORS

    doivent rester internes Capgemini et ne doivent pas tre diffuses.

    Niveau de confidentialit : interne Capgemini .

  • Fabian Piau | Master 2 MIAGe

    4 | 63

    Rapport de stage - 2009

    REMERCIEMENTS

    Je tiens remercier la MIAGe de Nantes et toute son quipe pdagogique pour avoir

    assur ma formation dingnieur en informatique, et ainsi me permettre deffectuer ce stage.

    Je remercie tout dabord David Guillonneau pour la confiance quil ma accorde lors de

    lentretien en me donnant lopportunit de faire mon stage au sein de Capgemini.

    Je remercie plus particulirement Branko Grouitch et Vincent Le Squere, mes encadrants de

    stage, respectivement sur mon premier et second sujet de stage. Merci de mavoir form et

    accompagn tout au long de cette exprience professionnelle, de mavoir intgr rapidement au

    sein de lentreprise, de mavoir accord toute votre confiance et davoir rpondu toutes mes

    interrogations.

    Je tiens galement remercier Christophe Suaudeau, mon tuteur de stage la MIAGe de Nantes.

    Enfin, je voudrais exprimer ma reconnaissance auprs de toute lquipe VSCT pour tous les

    conseils et lexprience professionnelle quelle a pu mapporter.

  • Fabian Piau | Master 2 MIAGe

    5 | 63

    Rapport de stage - 2009

    TABLE DES MATIRES

    1. INTRODUCTION ....................................................................... 9

    1.1 Contexte .................................................................................................................. 9

    1.2 Objectifs et sujets de stage ..................................................................................... 9

    1.3 Prsentation du plan ............................................................................................. 10

    2. CAPGEMINI .......................................................................... 11

    2.1 Un peu dhistoire ................................................................................................ 11

    2.2 Les mtiers du groupe .......................................................................................... 12

    2.3 Les activits ........................................................................................................... 14

    2.4 Les chiffres cls ..................................................................................................... 15

    2.5 Capgemini en France ............................................................................................ 16

    2.6 Capgemini lOuest .............................................................................................. 17

    2.7 Le centre de services VSCT ................................................................................... 18

    2.7.1 Introduction.............................................................................................................. 18

    2.7.2 Le client : VSC Technologies ..................................................................................... 19

    2.7.3 Organisation du centre ............................................................................................. 20

    3. PRSENTATION DU STAGE ........................................................ 21

    3.1 Planification .......................................................................................................... 21

    3.1.1 Les dates cls ............................................................................................................ 21

    3.1.2 Calendrier ................................................................................................................. 21

    3.1.3 Les phases et tapes ................................................................................................ 22

    3.2 Prsentation succincte des projets ....................................................................... 24

    3.2.1 Le projet CORS .......................................................................................................... 24

    3.2.2 Dveloppement dutilitaires pour automatiser la gestion de projet ....................... 24

    3.2.3 Mise en place dune plateforme dintgration continue ......................................... 25

    4. PRSENTATION DU TRAVAIL RALIS ........................................... 27

    4.1 Le projet CORS ...................................................................................................... 27

    4.1.1 Contexte ................................................................................................................... 27

    4.1.2 Les utilisateurs .......................................................................................................... 27

    4.1.3 Existant VSCT ............................................................................................................ 28

  • Fabian Piau | Master 2 MIAGe

    6 | 63

    Rapport de stage - 2009

    4.1.3.1 Le rfrentiel de proprits .............................................................................................. 28

    4.1.3.2 Le rfrentiel de configurations........................................................................................ 29

    4.1.3.3 Mcanismes de gnration des fichiers de proprits et de configuration ..................... 29

    4.1.4 Les besoins du client ................................................................................................ 30

    4.1.5 Conception et analyse .............................................................................................. 32

    4.1.6 Dveloppement ........................................................................................................ 40

    4.1.7 Le devenir du projet CORS ....................................................................................... 41

    4.2 Dveloppement dutilitaires de gestion de projet ............................................... 42

    4.2.1 Chiffrage et facturation des projets [2 macros] ....................................................... 42

    4.2.1.1 Macro de chiffrage ............................................................................................................ 42

    4.2.1.2 Macro de facturation ........................................................................................................ 44

    4.2.1.3 Technologies utilises ....................................................................................................... 44

    4.2.2 Suivi des tickets ClearQuest [1 utilitaire, 1 macro] .................................................. 45

    4.2.2.1 Explications sur ClearQuest et les tickets ......................................................................... 45

    4.2.2.2 Utilitaire de rcupration des tickets ............................................................................... 46

    4.2.2.3 Macro de comparaison ..................................................................................................... 48

    4.2.2.4 Technologies utilises ....................................................................................................... 48

    4.3 Mise en place dune Plateforme dIntgration Continue ..................................... 52

    4.3.1 Le projet B2B ............................................................................................................ 52

    4.3.2 Mise en conformit du dpt SVN de B2B ............................................................... 53

    4.3.3 Mise jour et configuration dHudson .................................................................... 53

    5. PROBLMES RENCONTRS ........................................................ 56

    5.1 Organisationnels ................................................................................................... 56

    5.2 Techniques ............................................................................................................ 56

    6. BILAN ................................................................................. 58

    6.1 Bilan professionnel ............................................................................................... 58

    6.2 Bilan personnel ..................................................................................................... 58

    6.3 Conclusion du stage .............................................................................................. 59

    7. RFRENCES ......................................................................... 60

    8. GLOSSAIRE ........................................................................... 61

  • Fabian Piau | Master 2 MIAGe

    7 | 63

    Rapport de stage - 2009

    LISTE DES FIGURES

    Figure 1 : Historique de Capgemini .................................................................................................. 11

    Figure 2 : Les mtiers de Capgemini ................................................................................................ 13

    Figure 3 : Rpartition du chiffre daffaires 2007 par mtiers........................................................... 13

    Figure 4 : Rpartition du chiffre daffaires 2007 par pays ou rgions .............................................. 14

    Figure 5 : Rpartition de l'effectif de Capgemini dans le monde ..................................................... 15

    Figure 6 : Rpartition des effectifs au 31/12/2007 .......................................................................... 15

    Figure 7 : Chiffre daffaires entre 1995 et 2007 en millions deuros ............................................... 16

    Figure 8 : Capgemini France ............................................................................................................. 16

    Figure 9 : Capgemini Ouest .............................................................................................................. 17

    Figure 10 : Quelques rfrences de Capgemini Ouest ..................................................................... 18

    Figure 11 : Page daccueil du site voyages-sncf.com ....................................................................... 19

    Figure 12 : Structure hirarchique du centre de services VSCT ...................................................... 20

    Figure 13 : Calendrier simplifi ....................................................................................................... 21

    Figure 14 : Avant et aprs la mise en place de lIntgration Continue ............................................ 25

    Figure 15 : Gestion actuelle des proprits et des configurations ................................................. 30

    Figure 16 : Gestion des proprits et des configurations avec CORS ............................................. 31

    Figure 17 : Interface diPlotz ........................................................................................................... 33

    Figure 18 : Une maquette fonctionnelle de CORS .......................................................................... 34

    Figure 19 : Une maquette visuelle de CORS .................................................................................... 34

    Figure 20 : Maquette de cration dune version *version 1 15/04/2009] ................................... 35

    Figure 21 : Maquette de cration dune version *version 2 21/04/2009] ................................... 35

    Figure 22 : Maquette de cration dune version *version 3 24/04/2009] ................................... 36

    Figure 23 : Maquette de cration dune version *version 4 28/04/2009] ................................... 36

    Figure 24 : Diagramme de classes de lapplication *version 4 13/05/2009] ................................ 37

    Figure 25 : Modle de donnes de lapplication *version 2 13/05/2009] .................................... 38

    Figure 26 : Modle de navigation [version 2 30/04/2009] .......................................................... 39

    Figure 27 : Chiffrage automatis dun projet .................................................................................. 42

    Figure 28 : Le processus ClearQuest pour une correction danomalie ........................................... 45

    Figure 29 : Fonctionnement gnral de la rcupration des tickets ClearQuest ........................... 46

    Figure 30 : Comparaison des tickets ClearQuest ............................................................................. 48

    Figure 31 : Authentification automatise avec WatiN .................................................................... 51

    Figure 32 : Ecran daccueil de B2B .................................................................................................. 52

    Figure 33 : Ecran daccueil dHudson .............................................................................................. 54

    Figure 34 : Des indicateurs parlants (la mto) .............................................................................. 54

  • Fabian Piau | Master 2 MIAGe

    8 | 63

    Rapport de stage - 2009

    LISTE DES TABLES

    Table 1 : Historique du logo Capgemini ........................................................................................... 12

    Table 2 : Calendrier dtaill ............................................................................................................. 23

    Table 3 : Utilisateurs de lapplication CORS ..................................................................................... 28

    Table 4 : Comparaison doutils pour la cration de maquettes ....................................................... 32

    LISTE DES CODES

    Code 1 : Exemple de fichier de proprits ....................................................................................... 28

    Code 2 : Exemple de fichier de configuration .................................................................................. 29

    Code 3 : Exemple de fichier de log de la macro de chiffrage .......................................................... 43

    Code 4 : Extrait dun fichier dexport de ticket ClearQuest ............................................................. 47

    Code 5 : Exemple de fichier de log de lutilitaire dexport des tickets ............................................. 47

    Code 6 : Code WatiN pour tester ..................................................................................................... 49

    Code 7 : Code de la page web tester ............................................................................................. 50

  • Fabian Piau | Master 2 MIAGe

    9 | 63

    Rapport de stage - 2009

    1. INTRODUCTION

    Ce premier chapitre introduit les diffrents lments pour bien comprendre mon stage.

    Ainsi, ce chapitre dcrit le contexte dans lequel sinscrit le stage, prsente brivement les acteurs

    impliqus, et nonce les principales missions qui mont t confies.

    1.1 Contexte

    Dans le cadre de la validation de mon diplme dingnieur en informatique de gestion par

    lcole MIAGe de lUniversit de Nantes, jai effectu mon stage de fin danne chez Capgemini,

    une SSII de renomme internationale. Ce stage sest droul du 23 mars 2009 au 28 aot 2009,

    soit une priode de 23 semaines (environ 5 mois). Jai intgr Capgemini Ouest, et plus

    exactement le site Paul Bellamy situ Nantes.

    Ce stage sintgre parfaitement dans ma formation continue en MIAGe dont la vocation est de

    former des ingnieurs avec la double comptence informatique et gestion.

    Plusieurs raisons mont amen choisir lentreprise Capgemini pour mon stage de fin danne.

    Ayant dj effectu un stage chez Sylis, une SSII informatique taille humaine, jai dcid de me

    tourner vers une plus grande entreprise de type multinationale pour faire ce stage. Mon

    objectif tait de me faire ma propre ide sur des tailles dentreprise diffrentes, pour voir celle

    qui me correspondrait le mieux. En outre, les possibilits de carrire sont plus vastes au sein dun

    grand groupe, plus de mtiers et projets diffrents tant accessibles. Enfin, tant trs mobile, les

    possibilits dvolution de ma carrire linternationale seront facilites en intgrant un groupe

    reconnu mondialement.

    1.2 Objectifs et sujets de stage

    A mon arrive Capgemini, le sujet de stage ntait pas encore bien dfini. Cest souvent

    le cas dans les grands groupes o les sujets de stage peuvent difficilement tre dfinis plusieurs

    mois lavance.

    Nanmoins, le primtre de certains aspects du stage tait bien dlimit. Par exemple, je savais

    que mon stage allait tre orient nouvelles technologies (java/J2EE) et que jallais intgrer le

    centre de services dont le client est la VSCT.

    Peu aprs mon arrive et mon intgration lquipe, les responsables Capgemini mont propos

    un sujet trs intressant. Il sagissait dun nouveau projet informatique qui venait tout juste de

    dmarrer et dont la premire version devrait tre livre quelques semaines avant la fin de mon

    stage. Sans rentrer dans les dtails, jallais donc participer aux spcifications et au dveloppement

    de cette nouvelle application. Malheureusement, aprs deux mois de travail sur le projet et le

    dveloppement ayant tout juste commenc, le projet a t suspendu par le client.

  • Fabian Piau | Master 2 MIAGe

    10 | 63

    Rapport de stage - 2009

    Quoi quil en soit, en attendant mon second sujet, les responsables mont donn plusieurs

    dveloppements dutilitaires et de macros sous Excel raliser. Les macros taient assez

    complexes avec notamment un lien vers un fichier Word ou une connexion une base de

    donnes Oracle. De plus, le sujet principal de ces macros concernait la gestion de projet et la

    facturation des projets du centre. Ces dveloppements taient donc en accord avec la formation

    MIAGe. Cette phase de transition a dur environ un mois et a permis damliorer la productivit

    du centre.

    Ensuite, on ma propos mon deuxime sujet de stage. Contrairement au premier, ce sujet tait

    beaucoup moins orient dveloppement. En fait, il sagissait de contribuer la mise en place

    dune plateforme dintgration continue au sein du centre de services. A cette fin, javais plusieurs

    objectifs, dont linstallation et la configuration des outils dintgration continue, mais galement

    la rdaction de documentations visant sensibiliser les quipes.

    1.3 Prsentation du plan

    Ce rapport a pour objectif de vous prsenter tout le droulement de mon stage. En vue de

    rendre compte, de manire fidle, les cinq mois passs au sein de la socit Capgemini, il

    apparat logique de prsenter, titre pralable, lenvironnement du stage, savoir le secteur du

    conseil et des services informatiques avec une prsentation de lentreprise.

    Ensuite, nous aborderons le cadre de travail, lorganisation et le planning de mon stage. Cette

    partie prsentera galement, de faon simple, les diffrents projets auxquels jai particip. Jai eu

    plusieurs sujets sur des environnements bien diffrents au cours de mon stage. Ayant ainsi

    contribu plusieurs projets, une prsentation chronologique me semble la plus approprie, et

    cest donc celle que jai retenue.

    La troisime partie prsentera le travail ralis, nous reviendrons sur chacun des projets abords

    dans la partie prcdente, mais de manire beaucoup plus dtaille. Ainsi, laspect technique,

    laspect fonctionnel et les impacts seront expliqus et dtaills. Cette partie est vritablement le

    cur de ce rapport et demandera quelques notions en informatique.

    Enfin, dans les deux derniers chapitres, jvoquerais les problmes organisationnels et techniques

    que jai pu rencontrer. Je ferais une synthse de ce rapport et japporterais un bilan ces cinq

    mois de stages. Jexpliquerais galement ce quils mont apport.

    A titre indicatif, un glossaire est fourni la fin de ce rapport. Il regroupe les abrviations et les

    termes techniques de mes sujets de stage. Comme ils sont trs utiliss Capgemini, je vous

    conseille dy prter une attention particulire avant de continuer la lecture de ce rapport.

  • Fabian Piau | Master 2 MIAGe

    11 | 63

    Rapport de stage - 2009

    2. CAPGEMINI

    Ce second chapitre prsente le groupe Capgemini. Je prsenterais le groupe dans sa

    globalit, au niveau mondial puis, je zoomerais progressivement sur Capgemini Ouest et plus

    particulirement sur lentit que jai intgre. Jai choisi darticuler cette description en plusieurs

    points importants et significatifs, savoir lhistorique de Capgemini, ses mtiers, les marchs sur

    lesquels lentreprise est prsente et sa structure hirarchique.

    2.1 Un peu dhistoire

    Capgemini est lun des leaders mondiaux de lindustrie du conseil et des services

    informatiques, conduisant une stratgie de dveloppement et de diversification qui a combin

    croissance interne et externe. La socit a t cre par Serge Kampf le 1er octobre 1967

    Grenoble, en France, sous le nom de Sogeti (Socit pour la gestion de l'entreprise et

    traitement de l'information). Le groupe, comme beaucoup de ses concurrents, s'est constitu

    travers de multiples acquisitions dans tous les secteurs d'activits lis aux services informatiques :

    consulting, intgration de systmes, outsourcing.

    Ainsi, prs de 40 acquisitions (petites ou grandes entreprises) ont t ralises en 40 ans.

    Figure 1 : Historique de Capgemini

    Cration de Sogeti (Socit pour la Gestion de l Entreprise et le Traitement de

    l Information), par Serge Kampf, socit spcialise dans les prestations de services

    lies au dveloppement et la mise en uvre dapplications informatiques.

    Cration de Cap Gemini Sogeti, socit issue de la fusion de Sogeti, Gemini

    Computer Systems et Cap (Centre d Analyse et de Programmation).

    Cap Sesa nat de la fusion de Cap Sogeti et Sesa.

    Une nouvelle organisation est mise en place au niveau mondial et toutes les

    socits se rassemblent sous le nom de Cap Gemini.

    Cration du nouveau groupe Cap Gemini Ernst & Young, n du rapprochement de

    Cap Gemini, Gemini Consulting et Ernst & Young Consulting.

    Au mois davril, Cap Gemini Ernst & Young devient Capgemini.

    Acquisition de Kanbay. Cette acquisition porte le nombre de collaborateurs en Inde

    environ 12 000. Ce qui fait de l'Inde le deuxime pays aprs la France en matire

    d'effectifs.

    1967

    1975

    1989

    1997

    2000

    2004

    2007

  • Fabian Piau | Master 2 MIAGe

    12 | 63

    Rapport de stage - 2009

    A titre indicatif, voici les diffrents logos de la socit au fil du temps (table 1). Pour lanecdote,

    las de pique est prsent dans le logo du groupe depuis sa cration. Il sagit dune rfrence au

    bridge, activit que le fondateur du groupe Serge Kampf, pratiquait assidment.

    1967-1970 Sogeti

    1970-1975 Sogeti

    1975-1996 Cap Gemini Sogeti

    1991-2001 Gemini Consulting

    1996-2000 Cap Gemini

    2000-2004 Cap Gemini Ernst & Young

    Depuis 2004 Capgemini

    Table 1 : Historique du logo Capgemini

    A ce jour, Capgemini est la premire socit europenne de conseil et de services informatiques

    et le quatrime acteur mondial. Implant dans plus dune trentaine de pays, Capgemini aide ses

    clients innover, se transformer et devenir plus performants. En coopration avec ses clients,

    Capgemini contribue llaboration de leur orientation stratgique, sa mise en uvre et les

    aide tirer le meilleur parti de la technologie.

    2.2 Les mtiers du groupe

    Capgemini est lun des leaders mondiaux dans les domaines du conseil, des services

    informatiques, de linfogrance et de loutsourcing. Voici une brve description de chacun de ces

    mtiers (figure 2) ainsi que deux diagrammes reprsentant la rpartition du chiffre daffaires en

    fonction des mtiers (figure 3) et des pays (figure 4).

  • Fabian Piau | Master 2 MIAGe

    13 | 63

    Rapport de stage - 2009

    Figure 2 : Les mtiers de Capgemini

    Figure 3 : Rpartition du chiffre daffaires 2007 par mtiers

    Le Conseil

    (ou Consulting Services ou CS) :

    Aider les clients identifier, structurer et excuter leschantiers detransformationqui amliorerontdurablement leur croissance et leur comptitivit.

    Lintgration desystmes et le dveloppementdapplicationsinformatiques

    (ou Integration ou Technology services ou TS) :

    Concevoir, dvelopper etmettre en oeuve tous les projetstechniques, du plus petit au plus grand.

    Linfogrance

    (ou Outsourcing Services ou OS) :

    Accompagner les clients dans l'externalisationtotale ou partielle de leurs systmes d'information etde leurs autres activits s'y prtant.

    Les servicesInformatiques de proximit

    (ou Local Professional Services ou LPS, Sogeti) :

    Proposer une offre de services informatiquesadapte des besoins locaux en matire d'infrastructures,d'applications etd'ingnierie.

    Services informatiques de proximit

    16,2%

    Consulting8,7%

    Intgration de systmes

    38,5%

    Infogrance36,6%

  • Fabian Piau | Master 2 MIAGe

    14 | 63

    Rapport de stage - 2009

    Figure 4 : Rpartition du chiffre daffaires 2007 par pays ou rgions

    2.3 Les activits

    Grce ses quatre mtiers, Capgemini tend son activit aux principaux secteurs de

    lconomie.

    Dans le secteur public, les administrations se transforment pour devenir des fournisseurs de

    services plus efficaces et cots mieux matriss. Capgemini a pour ambition dtre leur

    partenaire de choix. En consquence, la part du secteur public dans lactivit du groupe sest

    dveloppe ces dernires annes pour reprsenter plus de 25 % en 2006. Le secteur de

    lindustrie, du commerce et de la distribution reprsente environ un tiers des activits du groupe.

    2004 a t une anne phare pour le groupe dans les secteurs de lnergie, utilities et chimie.

    Lentreprise amricaine TXU sest engage dans un partenariat denvergure avec Capgemini.

    Ajout aux prcdents contrats dinfogrance canadiens, ce partenariat constitue une solide

    plateforme de comptences pour les acteurs du secteur de lnergie en Amrique du Nord.

    Dans le secteur des services financiers, les clients ont renou avec une profitabilit solide et

    durable et se concentrent nouveau sur la croissance de leur chiffre daffaires. Ils acclrent le

    lancement de nouveaux produits et services et poursuivent leurs acquisitions, tout en investissant

    dans des solutions de relation client.

    Dans les secteurs des tlcommunications, Media & Entertainment , les principaux acteurs

    concentrent leurs efforts sur la croissance, dans un march en pleine effervescence et riche en

    opportunits pour Capgemini.

    Les secteurs clefs du groupe Capgemini sont donc trs varis : Finance & Assurance, Secteur

    Public, Industrie & Distribution, Tlcom / Multimdia / Loisirs, Aronautique & Arospatial,

    Energie & Services Publics.

    Europe centrale6,4%

    Espagne/Portugal3,3%Italie

    1,2%

    France22,6%

    Asie pacifique1,5%

    Amrique du Nord19,8%

    Royaume Uni et Irlande25,6%

    Pays nordiques6,2%

    Benelux13,4%

  • Fabian Piau | Master 2 MIAGe

    15 | 63

    Rapport de stage - 2009

    0 5 000 10 000 15 000 20 000 25 000

    Amrique du Nord

    Royaume-Uni et Irlande

    Pays nordiques

    Benelux

    France

    Europe du Sud

    Europe centrale

    Inde

    Asie-Pacifique hors Inde

    2.4 Les chiffres cls

    Capgemini compte un effectif denviron 90 000 personnes en 2008, dont un peu plus de

    21 000 en France. Lentreprise est prsente dans plus de 30 pays et possde un rseau de plus de

    100 centres de production industriels. La figure 5 ci-dessous prsente les lieux dimplantation de

    la socit et la rpartition de leffectif du groupe dans le monde. La figure 6 montre galement la

    rpartition des effectifs, mais dune manire plus prcise.

    Figure 5 : Rpartition de l'effectif de Capgemini dans le monde

    Figure 6 : Rpartition des effectifs au 31/12/2007

  • Fabian Piau | Master 2 MIAGe

    16 | 63

    Rapport de stage - 2009

    Capgemini a ralis un chiffre daffaires de 8,710 milliards deuros en 2007, observant une hausse

    de plus de 13% de celui-ci entre cette anne et la prcdente. La trsorerie nette du groupe

    stablissait 774 millions deuros au 31 dcembre 2008. A titre illustratif, la figure 7 montre

    lvolution du chiffre daffaires entre 1995 et 2007.

    Figure 7 : Chiffre daffaires entre 1995 et 2007 en millions deuros

    2.5 Capgemini en France

    Un chiffre daffaires de 800 millions deuros.

    9 000 collaborateurs dans les technology services .

    Une croissance de plus de 10% depuis 2005.

    23 villes.

    Figure 8 : Capgemini France

    0

    1 000

    2 000

    3 000

    4 000

    5 000

    6 000

    7 000

    8 000

    9 000

    1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007

  • Fabian Piau | Master 2 MIAGe

    17 | 63

    Rapport de stage - 2009

    2.6 Capgemini lOuest

    Capgemini Ouest est lune des huit filiales de Capgemini France. Sappuyant sur de fortes

    expertises sectorielles, en particulier dans les secteurs de la Finance, lAssurance et le Service

    Public, lambition de Capgemini Ouest est daider ses clients identifier, structurer et excuter les

    projets de transformation, qui impactent leur croissance ou leur comptitivit en leur conseillant

    les technologies les plus adaptes.

    Capgemini sengage ainsi favoriser la libert daction de ses clients et accrotre leurs rsultats,

    en sappuyant sur une mthode de travail unique - la Collaborative Business Experience - et

    sur un modle de production mondialis baptis Rightshore , qui vise offrir les meilleures

    ressources au meilleur endroit et au meilleur prix.

    L'unit Ouest a t cre il y a 30 ans, elle est aujourdhui prsente dans 8 villes du grand Ouest :

    Nantes, Rennes, Bordeaux, Tours, Orlans, Brest, Rouen et Caen.

    Un effectif de 1 450 collaborateurs ;

    Croissance des effectifs de 63% en cinq ans ;

    Un chiffre daffaires de 106 millions deuros en 2006.

    Figure 9 : Capgemini Ouest

    Capgemini Ouest est prsente auprs de lensemble des grands comptes rgionaux et des entits

    rgionales de structures nationales, voire internationales. Environ 70% de son activit est ralise

    dans les secteurs de la Finance et des Services, 30% dans lIndustrie et la distribution.

  • Fabian Piau | Master 2 MIAGe

    18 | 63

    Rapport de stage - 2009

    Lentreprise est organise autour dunits de dveloppements industriels spcialises sur des

    comptes (BNP, SNCF), des technologies (Business Intelligence, Mainframe, nouvelles

    technologies), ou des secteurs (banque, assurance, services).

    A titre dexemple, voici des logos de plusieurs de ses clients, classs par secteurs.

    Figure 10 : Quelques rfrences de Capgemini Ouest

    2.7 Le centre de services VSCT

    Voici maintenant la prsentation du centre de services que jai intgr au cours des cinq

    mois de mon stage.

    2.7.1 Introduction

    Dans le cadre de projets importants, Capgemini cre des centres de services ddis un

    client, qui sappuient sur un ou plusieurs centres de production.

    Le centre de services (CDS) Voyages-sncf.com Technologies (VSCT) que jai intgr, fait partie de la

    filiale Capgemini Ouest et est bas Nantes. Ce dernier, qui est trs rcent (lancement au dbut

    de lanne 2008), est lui-mme intgr lUnit de Delivery Industriel (UDI) dans la branche

    Services, bnficiant des communauts et expertise de lUDI et des autres centres de services. Il a

    t cr la demande du client VSCT afin de rpondre aux objectifs suivants :

    Augmenter la capacit de production du client ;

    Diminuer le time-to-market ;

    Offrir souplesse, ractivit, efficacit ;

    Utiliser des mthodes industrielles prouves ;

    Proposer un plan de progrs performant, des units de facturation comptitives.

  • Fabian Piau | Master 2 MIAGe

    19 | 63

    Rapport de stage - 2009

    2.7.2 Le client : VSC Technologies

    VSC Technologies est une filiale 100% du groupe SNCF. Cest une entreprise rcente

    (anne 2000) et dynamique (environ 200 personnes), avec un volume d'affaires de 1,86 milliard

    deuros en 2007.

    En effet, celle-ci gre loffre commerciale de la SNCF sur le canal internet, dont le principal site est

    le premier site marchand franais avec plus de neuf millions de visiteurs uniques par mois, en

    moyenne.

    Lentreprise fournit galement des prestations de services et des solutions informatiques en

    matire de distribution ferroviaire en France et linternational travers de nombreuses

    applications.

    Figure 11 : Page daccueil du site voyages-sncf.com

  • Fabian Piau | Master 2 MIAGe

    20 | 63

    Rapport de stage - 2009

    P. BonninSkill Center

    Manager UDDI

    L. KergoatSkill Group

    Manager UDI

    D. GuillonneauEM du Centre de

    Services

    Chef de projet WDI

    Chef de projet VSC

    Chef de projet VFE-EF

    Intgration / Validation

    A. Barraud

    Codir Projet

    Equipes

    2.7.3 Organisation du centre

    Le centre de services VSCT est compos dune quarantaine de personnes rparties sur des

    projets diffrents, savoir :

    Les projets WDI ;

    Les projets VSC ;

    Les projets VFE - EF.

    Par ailleurs, voici un schma reprsentant la hirarchie du centre de services.

    Figure 12 : Structure hirarchique du centre de services VSCT

    Parmi les personnes que jai ctoyes durant mon stage, David Guillonneau est le directeur de

    projet du centre (EM Entity Manager), Aldo Barraud est son adjoint. Ensuite, nous avons les

    chefs de projet sur chacun des projets cits prcdemment puis les quipes de dveloppeurs

    (concepteurs-analystes, architectes, administrateurs de base de donnes, etc.).

    Pour mon premier sujet, lapplication CORS tant nouvelle, une nouvelle quipe a t mise en

    place avec B. Grouitch comme chef de projet.

    Concernant les dveloppements des macros et utilitaires, jai travaill avec D. Guillonneau, A.

    Barraud et B. Grouitch, les principaux utilisateurs.

    Pour mon second sujet, je ntais pas dans une quipe particulire, lintgration continue tant

    transverse tous les projets et concernant le centre dans sa globalit. Nanmoins, jai

    principalement collabor avec V. Le Squere, responsable de lintgration continue du centre de

    services.

  • Fabian Piau | Master 2 MIAGe

    21 | 63

    Rapport de stage - 2009

    3. PRSENTATION DU STAGE

    Ce troisime chapitre aborde mon stage du point de vue organisationnel. Il montre

    quelles sont les diffrentes missions et tches qui mont t confies et comment elles se sont

    agences au cours des cinq mois.

    3.1 Planification

    3.1.1 Les dates cls

    Le stage a dbut le 23 mars 2009 par la dcouverte de lentreprise, et plus

    particulirement le centre de services VSCT, o jai t intgr rapidement lquipe ; il sest

    achev le 28 aot 2009. La soutenance orale du stage a t programme pour le 25 aot 2009,

    durant la dernire semaine de stage. Les participants taient mes responsables chez Capgemini et

    mes responsables universitaires.

    3.1.2 Calendrier

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

    Mars Arrive dans l'quipe, Intgration,

    Lecture des documents

    Avril Projet CORS [sujet 1]

    Mai Projet CORS [sujet 1]

    Juin Ralisation de macros et dutilitaires [priode transitoire]

    Juillet Mise en place dune Plateforme dIntgration Continue [sujet 2]

    Aot Mise en place dune Plateforme dIntgration Continue [sujet 2]

    Figure 13 : Calendrier simplifi

    Ce calendrier est un document trs simple comprendre, mais la notion de dure ny est pas

    explicitement reprsente. Grce au jeu de couleurs utilis, on distingue nettement les quatre

    grandes phases de mon stage.

  • Fabian Piau | Master 2 MIAGe

    22 | 63

    Rapport de stage - 2009

    3.1.3 Les phases et tapes

    Je vous propose un calendrier beaucoup plus prcis que le prcdent. Les diffrentes

    tches y sont beaucoup plus dtailles. Jai pris soin de noter ce que je faisais jour aprs jour. Le

    diagramme ci-dessous fait une synthse de ce travail rgulier, il reflte donc parfaitement la

    ralit. Le jeu de couleur du calendrier simplifi a t repris.

    Tche Priode Nombre de jours ouvrs

    Mars

    Arrive dans l'quipe, Intgration, Lecture des documents Du mardi 25 au vendredi 27 mars 5

    Ralisation Macro EID (Excel/Word) pour calculer automatiquement le nombre d'UF Du lundi 30 au mardi 31 mars 2

    Avril

    Prise de connaissance du projet CORS: Lecture cahier des charges Mercredi 1 avril 1

    Monte en comptences sur Hibernate (petits exercices) Du jeudi 2 au vendredi 3 avril 2

    Monte en comptences sur AppFuse (application blanche open source) Du lundi 6 au jeudi 9 avril 4

    Comparaison de diffrents outils pour la cration de maquettes Vendredi 10 avril 1

    Cration des maquettes CORS (version 1) Du mardi 14 au mercredi 15 avril 2

    Confrence tlphonique avec le client Jeudi 16 avril 1

    Participation la rdaction des spcifications CORS (version 1) Vendredi 17 avril 1

    Rvision des maquettes (version 2) Lundi 20 avril 1

    Atelier 1 avec le client Mardi 21 avril 1

    Rvision des maquettes (version 3) + Diagramme de classes (version 1) Du mercredi 22 au jeudi 23 avril 2

    Monte en comptences sur l'application blanche interne Capgemini Du vendredi 24 au lundi 27 avril 2

    Atelier 2 avec le client Mardi 28 avril 1

    Rvision des maquettes (version 4) + Diagramme de classes (version 2) Du mercredi 29 au jeudi 30 avril 2

    Mai

    Choix technologique sur l'application blanche (interne Capgemini), connexion de l'appli. blanche avec MySQL Lundi 4 mai 1

    Lecture documentation dtaille et technique appli. blanche interne Capgemini, Gnration de code partir d'un modle Du mardi 5 au jeudi 7 mai 3

    Test du bouchon CAS pour l'authentification et liaison avec l'appli. blanche Du lundi 11 au mercredi 13 mai 3

    Diagramme de classes (version 3) + Cration du MCD (version 1) Jeudi 14 mai 1

    Monte en comptences sur Displaytag (pagination, tri des tableaux) et liaison avec l'appli. blanche Vendredi 15 mai 2

    Monte en comptences Struts 2 Lundi 18 mai 1

    Cration prsentation PowerPoint pour prsenter le projet CORS Mardi 19 mai 1

    Monte en comptences sur JQuery Du mercredi 20 au lundi 25 mai 1

    Monte en comptences sur DisplayTag coupl AJAX Mardi 26 mai 1

    Liaison des tableaux l'appli. blanche Du mercredi 27 au jeudi 28 mai 2

    Appel client - Projet suspendu Vendredi 29 mai

  • Fabian Piau | Master 2 MIAGe

    23 | 63

    Rapport de stage - 2009

    Juin Ralisation d'un programme d'automatisation de ClearQuest avec WatiN Du mardi 2 au lundi 8 juin 5

    Documentation du programme d'automatisation Mardi 9 juin 1

    Macro Excel pour automatiser la comparaison des tats (version 1) Du mercredi 10 au vendredi 12 juin 3

    Macro Excel pour automatiser la comparaison des tats (version 2) Du lundi 15 au mercredi 17 juin 3

    Documentation de la macro de comparaison Jeudi 18 juin 1

    Amlioration Macro Excel de facturation Du vendredi 19 au mardi 23 juin 3

    Rdaction du rapport de stage Du mercredi 24 au jeudi 25 juin 2

    Macro Excel pour automatiser la comparaison des tats (version 3) Du vendredi 26 au lundi 29 juin 2

    Mise jour de la documentation de la macro de comparaison Mardi 30 juin 1

    Juillet

    Runion 2me

    sujet de stage Mercredi 1 juillet 1

    Monte en comptences sur l'intgration continue Du jeudi 2 au lundi 6 juillet 3

    Rdaction documentation sur l'intgration continue (version 1) Du mardi 7 au jeudi 16 juillet 6

    Rdaction du rapport de stage Vendredi 17 juillet 1

    Installation du projet B2B sur mon poste Du lundi 20 au vendredi 24 juillet 5

    Rvision documentation sur l'intgration continue (version 2) Du lundi 27 au mercredi 29 juillet 3

    Rdaction de la procdure mise en conformit du dpt B2B (version 1) Du jeudi 30 au vendredi 31 juillet 2

    Aot

    Rvision de la procdure mise en conformit du dpt B2B (version 2) Mardi 4 aot 1

    Monte en comptences sur Maven et plug-ins Du mercredi 5 au lundi 10 aot 4

    Rvision de la procdure mise en conformit du dpt B2B (version 3) Du mardi 11 au jeudi 13 aot 3

    Monte en comptence sur Hudson Vendredi 14 aot 1

    Configuration dHudson sur B2B Du lundi 17 au jeudi 27 aot 8

    Fin du stage Vendredi 28 aot

    Table 2 : Calendrier dtaill

    On peut distinguer les deux principaux projets que lon ma donns faire. Notamment, le

    premier qui a t suspendu aprs deux mois et le second qui est venu plus tard, un mois aprs

    quelques petits dveloppements et une avance dans la rdaction de ce rapport.

    On peut galement observer les itrations, avec des montes de version, dues des nouveaux

    besoins du client ou des utilisateurs. Cest, par exemple, le cas des maquettes et des diagrammes

    pour le projet CORS qui ont t rviss plusieurs fois, le cas des macros avec lajout de nouvelles

    fonctionnalits et le cas de nombreux documents.

  • Fabian Piau | Master 2 MIAGe

    24 | 63

    Rapport de stage - 2009

    3.2 Prsentation succincte des projets

    Ce chapitre introduit chacun des projets auxquels jai particip et prsente brivement le

    travail accompli. Dans un premier temps, nous aborderons laspect fonctionnel uniquement. Cest

    le chapitre suivant qui prsentera laspect technique.

    3.2.1 Le projet CORS

    Les applications informatiques actuelles utilisent de nombreux fichiers de configuration

    pour pouvoir fonctionner. Cela peut tre, par exemple, un fichier contenant lURL et le login/mot

    de passe pour se connecter une base de donnes.

    Lobjectif du projet CORS (COnfiguration Repository System) est de fournir un rfrentiel de

    toutes ces proprits et configurations et de pouvoir les grer dans une base de donnes avec des

    mcanismes permettant de les utiliser au sein des applicatifs dj existant de VSCT.

    Le projet se concrtisera par une application Web Intranet qui permettra aux utilisateurs

    Dveloppeurs , Intgrateurs , Exploitants de configurer et paramtrer les proprits des

    applications en fonction des versions et des environnements.

    Le projet CORS tant un nouveau projet, le client VSCT a donc fait parvenir le cahier des charges

    au centre de services. Aprs lecture de ce cahier des charges, qui contient toutes les exigences

    fonctionnelles et techniques du client, jai assist le chef de projet dans sa tche de rdaction des

    spcifications. Jai notamment cr les maquettes de lapplication, modlis des diagrammes,

    aid dfinir les rgles de gestion de la future application et particip aux runions avec le client

    pour bien dfinir et comprendre ses besoins.

    3.2.2 Dveloppement dutilitaires pour automatiser la

    gestion de projet

    Aprs la suspension du projet CORS, plusieurs dveloppements mont t donns. Ce fut

    une priode transitoire en attendant mon second sujet, mais qui a t intressante. Jai ainsi

    ralis trois macros sous Excel et un utilitaire utilisant lautomatisation de tests.

    Les sujets concerns par ces outils taient le chiffrage, la facturation des projets et la gestion des

    tickets. Le sujet commun est donc la gestion de projet. Nous reviendrons sur ces notions dans le

    chapitre suivant.

    Jai accompagn ces dveloppements par des rdactions de documents (disponible dans le

    rapport des annexes). Ce fut, en quelque sorte, des mini-projets rpondant aux besoins des

    utilisateurs. Les macros ne sont, en gnral, pas considres comme des dveloppements trs

    volus , mais ils mont permis de mieux apprhender la gestion de projet, en particulier le

    processus de facturation.

  • Fabian Piau | Master 2 MIAGe

    25 | 63

    Rapport de stage - 2009

    3.2.3 Mise en place dune plateforme dintgration continue

    Dans le cadre de mon second sujet, jai contribu la mise en place dune plateforme

    dintgration continue au sein du centre de services. Il est difficile de dfinir lintgration continue

    (IC) dans son ensemble, en seulement quelques lignes. Je vous invite donc consulter le dossier

    complet sur lintgration continue disponible dans le rapport des annexes.

    Nanmoins, tchons de donner, dans ce rapport, une dfinition pragmatique en vitant de

    tomber dans laspect trop technique. Avec les mthodes de dveloppement traditionnelles, la

    cration dun logiciel se fait en cinq tapes principales, suivant un ordre bien dfini : spcification,

    dveloppement, intgration, recette puis livraison. On parle de cycle de vie dun projet.

    Lintgration continue est une mthode de dveloppement assez rcente qui permet dacclrer

    le processus de livraison dune application un client.

    Concrtement, lintgration est ltape o on va intgrer le travail de tous les dveloppeurs sous

    un seul produit. En ralit, cette intgration est faite de manire continue avec les gestionnaires

    de versions (voir dfinition prcise dans le glossaire). Dailleurs, le gestionnaire de versions est un

    pr-requis lintgration continue. Lintgration continue va beaucoup plus loin quun simple

    gestionnaire de versions, en testant ces intgrations tous les jours trs rgulirement. On va donc

    vrifier chaque modification de code source que le rsultat des modifications ne produit pas de

    rgression de l'application en cours de dveloppement. Dans le cas dun projet fonctionnant sur le

    mode IC, il ny a plus une seule phase dintgration la fin du dveloppement, mais des petites

    phases dintgration tout au long du dveloppement.

    Pour mieux comprendre, voici un schma (extrait du dossier) qui compare lavant et laprs

    intgration continue.

    Figure 14 : Avant et aprs la mise en place de lIntgration Continue

  • Fabian Piau | Master 2 MIAGe

    26 | 63

    Rapport de stage - 2009

    Mon travail sest organis en plusieurs tches, toutes autour de lIC. Le but ntait pas de mettre

    en place lintgration continue sur tous les projets du centre du jour au lendemain. Cela aurait t

    tout simplement impossible.

    Mon objectif a t dintroduire lintgration continue lensemble des collaborateurs du centre.

    Cette introduction sest concrtise avec la mise en place de lIC sur un des projets du centre : le

    projet B2B . Cest un des projets les plus avancs du centre en matire dIC, loutil Maven ,

    par exemple, a dj t install. Maven est un outil de gestion de dpendances et de compilation,

    grce a l'ajout de plug-in, il permet aussi de gnrer de la documentation (javadoc, mtriques),

    grer le dploiement ainsi que les versions d'un projet.

  • Fabian Piau | Master 2 MIAGe

    27 | 63

    Rapport de stage - 2009

    4. PRSENTATION DU TRAVAIL RALIS

    Dans ce chapitre, nous allons voir prcisment ce qui a t ralis durant le stage. Pour

    obtenir encore plus dinformation sur les sujets abords, je vous invite lire le second rapport

    contenant toutes les annexes.

    4.1 Le projet CORS

    4.1.1 Contexte

    Lors du dveloppement dune application, les dveloppeurs ont besoin de dfinir et

    ensuite utiliser des proprits dans leur code. Le principe de lutilisation des proprits est de

    permettre le changement de leur valeur par simple modification dans les fichiers de proprits

    concerns. Dun environnement un autre, ces proprits changent, par exemple le port sur

    lequel est dmarr un service.

    A chaque fois, ce sont les personnes en charge de lenvironnement qui doivent modifier ces

    valeurs. On peut facilement voir que devant un grand nombre de proprits et un certain nombre

    denvironnements, cette tche de modification des proprits peut devenir rapidement

    fastidieuse et prompte des erreurs occasionnant des problmes de dmarrage et souvent des

    dysfonctionnements applicatifs.

    4.1.2 Les utilisateurs

    Ce tableau dcrit succinctement les diffrents futurs utilisateurs de lapplication.

    Fonction

    Rle Description

    fonctionnelle

    Responsabilits

    Dveloppeurs

    En charge de la fourniture des composants applicatifs. Les dveloppeurs de VSCT sont bass Levallois.

    Gre les proprits sur lenvironnement de dveloppement

    - Codage et tests unitaires des composants applicatifs - Assemblage, paramtrage et livraison des composants applicatifs

    Intgrateurs En charge du dploiement des diffrents composants applicatifs dans les environnements dintgration. Les intgrateurs de VSCT sont bass Nantes.

    Gre les proprits sur lenvironnement de test

    - Paramtrage des composants applicatifs en fonction des environnements cibles - Prparation des donnes applicatives - Livraison - Dploiement

  • Fabian Piau | Master 2 MIAGe

    28 | 63

    Rapport de stage - 2009

    Exploitants En charge du dploiement des diffrents composants applicatifs dans les environnements de recette, pr- production, MAB et de production. Les exploitants de VSCT sont bass Lilles.

    Gre les proprits sur lenvironnement de pr-production et de production

    - Paramtrage des composants applicatifs en fonction des environnements cibles - Migration des donnes applicatives - Dploiement des versions en production

    Table 3 : Utilisateurs de lapplication CORS

    4.1.3 Existant VSCT

    Actuellement, cest le dveloppeur qui initialise le rfrentiel de proprits, par la suite

    lintgrateur et les exploitants se chargent de valoriser ces proprits en fonction de leur

    environnement. Il peut arriver, actuellement quun intgrateur et/ou un exploitant ait rajouter

    des proprits dans le rfrentiel. Ensuite, ces acteurs utilisent des mcanismes pour gnrer les

    proprits dans les bons fichiers.

    Nous allons maintenant voir le rfrentiel de proprits, le rfrentiel de configurations et les

    mcanismes de gnration des fichiers.

    4.1.3.1 Le rfrentiel de proprits

    Il y a un rfrentiel de proprits par version dapplication. Ce rfrentiel contient un

    certain nombre dinformations comme le nom de lapplication, sa version, les cls des proprits

    ainsi que leurs valeurs pour tous les environnements.

    Cl1=Valeur1

    Cl2=Valeur2

    Cl3=Valeur3

    Cl4=Valeur4

    Cl5=Valeur5

    Cl6=Valeur6

    Code 1 : Exemple de fichier de proprits

    Le fichier de proprits est un fichier texte contenant des proprits, c'est--dire des couples

    (cl=valeur), et auquel on ajoute lextension .properties . A une cl correspond toujours une

    unique valeur. On lappelle galement fichier properties .

  • Fabian Piau | Master 2 MIAGe

    29 | 63

    Rapport de stage - 2009

    4.1.3.2 Le rfrentiel de configurations

    Actuellement les fichiers de configuration qui sont pris en charge dans le rfrentiel sont :

    Le MANIFEST.MF ;

    Les fichiers de configuration de log4j (Appenders et Logger) ;

    Les fichiers de configuration de ehCache ;

    Les fichiers de configuration de jBossCache ;

    Les fichiers de configuration spcifiques VSCT (tpfnet.xml, etc.).

    Le principe du rfrentiel de configurations est le mme que celui du rfrentiel de proprits. A

    savoir des cls, avec une valeur, dfinie en fonction du nom de lapplication, de la version et de

    lenvironnement.

    Voici un exemple de fichier de configuration.

    n/a

    n/a

    2

    1

    horizontal

    33

    166

    16

    45

    Code 2 : Exemple de fichier de configuration

    Le fichier de configuration est un fichier XML, il est plus compliqu et plus structur que le fichier

    de proprits. Il est en effet moins vident de relier une cl sa valeur. Par exemple, la valeur

    33 aurait comme cl osd.meterPosition.x (dans le cas dun fichier de proprits

    quivalent).

    4.1.3.3 Mcanismes de gnration des fichiers de proprits et de

    configuration

    Une fois que les deux rfrentiels sont bien initialiss dans Excel, des scripts sont utiliss

    pour gnrer les fichiers correspondants. La figure 15 montre un exemple dutilisation des

  • Fabian Piau | Master 2 MIAGe

    30 | 63

    Rapport de stage - 2009

    mcanismes de gnration. Les fichiers de configuration et de proprits sont ensuite copis dans

    le bon rpertoire de lapplication.

    Figure 15 : Gestion actuelle des proprits et des configurations

    Comme le montre ce schma, la gestion des rfrentiels se fait par lintermdiaire dun fichier

    Excel conserv sous Subversion (cf. gestionnaire de versions dans le glossaire). Ce classeur

    Excel sert donc de rfrence pour la gnration des fichiers de configuration dans les diffrents

    environnements.

    4.1.4 Les besoins du client

    Avant la mise en place de ce fichier Excel versionn, la gestion des proprits et des

    configurations se faisait directement dans les fichiers *.properties et *.xml. Ce processus manuel

    rendait lourd le paramtrage et le suivi du nombre croissant de proprits.

  • Fabian Piau | Master 2 MIAGe

    31 | 63

    Rapport de stage - 2009

    La consquence tait une charge lie ces proprits qui ne facilitait pas le dploiement des

    applications. La mise en place de loutil Excel de gestion des proprits a permis de rduire la

    charge et damliorer la qualit des oprations de dploiement en les automatisant dans une

    moindre mesure, mais ce nest pas encore la solution la plus fiable long terme.

    Les besoins clients sont de :

    Grer les proprits et les configurations dans une base de donnes, lobjectif est de

    remplacer le fichier Excel par une base de donnes ;

    Avoir une interface web qui permet dadministrer cette base de donnes ;

    Avoir des mcanismes permettant de rcuprer les proprits et les configurations

    depuis la base de donnes et de crer les fichiers (script, plug-in Maven).

    Figure 16 : Gestion des proprits et des configurations avec CORS

  • Fabian Piau | Master 2 MIAGe

    32 | 63

    Rapport de stage - 2009

    La future architecture (figure 16) est beaucoup plus centralise. CORS est mise jour via son

    interface Web par les diffrents acteurs. La base de donnes est mise jour en consquence.

    CORS est une application scurise qui utilisera lauthentification SSO (Single Sign On), c'est--dire

    on se connecte une seule fois pour lensemble des applications web de VSCT.

    Ensuite, pour gnrer les fichiers de proprits et de configuration, lapplication CORS utilisera

    loutil Maven. Cette gnration sera, soit dclenche directement depuis lapplication (plug-in

    CORS pour Maven), soit dclenche distance en interrogeant un WebService (cf. glossaire).

    4.1.5 Conception et analyse

    Le projet CORS est un nouveau projet, je suis arriv dans le centre de services peu aprs

    que le client ait envoy le cahier des charges. Jai donc intgr la nouvelle quipe trs tt et

    participer la premire phase danalyse et de spcifications.

    Durant cette phase, jai principalement travaill sur la ralisation des maquettes de lapplication

    et sur la cration des modles (donnes, classes, etc.). Durant toute cette phase, jai travaill

    conjointement avec B. Grouitch, le chef de projet, et particip aux runions clients.

    Il ny avait pas doutils spcifiques de maquettage au centre de services. Jai donc fait des

    recherches sur internet et essay diffrentes solutions. Le tableau ci-dessous recense lensemble

    des outils que jai pu tester. Ces outils sorganisent en deux catgories, la premire o lon ne cre

    que des maquettes visuelles, c'est--dire statiques, des images ; et la deuxime o lon cre des

    maquettes fonctionnelles, c'est--dire que lutilisateur peut interagir avec elles (clic sur un

    bouton), il y a un aspect dynamique.

    Cration de maquettes visuelle Cration de maquettes fonctionnelles Photoshop (version d'valuation) NVU (gratuit)

    Ms Paint (intgr dans Windows) Dreamweaver (version d'valuation)

    The Gimp (gratuit) Axure RP (version d'valuation)

    iPlotz (gratuit, outil en ligne) Editeurs web divers...

    SmartDraw (version d'valuation)

    Visio, PowerPoint (payant -> inclus dans la suite Microsoft Office)

    Table 4 : Comparaison doutils pour la cration de maquettes

    Sachant que les maquettes devaient tre ralises rapidement et quelles allaient srement tre

    modifies au fil du temps, mon choix sest rapidement tourn vers la cration visuelle .

    Nanmoins, javais commenc avec des maquettes fonctionnelles, mais je me suis vite aperu que

    cela demandait beaucoup trop de temps faire, mme sil est vrai que ce travail ntait pas inutile

    et quil allait tre repris pour le dveloppement.

  • Fabian Piau | Master 2 MIAGe

    33 | 63

    Rapport de stage - 2009

    Ct logiciel, mon choix sest port sur loutil iPlotz que je ne connaissais pas, mais qui a tout de

    suite retenu mon attention.

    Cest une application web gratuite utilisant la technologie flash. Il ny a donc pas besoin

    dinstallation, un simple navigateur suffit.

    On y trouve une bibliothque dlments graphiques qui est trs complte. Un simple glisser-

    dposer suffit pour ajouter des lments une maquette. Il est possible den crer plusieurs sous

    un seul projet et de les enregistrer.

    Enfin, cest un outil gratuit, cependant il est ncessaire de senregistrer pour pouvoir enregistrer

    ses crations.

    Le rsultat final donne un aspect brouillon ou dessin ralise la main , mais qui reste

    finalement professionnel. La nouvelle version diPlotz permet davoir des styles supplmentaires

    tels que les styles Windows et Mac, mais cette option ntait pas encore disponible dans la

    version que jai utilise.

    La copie dcran ci-dessous montre lcran principal de lapplication. Jai volontairement mis des

    objets divers (graphiques, nuages de tags, barre de volume, carte, pop-up, etc.) pour montrer la

    richesse de la bibliothque propose.

    Figure 17 : Interface diPlotz

  • Fabian Piau | Master 2 MIAGe

    34 | 63

    Rapport de stage - 2009

    Voici un exemple de maquette fonctionnelle ralise au dbut. Elle a t cre sous Eclipse.

    Mme si le rsultat en valait la peine, cela prenait trop de temps et la date de la runion avec le

    client approchait grands pas

    Figure 18 : Une maquette fonctionnelle de CORS

    En voici une autre, mais ralise sous iPlotz. Javouerais quelle est moins jolie que la

    premire, mais elle a t beaucoup plus rapide raliser.

    Figure 19 : Une maquette visuelle de CORS

    Laspect visuel tant toujours plus attrayant et facile comprendre quun long texte, les

    maquettes ont t le principal support durant les runions avec le client. Jai notamment ajout

    des commentaires pour dtailler laspect fonctionnel manquant ces images statiques. Ainsi, on

    peut apercevoir quelques commentaires sur la figure 19 ci-dessus.

  • Fabian Piau | Master 2 MIAGe

    35 | 63

    Rapport de stage - 2009

    Durant les runions avec le client, nous nous arrtions sur chacune des maquettes, et discutions

    dessus. Les jours suivants, je moccupais de les mettre jour, den crer de nouvelles dans le cas

    dun nouveau besoin client, etc. Une fois rvises, elles taient ensuite remontres au client.

    Ainsi, le processus tait itratif en vue datteindre un consensus et, surtout, pour quelles

    rpondent parfaitement aux attentes du client.

    Voici un autre exemple, la cration dune version. Il y a eu en tout quatre itrations et cette

    maquette a t rvise quatre fois (cest le cas le pire, certaines nayant pas eu besoin dtre

    rvises).

    Figure 20 : Maquette de cration dune version [version 1 15/04/2009]

    Figure 21 : Maquette de cration dune version [version 2 21/04/2009]

  • Fabian Piau | Master 2 MIAGe

    36 | 63

    Rapport de stage - 2009

    Figure 22 : Maquette de cration dune version [version 3 24/04/2009]

    Figure 23 : Maquette de cration dune version [version 4 28/04/2009]

    Nous avons pris un seul exemple ici, mais les rvisions concernaient en gnral la majorit des

    maquettes. Vous les trouverez toutes en version finale dans le rapport des annexes.

  • Fabian Piau | Master 2 MIAGe

    37 | 63

    Rapport de stage - 2009

    Il a t difficile darriver un consensus pour deux raisons principales :

    Lapplication CORS va tre utilise par diffrents types dutilisateur (dveloppeur,

    intgrateur, exploitant). Ces utilisateurs ne sont pas forcment habitus travailler de la

    mme faon. Certains avaient leur point de vue et voulaient que lapplication fonctionne

    ainsi, dautres prfraient un mode de fonctionnement diffrent.

    Lapplication est complexe dun point de vue fonctionnel, il y beaucoup de rgles de

    gestion mettre en place. La frontire entre environnement, version et application ntait

    pas trs claire.

    Une fois les maquettes termines et valides par le client, mon travail a t la cration des

    diagrammes de lapplication. Ces diagrammes ont, eux aussi, d tre rviss plusieurs reprises.

    Les voici dans leurs dernires versions.

    Figure 24 : Diagramme de classes de lapplication [version 4 13/05/2009]

  • Fabian Piau | Master 2 MIAGe

    38 | 63

    Rapport de stage - 2009

    Figure 25 : Modle de donnes de lapplication [version 2 13/05/2009]

    Ce modle montre lorganisation des donnes de lapplication dans la base de donnes (lien entre

    les tables, composition des tables, identifiants, etc.).

  • Fabian Piau | Master 2 MIAGe

    39 | 63

    Rapport de stage - 2009

    Figure 26 : Modle de navigation [version 2 30/04/2009]

    Mon travail ne sest pas limit la cration des maquettes et des diagrammes, jai galement

    particip la rdaction des spcifications avec un travail de relecture et jai apport mon aide

    dans la dfinition des rgles de gestion.

  • Fabian Piau | Master 2 MIAGe

    40 | 63

    Rapport de stage - 2009

    4.1.6 Dveloppement

    La majorit de mon travail sur CORS sest focalise sur lanalyse et la conception.

    Nanmoins, jai pu avancer sur le dveloppement.

    Voici mes ralisations principales :

    Dfinition de lenvironnement de dveloppement : la liste prcise des logiciels

    installer sur son poste pour pouvoir commencer dvelopper sur CORS.

    Comparaison dapplications blanches. Comparaison de 3 applications blanches :

    AppFuse (projet open source) et deux solutions dapplication blanche internes au

    groupe.

    Capgemini sest engag depuis fin 2003 dans un processus dindustrialisation des

    projets Nouvelles Technologies et a intgr les frameworks Open Source les plus

    utiliss pour concevoir lApplication Blanche.

    LApplication Blanche est issue de ces travaux dindustrialisation et permet de

    matriser et de rduire les risques techniques en termes :

    - dintgration technologique ;

    - dinteroprabilit ;

    - de performances.

    LApplication Blanche constitue le socle applicatif et technique utilis par

    Capgemini et disponible pour ses clients pour le dveloppement des applications

    Java EE et des applications utilisant des composants Open Source.

    Connexion de lapplication blanche ITC interne (application blanche retenue) avec

    le SGBD MySQL. Par dfaut, cette application blanche est relie au SGBD HSQLB

    et plus exactement une base de donnes en mmoire.

    Authentification CAS (Central Authentication Service). Le projet CAS est un projet

    open source dauthentification qui va se greffer lapplication blanche et lui

    ajouter une fonctionnalit dauthentification scurise de type SSO.

    Tableaux dynamiques. Lapplication CORS devra utiliser des tableaux assez

    complexes, combinant diffrentes fonctionnalits telles que la pagination, le tri,

    la possibilit dafficher ou de masquer une colonne, un traitement Ajax, etc. Jai

    donc avanc sur le sujet en testant et comparant des technologies existantes.

    Je ne vais pas dcrire chacun de ces points dans ce rapport, tout le dtail est disponible dans les

    notes de projet dans le rapport des annexes.

  • Fabian Piau | Master 2 MIAGe

    41 | 63

    Rapport de stage - 2009

    4.1.7 Le devenir du projet CORS

    Comme je lai dj signal, suite appel du client, le projet a t suspendu. Cette dcision

    est lie des contraintes budgtaires et des changements de priorits en interne. Mon sujet de

    stage sest donc termin de faon inattendue aprs deux mois.

    Quoi quil en soit, la phase danalyse et de conception est acheve, le projet ayant t suspendu

    quelques jours seulement avant le dbut de la phase de dveloppement.

    Jai rdig les notes de projet sur CORS afin que le centre de services ait une trace crite de tout

    ce que jai dj fait en dveloppement. Ces notes aideront la future quipe de dveloppement

    lors de la reprise du projet.

    Le projet CORS attend dsormais le feu vert du client pour continuer.

  • Fabian Piau | Master 2 MIAGe

    42 | 63

    Rapport de stage - 2009

    4.2 Dveloppement dutilitaires de gestion de

    projet

    Voici une description de chacun des quatre utilitaires que jai raliss, destination des

    directeurs et chefs de projet. Cette priode de dveloppement, que lon peut qualifier de

    transitoire en attendant mon second sujet, a dur un mois.

    4.2.1 Chiffrage et facturation des projets [2 macros]

    4.2.1.1 Macro de chiffrage

    Jai ralis une macro permettant le chiffrage des projets. Concrtement, pour chaque

    nouveau projet, le centre de services ralise une tude dimpact macroscopique (EIM) puis une

    Etude dImpact Dtaill (EID). Ces deux tudes prliminaires vont permettre au centre destimer

    les charges du nouveau projet.

    La mthode destimation de charges utilise est la dcomposition par cran. Pour chacun des

    futurs crans de lapplication, on va valuer son niveau de complexit et son type. Plus lcran est

    complexe, plus la charge sera importante. On parle dUO (unit uvre) pour un type dcran.

    La charge est calcule en Units de Facturation (UF). Le chiffrage en UF est tout compris, il

    comprend la conception technique dtaille, le dveloppement et les tests unitaires, lintgration,

    la qualification interne, la livraison, lassistance recette, les corrections aprs recette, le pilotage,

    la qualit Support et Architecture ainsi que la garantie.

    Fonctionnellement, la macro parcourt lEID qui est un document Word. Au fur et mesure de la

    lecture de lEID, la macro va alimenter le tableau Excel qui va calculer la charge par type

    dcran et la charge totale.

    Figure 27 : Chiffrage automatis dun projet

    Pour que la macro puisse reconnaitre les donnes traiter, lEID Word doit rpondre

    certaines exigences. Les donnes doivent tre saisies dans des tableaux dont les enttes sont

    normaliss, les valeurs saisies dans ces tableaux doivent respecter une syntaxe particulire.

    Lannexe 3.1 Macro de chiffrage contient le document test que jai rdig pour cette macro.

    Vous y trouverez des exemples de tableaux normaliss.

    Macro de

    chiffrage Excel

    EID

    dun projet

    Parcourt Met jour

    Fichier Excel de

    chiffrage

  • Fabian Piau | Master 2 MIAGe

    43 | 63

    Rapport de stage - 2009

    A la fin de son traitement, cette macro produit un fichier de log (historique dvnements ou

    journal) comme celui-ci :

    Rpertoire courant: D:\Mes Documents\Work\Macro\

    Nombre de tableaux dans le word: 58

    ** Tableau numro 8 traiter -> 4 ligne(s)

    Ligne 3, composant: Ecran client lger

    Ligne 3, nombre: 1

    Ligne 3, complexit: Simple

    Ligne 3, type: Cration

    Ligne 4, composant: Service applicatif

    Ligne 4, nombre: 1

    Ligne 4, complexit: Moyen

    Ligne 4, type: Cration

    ** Tableau numro 50 traiter -> 5 ligne(s)

    Ligne 3, composant: Ecran client lger

    Ligne 3, nombre: 1

    Ligne 3, complexit: Simple

    Ligne 3, type: Duplication

    Ligne 4, composant: Service applicatif

    Ligne 4, nombre: 1

    Ligne 4, complexit: Complexe

    Ligne 4, type: Cration

    Ligne 5, composant: Service applicatif

    Ligne 5, nombre: 1

    Ligne 5, complexit: Simple

    Ligne 5, type: Cration

    Traitement termin...

    Code 3 : Exemple de fichier de log de la macro de chiffrage

    Il permet lutilisateur de vrifier si toutes les donnes de chiffrage dans lEID ont t traites.

    Avant la mise en place de cette macro, une dmarche manuelle tait ralise. Le fichier Word

    tait parcouru manuellement, le chef de projet additionnant la main tous les UF. Bien sr, le

    risque derreur tait trs important, mme aprs relecture.

    Pour lanecdote, ma macro de chiffrage a t utilise pour le chiffrage du projet CORS.

  • Fabian Piau | Master 2 MIAGe

    44 | 63

    Rapport de stage - 2009

    4.2.1.2 Macro de facturation

    Le centre de services utilise une macro Excel pour grer la facturation de ses projets. A

    partir de diffrents fichiers de suivi Excel, la macro additionne tous les montants des lments

    facturs pour un mois choisi. Certaines fonctionnalits taient manquantes, jai donc repris le

    dveloppement de cette macro.

    Les fichiers de suivi Excel sont utiliss par les chefs de projet, ils servent faire le suivi de la

    consommation, du reste faire, du r-estim, des dates d'affectation et de livraison, etc. et bien

    sr, ils sont utiliss dans le processus de facturation. Ces fichiers sont donc trs importants au sein

    du centre.

    Les fichiers de suivi Excel contiennent lensemble des tickets (une ligne par ticket) dun mme

    type. Les tickets pouvant tre des anomalies, des demandes de ralisation ou dvolution, des

    demandes dEID, dEIM, etc. Tous ces tickets sont crs au fur et mesure de la vie du centre. Par

    exemple, un chef de projet cre un ticket de type anomalie suite un bogue report par le client

    VSCT. Ce ticket est ensuite affect un dveloppeur qui corrige le code. Une fois lanomalie

    corrige et valide par le client, le ticket est ferm et peut tre factur.

    Concrtement, la macro de facturation fonctionne ainsi : elle parcourt tous les fichiers de suivi

    Excel et regarde lensemble des tickets qui ont t ferm au cours du mois. Bien sr, le traitement

    est un peu plus compliqu, mais cest le fonctionnement gnral.

    Le processus de facturation tant confidentiel, il ny aura pas de copie dcran ou davantage

    dexplications.

    Ce travail ma amen comprendre le ct fonctionnel de la macro et ma donc permis davoir

    une meilleure comprhension du processus de facturation.

    4.2.1.3 Technologies utilises

    Pour faire les macros sous Excel, jai utilis le langage Visual Basic for Applications (VBA),

    une implmentation de Microsoft Visual Basic qui est intgre dans toutes les applications de

    Microsoft Office.

    Ayant dj eu loccasion de dvelopper des macros durant un de mes prcdents stages, jtais

    donc laise avec ces technologies.

    Une chose nouvelle concernait la macro de chiffrage qui regarde dans un fichier Word. Jusqu

    maintenant, jtais habitu raliser des macros qui ne concernaient quun seul fichier, le fichier

    en cours contenant la macro.

  • Fabian Piau | Master 2 MIAGe

    45 | 63

    Rapport de stage - 2009

    4.2.2 Suivi des tickets ClearQuest [1 utilitaire, 1 macro]

    4.2.2.1 Explications sur ClearQuest et les tickets

    Pour grer lensemble des services (anomalies, volutions...) demands par VSCT, il est

    ncessaire davoir un outil de gestion avec une interface Web pour faciliter le travail collaboratif.

    Celui-ci, choisi par le client, car dj maitris par leurs services, est le logiciel ClearQuest.

    Rational ClearQuest est un logiciel commercial du fabricant IBM, cest un outil souple et puissant

    permettant d'effectuer le suivi des tches au cours du droulement dun projet. Plus

    particulirement, et cest ce qui va nous intresser, il permet de contrler en permanence ltat

    des diffrents services demands par VSCT. Par exemple, VSCT peut ouvrir une demande de

    correction danomalie (cest le fameux ticket dont nous avons parl pour prsenter la macro

    de facturation) suite un problme rencontr sur une des applications. Grce cet outil, il nous

    est possible de suivre le moindre changement dtat, la date de ce dernier ainsi que la personne

    ayant excut cette modification depuis son tat initial dans ClearQuest. Lexemple ci-dessous

    dtaille ce processus.

    Figure 28 : Le processus ClearQuest pour une correction danomalie

    Sur cette figure, nous pouvons voir plusieurs transitions portant un nom (Assigned,

    Submitted, Rejected, Resolved, Integrated, Closed). Chaque fois quun ticket va changer

    dtat, cela sera d une action sur celui-ci, correspondant auxdits noms.

    Nous avons vu un exemple danomalie, mais il y a galement diffrents types de tickets tels que

    les tickets de type CC (catgorisation de charge), EID (Etude dImpact Dtaille), EIM (Etude

    dImpact Macroscopique), les demandes de support (DS), et les demandes de ralisation.

    Chacun de ces types de tickets est enregistr dans un fichier de suivi Excel (les mmes que ceux

    utiliss par la macro de facturation). Ces fichiers de suivi sont remplis, manuellement,

    paralllement ClearQuest et au fur et mesure par les chefs de projet. Il arrive donc que le

    contenu des fichiers de suivi ne reflte pas le contenu de la base de donnes ClearQuest. Cest

    tout lenjeu des outils que jai crs.

    Traitement des correctifs sur anomalie de production

    Ca

    pg

    em

    ini

    VS

    CT Rception dune

    demande de

    correction

    danomalie

    Validation

    demande

    (Enregistrement

    dans CQ)

    Submit

    Reenter

    Reject

    Validation

    compltude

    package et

    fermeture tickets

    Analyse et

    diagnostic

    Instruction de la

    demande de

    correction

    danomalie

    Resolve

    Rework

    Correction de

    lanomalie

    Campagne de

    tests

    Prparation des

    packages

    Assign

    Recette et

    fermeture tickets

  • Fabian Piau | Master 2 MIAGe

    46 | 63

    Rapport de stage - 2009

    4.2.2.2 Utilitaire de rcupration des tickets

    Lapplication ClearQuest utilise des bases de donnes appartenant IBM pour enregistrer

    tous les tickets et leurs paramtres. IBM ne fournit pas un accs direct ses bases de donnes,

    direct dans le sens o il serait possible dexcuter des requtes SQL sur la base. En effet,

    lutilisateur doit obligatoirement passer par le logiciel ClearQuest pour y accder. Cest un aspect

    trs contraignant de ClearQuest.

    Lutilitaire que jai dvelopp permet de contourner cette difficult en lautomatisant. Lutilisateur

    pourra exporter les donnes de faon automatise, c'est--dire quil naura plus besoin dutiliser

    ClearQuest directement, mais lutilitaire le fera sa place. La cinmatique daccs manuelle

    lexportation des donnes sera reproduite, c'est--dire que ClearQuest sera toujours utilis, mais

    la dmarche sera transparente pour lutilisateur qui naura plus qu configurer (si besoin) et

    lancer un excutable. De plus, il aura une vision pas pas des avancements de lexportation. Jai

    utilis des technologies dautomatisation de test pour raliser cet utilitaire.

    Les donnes exportes, sous forme de fichiers texte, par mon utilitaire seront ensuite importes

    dans une base de donnes appartenant Capgemini (la base de donnes des indicateurs) par

    lintermdiaire dune application web existante sur le centre. La description tant peut-tre un

    peu difficile comprendre, voici un schma pour clarifier les choses. Il montre tout le mcanisme

    qui permet de contourner, de faon artisanale (et lgale), la protection de la base IBM.

    Figure 29 : Fonctionnement gnral de la rcupration des tickets ClearQuest

    Le code ci-dessous est un extrait de ces fichiers texte gnrs. Chaque champ est spar par le

    caractre pipe | . La premire ligne du fichier rappelle les diffrents noms des champs dans la

    Base protge IBM

    IBM ClearQuest Utilitaire Tickets

    (fichiers texte)

    Base des indicateurs

    Capgemini

    Application du

    centre

    Automatise actions sur

    Accde

    Gnre

    Importe

    Cre/met jour

  • Fabian Piau | Master 2 MIAGe

    47 | 63

    Rapport de stage - 2009

    base protge IBM. Lextrait contient trois tickets (un par ligne), par confidentialit, des champs

    ont t remplac par des astrisques.

    id|headline|DS_Type|State|Whished_Date|Submit_Date|Real_Date|Owner|Close_Date|Chiffrage|history.action_name|history.action_timestamp

    cq1700001013|*********** *********|4-REAL|Resolved||2009-02-02 13:22:27|2009-02-12 16:44:52|**************||15,24|Resolve|2009-02-12 16:45:10

    cq1700001035|**** ******* *******|1-CC|Submitted||2009-02-18 08:34:14||**************|||Submit|2009-02-18 08:38:33

    cq1700001013|************ *********|4-REAL|Resolved||2009-02-02 13:22:27|2009-02-12 16:44:52|**************||15,24|Assign|2009-02-12 16:25:00

    Code 4 : Extrait dun fichier dexport de ticket ClearQuest

    Sur mon utilitaire, jai implment la fonction de log. Ci-dessous, un extrait dun export russi.

    Connexion en cours

    Connexion russie

    Rpertoire de destination: C:\temp\repertoireIndicateur\

    Base cq01 en cours de traitement

    Requte All_DS_VSC_simple en cours de traitement

    Traitement termin

    Requte All_WR_VSC_simple en cours de traitement

    Traitement termin

    Traitement termin

    Base cq02 en cours de traitement

    Requte All_WR_EST_simple en cours de traitement

    Traitement termin

    Traitement termin

    Base cq02s en cours de traitement

    Requte All_DS_EST_simple en cours de traitement

    Traitement termin

    Traitement termin

    Base cq92 en cours de traitement

    Requte All_ds_opeam_simple en cours de traitement

    Traitement termin

    Requte All_wr_opeam_simple en cours de traitement

    Traitement termin

    Traitement termin

    Dconnexion en cours

    Dconnexion russie

    Code 5 : Exemple de fichier de log de lutilitaire dexport des tickets

    Il permet lutilisateur de vrifier si toutes les requtes, excutes sous ClearQuest et ramenant

    les tickets ClearQuest, ont bien t excutes.

  • Fabian Piau | Master 2 MIAGe

    48 | 63

    Rapport de stage - 2009

    4.2.2.3 Macro de comparaison

    Une fois les tickets enregistrs dans la base de donnes des indicateurs, on peut utiliser la

    macro de comparaison. Cette macro compare le contenu des fichiers de suivi Excel avec le

    contenu de la base de donnes. Concrtement, elle va indiquer les tickets manquants, les tats

    errons, etc. L encore, cette comparaison tait manuelle par les chefs de projet qui regardaient

    sous ClearQuest et mettaient jour les fichiers de suivi Excel en fonction. Il faut noter que les

    fichiers de suivi ne seront pas mis jour par la macro automatiquement, les impacts pouvant tre

    trop lourds grer. La macro indiquera lutilisateur les modifications quil doit apporter pour les

    mettre jour.

    Voici un schma, qui aurait pu se greffer la figure 29.

    Figure 30 : Comparaison des tickets ClearQuest

    Veuillez noter que la macro de comparaison est efficace si la base des indicateurs est jour, c'est-

    -dire quelle reflte le mieux possible les donnes de ClearQuest. Ainsi, il faut que le processus

    de rcupration et dimportation des tickets (figure 29) soit excut rgulirement.

    4.2.2.4 Technologies utilises

    Pour la macro de comparaison, il sagit des mmes technologies que pour les macros de

    chiffrage et de facturation (VBA). La nouveaut venant du fait quon accde une base de

    donnes au lieu dun fichier, il a donc t ncessaire dintgrer du SQL dans le code de la macro.

    L encore, une nouveaut pour moi.

    Pour lutilitaire de rcupration des tickets, ce sont des technologies compltement diffrentes

    qui ont t utilises, savoir la plateforme de dveloppement .NET, le framework

    dautomatisation WatiN (prononcez what-in) et le langage C#.

    Base des indicateurs

    Capgemini

    Macro de

    comparaison Excel

    Fichiers de

    suivi Excel

    Compare Rapport de

    comparaison

    Gnre

  • Fabian Piau | Master 2 MIAGe

    49 | 63

    Rapport de stage - 2009

    Ce framework reproduit, action aprs action, le scnario que vous avez programm. Les actions

    pouvant tre automatises sont varies: un clic sur un bouton, la slection dune valeur dans une

    liste, la prise dune copie dcran de la page web en cours, lenregistrement de la page, etc.

    Je lai donc utilis pour automatiser toutes les actions sous IBM ClearQuest afin dexporter les

    tickets.

    Le langage de programmation utilis est le C#. Etant familier avec la programmation Java, C# na

    pas t trop difficile prendre en main. On y retrouve les notions de la programmation-objet et

    un langage similaire (notion de classe, etc.).

    Lenvironnement de dveloppement est Microsoft Visual Studio. Etant un utilisateur dEclipse

    (programmation oriente Java), Microsoft Visual Studio est un trs bon produit facile prendre en

    main. Aprs quelques jours, crer des scnarios WatiN devient assez simple.

    Techniquement, pour trouver les boutons, listes et autres lments HTML, WatiN navigue

    dans la structure HTML de la page web (les balises). WatiN peut interagir avec beaucoup

    dlments HTML. Il peut identifier ces lments par leur id, nom, classe, texte, URL, valeur,

    style cela dpend du code de la page tester.

    Pour bien comprendre, voici un exemple simple:

    public void login()

    {

    // Ouvrir une nouvelle fentre Internet Explorer

    // et aller sur un site scuris

    ie = new IE("http://www.my-secured-website.com/login.php");

    // Trouver le champ texte username et saisir "toto"

    ie.TextField(Find.ByName("username")).TypeText("toto");

    // Trouver le champ texte password et saisir "titi"

    ie.TextField(Find.ByName("password")).TypeText("titi");

    // Selectionner la base de donnes

    ie.SelectList(Find.ByName("userDb")).SelectByValue("db2");

    // Cliquer sur le bouton de login pour se connecter

    ie.Button("loginId").Click();

    }

    Code 6 : Code WatiN pour tester

    Cette fonction automatise la connexion une application web comme ClearQuest.

  • Fabian Piau | Master 2 MIAGe

    50 | 63

    Rapport de stage - 2009

    Voici maintenant le code HTML de la page web teste (la page login.php ):

    User Name

    Password

    Database

    Select a database

    DataBase 1

    DataBase 2

    DataBase 3

    DataBase 4

    Code 7 : Code de la page web tester

    Au moment dexcuter la portion de code (code 6), WatiN ouvre Internet Explorer, va lURL

    spcifie, cherche le champ texte nomm username et y saisit la chane toto . Il fait de

    mme pour le champ contenant le mot de passe.

    Ensuite, il slectionne une base de donnes dans la liste nomme userDb . Finalement, il

    soumet le formulaire en cliquant sur le bouton identifi par loginId .

  • Fabian Piau | Master 2 MIAGe

    51 | 63

    Rapport de stage - 2009

    Figure 31 : Authentification automatise avec WatiN

    A cette tape, WatiN va slectionner la base de donnes et connecter lutilisateur.

    WatiN applique une couleur jaune sur les lments avec lesquels il est en train dinteragir (effet

    de clignotement).

    Dans lexemple, on utilise Internet Explorer (ie) mais WatiN supporte aussi le navigateur Firefox.

  • Fabian Piau | Master 2 MIAGe

    52 | 63

    Rapport de stage - 2009

    4.3 Mise en place dune Plateforme dIntgration

    Continue

    Voici les diffrentes tches que jai pu raliser durant cette troisime priode :

    La rdaction dun dossier sur lintgration continue (IC) pour sensibiliser les

    dveloppeurs et les dirigeants cette pratique ;

    La mise en conformit du dpt SVN (Subversion) du projet B2B, ainsi que la

    rdaction de la procdure pour lappliquer ;

    La mise jour et la configuration des logiciels dintgration continue en relation avec

    B2B.

    Nous allons expliquer plus en dtail chacune de ces tches. Mais dabord, quelques mots sur B2B,

    le projet que jai utilis pour mettre en uvre lIC.

    4.3.1 Le projet B2B

    B2