· 6 years ago · Jun 17, 2019, 08:46 PM
1\documentclass[12pt]{article}
2\usepackage[utf8]{inputenc}
3\usepackage{setspace}
4\usepackage{color}
5\usepackage{graphicx}
6\usepackage{hyperref}
7\usepackage[francais]{babel}
8\usepackage{enumitem}
9\usepackage[T1]{fontenc}
10\usepackage{pifont}
11\usepackage{array}
12\usepackage{eurosym}
13\usepackage{wrapfig}
14\usepackage{colortbl}
15\usepackage{fancyhdr}
16\usepackage{multirow}
17\usepackage{wrapfig}
18\usepackage{diagbox}
19\usepackage{amssymb}
20\usepackage{titletoc}
21\usepackage{float}
22\usepackage[top=2cm, bottom=2.5cm, left=4cm, right=3cm]{geometry}
23\hypersetup{
24 colorlinks=true,
25 linkcolor=blue
26 }
27\fancyhead[R]{\nouppercase{\rightmark}}
28\fancyhead[L]{}
29\renewcommand{\footrulewidth}{0.4pt}
30\fancyfoot[R]{IBM}
31\fancyfoot[C]{\thepage}
32\fancyfoot[L]{EPITA}
33\setlength{\headheight}{14.61858pt}
34\begin {document}
35\pagestyle{fancy}
36\begin{onehalfspacing}
37%Suppresion du numéro de page sur la page de garde
38\thispagestyle{empty}
39
40\begin{center}
41 \newcommand{\HRule}{\rule{\linewidth}{0.5mm}}
42 \vspace*{1cm}
43 \textsc{\LARGE Rapport de stage de fin d'études}\\[1.5cm]
44 \textsc{\LARGE SIGL - Promotion 2019}\\[1.5cm]
45
46
47
48 \begin{minipage}{0.9\textwidth}
49 \begin{center}
50 \textsc{\LARGE IBM France}
51 \end{center}
52 \end{minipage}\\[0.5cm]
53
54 %\vspace*{1cm}
55
56 \HRule\\[0.4cm]
57 {\huge \bfseries Consultant Retail Banking}\\[0.4cm]
58
59 \HRule\\[1.5cm]
60\end{center}
61
62\begin{minipage}{0.46\textwidth}
63 \vspace{-1.6cm}
64 \begin{flushleft} \large
65 \emph{Étudiant:}\\
66 M. Cherrier-Valentin Fran\c cois
67 \end{flushleft}
68\end{minipage}
69\begin{minipage}{0.52\textwidth}
70 \begin{flushright} \large
71 \emph{Maître de stage:}\\
72 M. Guedj Jonathan\\
73 \emph{Encadrante:}\\
74 Mme. Benzarti Zeineb
75 \end{flushright}
76\end{minipage}
77
78\vspace{1.5cm}
79
80\begin{center}
81 {\large 4 mars 2019 - 30 août 2019}
82\end{center}
83
84\vspace{4.5cm}
85
86\begin{minipage}{0.48\textwidth}
87 \begin{flushleft}
88 \includegraphics[scale = 0.6]{Figures/epita.png}
89 \end{flushleft}
90\end{minipage}
91\begin{minipage}{0.48\textwidth}
92 \begin{flushright}
93 \includegraphics[scale = 1]{Figures/IBM.eps}
94 \end{flushright}
95\end{minipage}
96\newpage
97\clearpage
98\thispagestyle{empty}
99\phantom{a}
100\vfill
101\vfill
102\newpage
103\begin{flushright}
104\LARGE
105SOMMAIRE
106\end{flushright}
107\begin{large}
108\tableofcontents
109\end{large}
110\thispagestyle{empty}
111\newpage
112\clearpage
113\thispagestyle{empty}
114\phantom{a}
115\vfill
116\vfill
117\newpage
118\thispagestyle{plain}
119\pagenumbering{gobble}
120\begin{center}
121\section*{Remerciements}
122\end{center}
123\addcontentsline{toc}{section}{Remerciements}
124$\newline$
125\newline
126\newline
127\newline
128
129Je tiens \`a remercier chaleureusement toute l'\'equipe Infrastructure Management pour leur accueil, leur disponibilité et leur confiance tout au long de mon stage. L'équipe a toujours su répondre présente en cas de nécessité et s'est montrée très ouverte pour communiquer sur l'application. Je remercie plus précisément l'ensemble de l'équipe projet qui m'a aidé et m'a apporté l'ensemble des connaissances nécessaires pour que je sois autonome lors de ma mission.
130\newline
131\newline
132Ma gratitude s'adresse aussi \`a l'ensemble des personnes du service Infrastructure \& Security Services avec qui j'ai pu travailler. Leur gentillesse et leur g\'en\'erosit\'e m'ont permis de passer ce stage dans les meilleures conditions possibles. Enfin je tiens aussi à remercier l'ensemble des assistantes du service pour leur disponibilité lors de mes demandes d'informations sur leur activité.
133
134
135\newpage
136\thispagestyle{plain}
137\pagenumbering{gobble}
138\begin{center}
139\section*{Résumé du stage}
140\end{center}
141\addcontentsline{toc}{section}{Résumé du stage}
142$\newline$
143\newline
144\newline
145\newline
146
147Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
148\newline
149\newline
150Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
151
152
153
154\newpage
155\clearpage
156\thispagestyle{empty}
157\phantom{a}
158\vfill
159\vfill
160\newpage
161\pagenumbering{arabic}
162\setcounter{page}{1}
163\thispagestyle{plain}
164\section{Introduction}
165
166Les parties suivantes ont pour but de décrire le contexte général du stage ainsi que les différents éléments constituant le cadre de travail de ce dernier. Le stage ayant été effectué dans une entreprise de services, le contexte et le cadre décrits sont ceux de l'entreprise et non des clients chez qui le stage peut avoir eu lieu.
167
168\subsection{Rappel du sujet}
169
170Le sujet initial de ce stage consistait à intégrer l'équipe Global Business Services, et plus particulièrement la \textit{practice} Retail Banking, en temps que consultant en stratégie et transformation digitales.
171Encadré de consultants expérimentés, une ou plusieurs missions seront proposées (en fonction de la disponibilité) parmi le suivantes :
172
173\begin{itemize}
174 \item Assister la maîtrise d’ouvrage (cadrage, expression des besoins, cahier des charges, conduite du changement, organisation),
175 \item Assister au pilotage des projets,
176 \item Assister au choix de progiciels métiers et projets d’intégration associés,
177 \item Analyser le processus métier, optimisation et réduction des délais et des coûts,
178 \item Assister à la conception et à la mise en place de projets métiers (poste de travail, pilotage de réseaux de distribution, commissionnement, tableaux de bord),
179 \item Accompagner la mise en œuvre de nouvelles normes,
180 \item Accompagner les projets de transformation de clients bancaires en cohérence avec la stratégie d’IBM :
181 \begin{itemize}
182 \item Transformation digitale : transformation mobile, marketing \& ventes, e-paiements, analytique \& \hyperlink{BD_def}{Big data},
183 \item Transformation de fond : refonte des processus et des systèmes d’information back-office.
184 \end{itemize}
185\end{itemize}
186
187Dû au fait que l'activité de consultant est fortement dépendante des contrats clients en cours, il était évident que le sujet de ce stage varierait en fonction des missions courantes.
188
189\subsection{Évolution du sujet}
190
191Comme énoncé précédemment, le sujet de ce stage était, de fait, amené à évoluer. Suite à l'assignation dès la première semaine de stage sur une mission client, le sujet a évolué de la façon suivante.
192
193
194Pour le sujet de ce stage il s'agira d'intervenir chez un grand acteur du secteur bancaire français. Le périmètre d'intervention étant une offre existante de \hyperlink{Centra_def}{centralisation de trésorerie}, soutenue par une application interne hébergée sur \hyperlink{Mainframe_def}{mainframe}.
195
196La problématique cliente était double, à la fois technique et humaine.
197\\[\baselineskip]
198\textbf{Problématique Technique :}
199
200\begin{itemize}
201 \item Augmentation constante de la charge sur l'application d'environ 20\% par an. Les premières versions de l'application ayant vu le jour dans les années 1990, celle-ci n'a pas été conçue pour supporter une telle charge. La solution arrive donc à saturation, augmentant drastiquement les temps de traitement et éloignant peu à peu cette dernière de ses performances attendues.
202 \item Rachat du code source il y a un dizaine d'années, perdant ainsi la maintenance du logiciel exercée par l'éditeur initial. Dans la foulée, de nombreuses évolutions et correctifs (ou "\hyperlink{hf_def}{hotfix}") ont été rajoutés à l'application sans effectuer de \hyperlink{refacto_def}{ré-usinage du code}, rendant la solution instable et augmentant grandement sa complexité, au point d'atteindre un aspect de \hyperlink{bn_def}{boîte noire}. L'ensemble de ces faits traduit l'atteinte d'une limite au niveau de l'application, renforçant le caractère incidentogène de celle-ci.
203 \item Incapacité à évoluer de l'application due à une architecture monolithique vieillissante et à des rajouts constants sur le code existant. Censée répondre aux ambitions métier et accompagner les transformations du marché, l'application met en danger l'offre proposée aux clients et risque de lui faire perdre en compétitivité.
204\end{itemize}
205\textbf{\\Problématique Humaine :}
206
207\begin{itemize}
208 \item Fortes disparités dans la répartition de la connaissance au sein de l'équipe et faible couverture documentaire du patrimoine et de l'historique de l'application. En effet la connaissance du patrimoine est centralisée autour de quelques \hyperlink{sachants_def}{sachants}, représentant moins de 20\% de l'effectif d'exploitation de l'application. L'historique des évolutions et correctifs n'étant présent sur aucun support, les sachants sont donc devenus des ressources critiques dont le départ mettrait grandement en péril l'ensemble de l'offre en place.
209\end{itemize}
210
211L'ensemble de ces problématiques dégrade la qualité de service proposée aux clients et met en péril la pérennité même de l'offre.
212
213Ainsi, dans un premier temps, il s'agira d'intervenir en temps que Consultant Processus \& \hyperlink{AMOA_def}{AMOA} sur un sujet d'ingénierie de la formation et de montée en compétences. En effet il s'agira, à l'aide des éléments de documentation présents, et avec le soutient des sachants en poste, d'analyser et comprendre l'ensemble de périmètre applicatif. Le but sera ensuite de capitaliser sur cette analyse afin de mettre en place et de proposer un plan de formation pour les équipes actuelles et pour les nouveaux arrivants. Également, il sera attendu de participer à la construction d'un parcours de montée en compétence pour l'ensemble des \hyperlink{BA_def}{Business Analysts} du périmètre, piloté par les processus métiers définis.
214
215Dans un second temps il s'agissait d'endosser le rôle de Business Analyst au sein d'un projet de transformation lancé pendant la durée du stage et portant sur la même périmètre que cité précédemment. En effet le plan de transformation consistera à externaliser une partie du monolithe applicatif dans le Cloud client tout en adoptant une approche microservice, Agile et DevOps.
216
217\subsection{Présentation de l'entreprise}
218
219International Business Machines Corporation (\hyperlink{IBM_def}{IBM}) est une entreprise américaine née en 1911 présente dans les domaines du matériel informatique, du logiciel et des services informatiques. Présente dans plus de 175 pays, IBM fait partie des 10 plus grandes entreprises mondiales du secteur de l'informatique en termes de chiffre d'affaires (environ 80 Md \$ en 2018). Employant près de 400 000 personnes, IBM se place également 3\up{ème} dans son secteur en terme de nombre d'employés.
220
221Autrefois très centrée sur la conception et la commercialisation de matériels informatiques et de logiciels, IBM se focalise désormais sur une activité de services, portée par une position de leader dans le \hyperlink{Cloud_def}{Cloud} d'entreprise.
222
223IBM est actuellement divisée en 6 divisions (ci-dessous) couvrant l'intégralité de son spectre de compétences et d'expertises :
224
225\vspace*{0,25cm}
226\begin{figure} [H]
227\begin{flushleft}
228\centerline{\includegraphics[scale=0.6]{Figures/Entities.png}}
229\caption{Descriptif des divisions IBM}
230\end{flushleft}
231\end{figure}
232\vspace*{-0,75cm}
233Dans le cadre de mon stage j'ai été affecté à la division Global Business Services (\hyperlink{GBS_def}{GBS}), représentant près de 23\% du chiffre d'affaires de l'entreprise.
234
235Cette division possède elle-même 3 pôles d'expertises; dont le deuxième, Cognitive Process Transformation (\hyperlink{CPT_def}{CPT}), est divisé en six \textit{practices}. Enfin, parmi ces \textit{practices}, j'ai opéré au sein de Retail Banking (\hyperlink{RB_def}{RB}), équipe de 12O personnes, spécialisée dans le conseil en banque de détail.
236
237\begin{figure} [H]
238\begin{flushleft}
239\centerline{\includegraphics[scale=0.6]{Figures/CPT_RB.png}}
240\caption{Descriptif des pôles d'expertises GBS et des \textit{practices} CPT}
241\end{flushleft}
242\end{figure}
243\vspace*{-0,75cm}
244
245\subsection{Maturité de l'entreprise vis à vis du sujet}
246
247Créée en 1991 afin de développer l'activité de service d'IBM, la division Global Business Services, plus jeune que la maison-mère, a cependant pu s'appuyer sur l'expertise historique de l'entreprise sur le secteur des logiciels et architectures informatiques d'entreprise.
248Ayant racheté en 2002 la branche de conseil de l'entreprise d'audit et conseil anglaise Price Waterhouse Coopers (\hyperlink{PWC_def}{PWC}), IBM renforce son offre, sa capacité et sa maîtrise dans le domaine du conseil avec près de 30000 personnes intégrées à l'entité GBS.
249Inscrite au sein de cette même mouvance, la \textit{practice} Retail Banking a su s'implanter sur le marché de la banque de détail en réalisant des projets pour les acteurs majeurs de la place française.
250
251\subsection{Connaissances et expériences initiales de l'élève}
252
253Le périmètre de ce stage est composé de deux axes distincts, un axe technique et un axe métier. En effet il s'agit d'intervenir de façon transverse dans un environnement métier qui est celui de la banque de détail.
254
255Concernant l'axe technique de ce stage, les actions et les réflexions porteront particulièrement sur l'architecture de systèmes d'information, la conception logicielle et la mise en place de plans de transformation. Sur cet axe, les connaissances et la formation apportées par l'\hyperlink{EPITA_def}{EPITA}, et plus particulièrement par la majeure Système d'Information et Génie Logiciel (\hyperlink{SIGL_def}{SIGL}), rentrent totalement en adéquation avec les celles attendues pour ce stage. En effet les notions de Cloud, d'architecture de système d'information, de \hyperlink{virtu_def}{virtualisation} ainsi que de transformation digitale sont des bases solides sur lesquelles ce stage peut s'appuyer.
256
257Concernant l'axe métier, des connaissances du secteur et du marché de la banque de détail sont à attendre. En effet, connaître les problématiques les plus courantes des établissements bancaires en matière d'informatique et de \hyperlink{digi_def}{digitalisation} permettra de mieux appréhender les choix techniques et structurels rencontrés lors des missions. La connaissance des différents métiers et offres présents dans ce secteur n'est cependant pas attendue d'entrée. Ces éléments seront acquis au cours des différentes missions et pourrons varier d'un client à l'autre. Les connaissances obtenues lors d'un précédent stage en banque au Crédit Mutuel - CIC, ainsi que la culture générale apportée par le cursus SIGL ont tous deux permis de remplir les pré-requis nécessaires au bon démarrage de ce stage. De même, la participation aux activités de la Junior Entreprise de l'EPITA en tant que Commercial, puis en tant que Président, ont permis d'acquérir une bonne compréhension du besoin et des enjeux clients vis-à-vis de l'informatique et des nouvelles technologies.
258
259En complément des apports de la \hyperlink{JE_def}{Junior Entreprise}, un stage dans l'Entreprise de Services du Numérique (\hyperlink{ESN_def}{ESN}) Sopra Steria en temps que chef de projet junior a également permis de mieux appréhender la gestion d'un projet et de ses différentes phases.
260
261\subsection{Intérêt et positionnement du stage pour l'entreprise}
262
263Pour IBM, et plus particulièrement pour la \textit{practice} Retail Banking, ce stage a pour but d'acquérir un profil avec une forte compétence technique, tout en étant capable d'intervenir dans une relation client et une optique métier. La finalité étant d'être capable de faire le lien entre des problématiques techniques complexes (infrastructure, applicatif etc.) et des enjeux métiers nombreux, au sein du secteur bancaire.
264
265Lors des stages au sein de la \textit{practice} Retail Banking, les stagiaires sont considérés comme des consultants juniors internes à IBM et capables d'être assignés aux mêmes tâches que ces derniers si leur compétences le permettent.
266
267Tout comme les consultants confirmés, les stagiaires peuvent être amenés à intervenir aussi bien sur des projets internes (développement de la \textit{practice}, études, \hyperlink{POC_def}{POC} etc.) mais également sur des missions, en temps que ressources affectées à un projet client. Ainsi, ce stage s'intègre au coeur de la chaîne de valeur et du domaine de compétence de l'entreprise, de la division et de la \textit{practice}.
268
269Si l'entreprise exprimait le souhait de prolonger le stage par un contrat d'embauche, ce dernier viendrait soutenir la croissance de la \textit{practice} en terme de ressources.
270
271\subsection{Contexte précis de travail}
272
273Lors de ce stage, plusieurs moyens ont été mis en place afin de permettre une autonomie et une performance optimales sur les différent sujets assignés.
274
275Tout d'abord, pour les ressources physiques, un ordinateur portable MacBook Pro a été mis à disposition, pré-installé avec l'ensemble des logiciels d'usage.
276
277Concernant les ressources immatérielles, un portail de formation interne à IBM est rendu accessible via le poste fourni. Ce portail permet l'accès à de très nombreuses formations en ligne reprenant l'intégralité des domaines de compétences d'IBM, intégrant les sujets techniques mais aussi fonctionnels et humains. Certaines de ces formations permettent également de se voir délivrer une certification, permettant de faire valoir les compétences acquises en dehors d'IBM également. Grâce à cette plateforme, de nombreuses formations ont été réalisées, notamment sur la Blockchain, les produits Cloud d'IBM, le Design Thinking, l'Agile etc.
278
279Tout au long de l'année, de nombreuses formations en présentiel sont dispensées par les consultants et managers de la \textit{practice} Retail Banking. Ces formations couvrent majoritairement des sujets de communication, leadership, savoir-être, mais aussi des essentiels pour le métier de consultant en banque de détail. Il a donc été possible, grâce à ces dernières, de monter rapidement en compétence et d'obtenir les connaissances théoriques permettant d'appréhender au mieux les situations pratiques rencontrées pendant le stage.
280
281Pendant l'intégralité du stage, de nombreuses personnes se sont portées volontaires pour apporter leur soutien et leurs compétences. De même, une cartographie claire des personnes encadrantes pouvant être contactées lors de ce stage a été présentée dès son commencement.
282
283\begin{figure} [H]
284\begin{flushleft}
285\centerline{\includegraphics[scale=0.8]{Figures/encadrement.png}}
286\caption{Descriptif des principaux encadrants IBM lors du stage}
287\end{flushleft}
288\end{figure}
289
290\newpage
291\section{Aspect organisationnel}
292\subsection{Organisation du stage}
293Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
294Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
295
296\subsection{Respect des délais et retour critique}
297Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
298\newline
299Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
300
301Le groupe est divisé en plusieurs métiers formant des branches à part entière. Les branches sont les suivantes:
302\begin{itemize}
303\item Conseil: L'activité conseil de SopraSteria Consulting s'étend du conseil en management au conseil en technologie. Les consultants interviennent au plan stratégique, puis conçoivent et mettent en œuvre des programmes de transformation, en France et en Europe, en tirant profit de la révolution digitale en cours.
304\item Intégration: Les experts de l'entreprise adressent l'ensemble du cycle de vie du patrimoine applicatif à travers des prestations d'intégration de systèmes et d'Application Management. Ils s'appuient sur une solide politique industrielle afin de construire, maintenir et moderniser le système d'information en réponse à de profondes transformations d'entreprise.
305\item Services: SopraSteria est un éditeur de solutions métier reconnu par les cabinets tels que Gartner et Forrester. Le Groupe offre des solutions leaders dans trois domaines: les services financiers (filiale Sopra Banking Software), les ressources humaines (filiale Sopra HR Software) et l'immobilier.
306\item Infrastructure \& Security Services (Infrastructure Management + Cyber): SopraSteria accompagne la transformation des infrastructures et des modes de consommation des services IT par l'intégration de technologies et l'opération de services autour du Cloud, du Datacenter et de l'environnement de travail utilisateur.
307\item Business Process Services (BPS): SopraSteria possède une expertise unique en BPS et services partagés qui lui permet de concevoir des solutions alliant performance et rentabilité. Les clients peuvent ainsi lui confier l'externalisation des fonctions Finance, Comptabilité, Ressources Humaines et Achats.
308\newline
309\end{itemize}
310
311Ci-dessous l'organigramme d'organisation du groupe SopraSteria. Notons que le groupe est présent dans de nombreux pays dans et hors de l'Europe. La branche dans laquelle j'ai évolué est ici nommée "France IM".
312\newline
313
314\subsection{Contrôles internes et validations}
315La Business Unit dans laquelle j'ai évolué était Infrastructure Management (IM). Cette filiale apporte son expertise et son savoir-faire pour aider les entreprises à adapter leurs infrastructures en adéquation avec leurs exigences métiers. Les technologies et les nouveaux usages du numérique (Cloud, Big Data, mobilité, social, etc) nécessitent une profonde adaptation des infrastructures et de leur mode de gestion. Avec l’adoption grandissante du Cloud, la DSI devient « centre de services » pour les métiers.
316Acteur majeur en infogérance, IM accompagne et réalise cette transformation. Intégrateur et opérateur de services, la branche agrège des services traditionnels d’infrastructure et des services Cloud dans une offre « as a Service » complète et sécurisée.
317
318La filiale IM est composée de 1700 collaborateurs en France et est organisée en 3 niveaux:
319\begin{itemize}
320\item 4 agences "Marché" qui assurent la relation client et délivrent les prestations réalisées depuis les sites des clients. Il s'agit des agences Conseil et Solutions (CS1, CS2, CS1D, CS2D).
321\item 3 centres de services partagés qui délivrent des prestations depuis les sites localisés en France ou en Pologne.
322\item Les fonctions supports (Dir. Administrative et Financière; Dir. Ressources Humaines; Dir. Industrielle; Ressources Management; Dir. Commerciale)
323\end{itemize}
324\subsection{Gestion des difficultés et crises}
325La branche IM est composée de nombreuses agences, chaque agence possédant plusieurs projets. Pendant ce stage je serai donc rattaché à l'agence 546 correspondant à la Direction Industrielle (DI). L'équipe projet sera dirigée par M. Bernard DUBOIS, maître de stage et manager. Cette équipe sera composée de deux autres membres, M. Luc-André ROCHE, chef de projet, et M. Normand BOURGET, testeur.
326
327\newpage
328\section{Aspect scientifique, technique et méthodologique}
329\subsection*{Cahier des Charges}
330\subsubsection*{But Général}
331Une astreinte est une période de disponibilité du salarié à l'égard de son employeur, en dehors les heures de travail, afin d'être prêt à intervenir dans une situation particulière de travail. Chez SopraSteria il s'agit la plupart du temps d'interventions chez le client dans le cadre d'une mission.
332Actuellement les employés de l'entreprise remplissent leurs déclarations d'interventions sous astreintes à la main sur un formulaire Excel. Ce travail est long et pénible, à la fois pour les collaborateurs qui les remplissent mais aussi pour les assistantes qui les vérifient. La Direction Informatique d'IM a donc lancé le développement de l'application Gestion des Astreintes (GdA) afin d'alléger et d'automatiser l'ensemble du processus. L'application devra donc permettre aux managers d'assigner des employés à des astreintes puis, une fois l'astreinte effectuée, permettre au collaborateur de déclarer ses interventions. En fin de mois, un traitement de clôture devra être effectué et des fichiers récapitulatifs devront être édités afin d'être envoyés au service de paie.
333
334L'application n'étant actuellement pas terminée, je devrai apporter mon savoir faire en matière de développement et de conception de programme pour aider l'équipe projet à finaliser cet outil. Étant donné que l'application est développée par une société tierce, je devrai faire le lien avec cette société en matière de demandes et de réception de livrables. L'application étant initialement due pour Mars 2017, je suis intervenu dans un contexte de crise et de retard important. Le but sera donc de finaliser le développement de l'application le plus vite possible et de lancer le déploiement par la suite.
335
336Je devrai, en parallèle, concevoir le plan de déploiement de cette application. Ce plan devra permettre de donner accès à l'application aux 700 salariés d'Infrastructure Management.
337Une fois l'outil validé par l'équipe projet et par moi-même, le plan de déploiement sera mis à exécution et un support sera apporté aux employés en cas de problème avec l'application.
338\newpage
339\subsubsection*{Résultats à obtenir}
340
341Les résultats à obtenir à l'issue de ce stage sont les suivants:
342\subparagraph{Conseils de conception}
343
344Avant la finalisation de l'application, le but sera de fournir des conseils au manager ainsi qu'au chef de projet quant à la conception de l'outil. En effet un audit de sécurité pourra être effectué ainsi qu'un audit de base de données et d'architecture de code. La base de données est conçue en \textit{MySql} et l'application développée en \textit{Java}. Il s'agit ici de vérifier que l'application réponde bien aux normes et standards de programmation et de conception d'application. De même il faudra vérifier que l'outil livré corresponde aux critères de sécurité définis par la direction informatique de SopraSteria.
345Un regard critique devra être apporté sur ces éléments et si des anomalies sont détectées parmi les points cités, un retour devra être fait à l'équipe projet dans un premier temps puis à l'entreprise de développement dans un second temps.
346
347\subparagraph{Tests de fonctionnalités}
348
349Après chaque livraison de l'équipe de développement, des tests devront être effectués sur les points dits "Livrés". Ces tests porteront sur les fonctionnalités définies dans les spécifications fonctionnelles du projet et donneront lieu à la création de tickets \textit{JIRA} dans le cas où des anomalies seraient trouvées. \textit{JIRA} étant un système de suivi de bugs, de gestion des incidents et de gestion de projets utilisant un système de tickets. Ces tests seront effectués en grande partie avec M. Normand BOURGET, testeur de l'équipe projet.
350
351\subparagraph{Conception de plan de déploiement}
352En parallèle des actions précédentes, un plan de déploiement de l’application doit être conçu. Ce dernier sera à présenter sous la forme d'un \textit{Gantt Chart} et sera partagé avec toute l'équipe projet. Ce plan sera à mettre en œuvre une fois l'application finie par l'équipe de développement et validée par nos soins. Ce plan devra comprendre en premier lieu la mise en place de l'application sur les serveurs d'hébergement choisis au préalable. Il faudra de même prévoir des campagnes de communications pour les équipes qui seront affectées par le déploiement de cette nouvelle application afin de les prévenir de l'arrivée de l'outil. Un \textit{User Guide} sera à fournir aux utilisateurs et à éditer par nos soins. Enfin il faudra organiser des réunions de formations pour les managers et chefs d'équipes afin qu'ils puissent former à leur tour leurs équipes à la nouvelle application.
353Un service de support devra possiblement voir le jour suite à ce déploiement afin d'aider les utilisateurs en cas de besoins.
354
355\subparagraph{Mise en application du plan de déploiement}
356Une fois le plan de déploiement défini et l'application validée, il faudra déployer l'application sur l'environnement. Il s'agira alors de suivre le plan défini et de se fier au \textit{Gantt Chart} afin de respecter les dates limites. Dans le cas d'un retard il faudra savoir s'adapter et adapter le plan de déploiement.
357
358\subparagraph{Suivi de projet}
359
360Pendant la finalisation de l'application, les livraisons de l'entreprise de développement seront à prendre en charge et à organiser. Ainsi un processus de livraison sera à définir afin de cadrer le mieux possible l'équipe de développement et de faciliter le travail de vérification après réception. Il faudra préparer un système de PV de livraison à fournir à l'entreprise de développement.
361Le plan de livraison actuel est le suivant:
362\begin{itemize}
363\item Fournir un "Reste à Faire" aux développeurs afin de convenir des fonctionnalités à livrer et des anomalies à corriger pour la prochaine livraison.
364\item Encadrer la livraison de la nouvelle version et déployer à l'aide des fichiers fournis (un .war et potentiellement un .sql).
365\item Vérifier la conformité des éléments livrés par rapport aux demandes faites dans le fichier de "Reste à Faire".
366\item Éditer un fichier de recette avec les éléments livrés en les notant conformes ou non-conformes à la demande puis extraire des statistiques de qualité de chaque livraison.
367\item Effectuer un retour à l'équipe de développement.
368\end{itemize}
369Des Comités Techniques (CoTechs) seront mis en place pendant les périodes de développement et seront à encadrer par Luc-André ROCHE et moi-même. Ainsi une dimension humaine sera à gérer lors de ces CoTechs et la relation Client - Prestataire sera à conserver. Le but de ces réunions étant de faire le point sur les demandes faites et de répondre aux possibles questions de chacune des deux parties.
370
371\subparagraph{Évolution de l'application}
372Tout au long de la période de stage, des demandes d'évolutions seront à formuler en accord avec le manager. Ces demandes auront pour but d'énumérer les fonctionnalités qui seront à ajouter à une version 2.0 de l'application. Cette nouvelle version sera développée une fois la version actuelle finie et déployée. Ces fonctionnalités seront à définir avec le manager lors de réunions d'évolution. Il en résultera la création de nouvelles règles de gestion, de nouveaux designs et de nouvelles fonctionnalités afin de répondre aux besoins des collaborateurs. Ces évolutions contiendront ainsi de nouveaux modules qui viendront se greffer à l'application actuelle, cela peut par exemple être la Gestion des interventions planifiées, l'intégration d'un planning etc.
373
374\subsection*{Compte-rendu d'activité}
375Lors de ce stage j'ai essayé d'être le plus à l'écoute possible des besoins des autres collaborateurs. Ainsi en participant au travail de chacun j'ai pu élargir mon champ de connaissances et travailler sur des sujets variés. L'équipe étant restreinte, j'ai pu participer activement à l'intégralité des étapes du projet. J'ai ainsi pu assister le manager, le chef de projet et le testeur dans leurs travaux respectifs. Petit à petit j'ai gagné en autonomie et ai pu effectuer des tâches entièrement seul.
376\subsubsection*{Conseils de conception}
377Mes connaissances en développement et en informatique m'ont permis de conseiller l'ensemble de l'équipe projet sur le plan technique. Mes conseils ont porté sur deux points principaux, l'état actuel de l'application et les demandes d'évolution à venir.
378\subparagraph{Étude du code de l'application}
379Concernant la partie technique, j'ai pu effectuer un audit rapide sur le code de l'application, développée en Java par des prestataires extérieurs. J'ai ainsi pu assurer que la solution était développée en respectant les normes et standards du développement web et ait rédigé un document de support sur l'architecture du code. Ce document servira aux équipes de développement qui interviendront plus tard sur l'application, dans le cadre d'une évolution ou pour de la maintenance. Dans ce document je détaille le fonctionnement d'une architecture trois tiers, architecture choisie par les prestataires. En temps normal une architecture trois tiers comporte une couche base de données, une couche application et une couche client (navigateur). Dans Gestion des Astreintes, la couche base de données est nommée Persistence et la couche application est nommée Business. La couche client, quant à elle, est divisée en deux couches : Presentation et Web. Une 5e couche annexe, Common, est utilisée par Business et Presentation et sert de boîte à outils.
380\begin{figure} [H]
381\begin{flushleft}
382%\centerline{\includegraphics[scale=0.5]{3tier-GdA-fr.png}}
383\caption{Architecture de l'application}
384\end{flushleft}
385\end{figure}
386J'ai ainsi pu rédiger une documentation sur l'architecture du code en décrivant chaque tiers ainsi que les possibles patrons de conception utilisés. Le patron le plus important ici était le Data Access Object (DAO). Ce patron de conception permet d’isoler les accès base de données du reste du code de l’application et de rendre les deux entités indépendantes. Ce modèle regroupe les accès aux données dans des classes à part, plutôt que de les disperser. Il s'agit surtout de ne pas écrire ces accès dans les classes "métier", qui ne seront modifiées que si les règles de gestion métier changent.
387
388Ces objets d’accès aux données utilisent le framework open-source \textit{Hibernate} afin d’effectuer les appels vers la base de données.
389Pour le développement de cette application, le framework \textit{Spring} a aussi été utilisé afin de faciliter la conception.
390\subparagraph{Étude de la base de données}
391Une analyse complémentaire de la base de données a été effectuée afin de vérifier la cohésion des données et de l'architecture choisie. L'ensemble des tables de l'application a été étudié ainsi que les liens entre celles-ci. La base de données était développée en \textit{MySQL} et hébergée sur un serveur \textit{Glassfish} et administré via \textit{Workbench}. Plusieurs champs et tables inutiles ont alors été trouvés dans la base. Ces champs et tables provenaient d'une ancienne version de l'application et n'étaient plus utilisés du tout. Une demande a donc été envoyée à l'équipe de développement pour nettoyer la base de l'application. Après envoi de la demande, il a fallu vérifier que celle-ci ait effectivement été traitée par les développeurs et qu'aucun résidu ne se trouve ni dans la base, ni dans le code même.
392\subparagraph{Sécurité}
393Un audit de sécurité concernant la base de données a aussi été effectué pour cette application. Tout comme l'audit de code, un document de support a été rédigé à destination du manager et du reste de l'équipe. Ce document révélait que la version actuelle de l'application possédait de grosses failles de sécurité, plus particulièrement lors du stockage d'informations dans la base de données. En effet les prestataires n'avaient pas choisi une solution adéquate pour sécuriser l'application et celle-ci ne respectait pas les exigences de la société en matière de sécurité. J'ai donc proposé un ensemble de solutions pour sécuriser l'application comme il se doit. Ces solutions ont été transmises aux équipes de développement et ont été mises en place.
394\subsubsection*{Tests de fonctionnalités}
395Malgré les tests de l'équipe de développement, l'application devait être testée une nouvelle fois en interne afin d'en assurer la qualité. Les tests de l'application avaient donc lieu après réception d'une nouvelle version afin de tester les dernières fonctionnalités livrées, mais aussi de façon continue afin de desceller de possibles nouvelles anomalies.Les anomalies étaient ensuite répertoriées dans l'outil \textit{JIRA}, hébergé sur l'intranet de l'entreprise. Cet outil, utilisé dans la plupart des projets informatiques, propose un système de suivi de bugs, de gestion des incidents et de gestion de projets. Cela permet de suivre et de tracer une anomalie, de sa découverte à sa résolution. Une fois les anomalies corrigées, elles sont gardées en mémoire afin de créer une base de connaissances utile pour la maintenance.
396
397La majeure partie de ces tests étaient effectués dans un premier temps par Normand BOURGET, testeur de l'équipe projet. Ce dernier a cependant été affecté à une autre mission pendant mon stage, j'ai donc récupéré ses droits sur le JIRA et ai maintenu la base d'anomalies à mon tour.
398\newline
399\begin{figure} [H]
400\begin{flushleft}
401%\centerline{\includegraphics[scale=0.4]{JIRA_Resume.png}}
402\caption{Résumé du projet sous JIRA}
403\end{flushleft}
404\end{figure}
405Chaque anomalie rapportée devait être précisément décrite, documentée et devait comprendre une capture d'écran. Cela permettait d'avoir une base de connaissances claire afin de faciliter le traitement par les équipes de développement. Les anomalies étaient classées par ordre de priorité en fonction de leur impact sur l'application. Les équipes de développement se chargeaient alors de planifier la mise en œuvre de correctifs ainsi que leur livraison. En plus des tests unitaires effectués, de nombreux tests de régression étaient également mis en place. Ces tests ont permis de détecter de nombreuses régressions suite au développement de nouvelles fonctionnalités. Ces régressions provoquent un retard conséquent et doivent être diagnostiquées le plus tôt possible.
406\newline
407\begin{figure} [H]
408\begin{flushleft}
409%\centerline{\includegraphics[scale=0.4]{JIRA_Anomalies.png}}
410\caption{Gestion des anomalies sous JIRA}
411\end{flushleft}
412\end{figure}
413\subsubsection*{Conception du plan de déploiement}
414Ma mission principale lors de ce stage était de définir et de concevoir un plan de déploiement pour l'application Gestion des Astreintes. Ce plan ne devait initialement contenir que la partie déploiement du projet. Or l'application n'étant pas finie, ce plan a dû comprendre également la partie développement et recette fonctionnelle de celle-ci.
415
416\subparagraph{Rétro Planning} Dans un premier temps, un croquis du plan de déploiement a été réalisé en binôme avec Luc-André ROCHE afin de délimiter les besoins et le reste à faire. Ce plan a donc pris la forme d'un rétro planning avec comme point de fin le déploiement de l'application.
417\newpage
418\begin{figure} [H]
419\begin{flushleft}
420%\centerline{\includegraphics[scale=0.5]{RetroPlan.png}}
421\caption{Rétro Planning du 25/09/17 au 02/11/17}
422\end{flushleft}
423\end{figure}
424Ce rétro planning comprenait donc en première partie la mise en place d'un processus de livraison pour le prestataire ainsi que d'une méthode de travail afin de faciliter les échanges. Ces deux actions m'ont été affectée et les nouveaux processus ont été adoptés comme prévu.
425
426Ce rétro planning a été suivi de plusieurs planning illustrés sous forme de diagrammes de Gantt (via l'outil \textit{GanttProject}). Ces planning ont tous été réalisé en autonomie et sur demande du manager. L'équipe projet a été consultée en parallèle afin d'assurer la bonne répartition des tâches.
427Un premier planning a été édité afin de suivre le reste à faire par l'équipe de développement et de planifier les livraisons. Un second a ensuite été réalisé afin de préparer le déploiement de l'application.
428\subparagraph{Planning d'élaboration de la version pilote}
429Ce diagramme de Gantt a permis de répertorier les éléments restant avant la mise à disposition d'une version pilote pour l'application Gestion des Astreintes. Le projet a ainsi été découpé en plusieurs sous-projets afin de délimiter les grandes axes de développement.
430En plus de la partie développement de l'application, les prestations annexes telles que la documentation du projet ou la mise à disposition de procédures de déploiement ont également été ajoutées au diagramme.
431
432Les éléments de ce diagramme ont été organisés en fonction de leur importance et de leur complexité et en suivant l'ordre défini dans les spécifications fonctionnelles.
433En effet les spécifications fonctionnelles ont été réparties en 4 lots, un 5\up{e} lot fera par ailleurs son apparition pour les évolutions:
434\begin{itemize}
435\item Lot 0: Données de base
436\item Lot 1: Planification et affectation des astreintes
437\item Lot 2: Déclaration et validation des interventions
438\item Lot 3: Clôture mensuelle et annuelle
439\item Lot 4: Évolutions
440\end{itemize}
441
442\begin{figure} [H]
443\begin{flushleft}
444%\centerline{\includegraphics[scale=0.7]{Gantt_Pilote_Short.png}}
445\caption{Axes principaux de l'élaboration de version pilote}
446\end{flushleft}
447\end{figure}
448Lors de la réalisation de ce diagramme, un suivi des ressources a du être effectué et chaque tâche a été affectée aux collaborateurs correspondant, tout en prenant en compte leur charge de travail due au possibles autres actions sur le projet. De même les planning de chaque membre de l'équipe a du être renseigné afin de gérer au mieux les congés et absences de chacun.
449Ce planning était ensuite mis à jour de façon hebdomadaire et était réajusté en cas de retard ou d'avance sur le projet.
450
451\begin{figure} [H]
452\begin{flushleft}
453%\centerline{\includegraphics[scale=0.4]{Gantt_Pilote.png}}
454\caption{Diagramme de Gantt sur l'élaboration de la version Pilote}
455\end{flushleft}
456\end{figure}
457\subparagraph{Planning de déploiement de l'application}
458Le second diagramme de Gantt réalisé avait pour but de planifier le déploiement de l'application ainsi que sa mise en production. Ce planning comprend la préparation du déploiement, la mise en production sur l'infrastructure, mais aussi le suivi des collaborateurs, la formation, la communication et le support. De nombreuses phases de tests, de Go/No Go ont été prévues afin de mener à bien la mise en production et d'assurer une qualité optimale.
459
460La première partie de ce plan de déploiement contenait le suivi des livraisons prestataire ainsi que la validation de la version pilote. Cette partie faisait donc la jonction avec le planning précédent.
461La suite du planning était ensuite découpée en plusieurs grandes étapes:
462\begin{itemize}
463\item Préparation de l'environnement de déploiement
464\item Mise en place d'un User Guide
465\item Préparation de la communication
466\item Validation du site pilote
467\item Go / No Go Déploiement Prototype
468\item Lancement déploiement
469\item Actions de communication
470\item Déploiement GdA OK
471\end{itemize}
472\begin{figure}[H]
473\begin{flushleft}
474%\centerline{\includegraphics[scale=0.65]{Gantt_Deploiement_Short.png}}
475\caption{Axes principaux pour le déploiement de l'application}
476\end{flushleft}
477\end{figure}
478Les étapes décrites dans le plan de déploiement ont été choisie en binôme avec Luc-André ROCHE, chef de projet de l'équipe, et assurent une mise en production dans les règles.
479Ce planning a été mis à jour fréquemment afin d'organiser les tâches de façon convenable et afin de prévoir la date de déploiement.
480Un suivi des ressources a été effectué comme pour le planning précédent. Un point est cependant venu modifier la planning de façon inattendu. En effet Normand BOURGET, testeur de l'équipe projet, a été affecté à une autre mission à partir du 3 Novembre. De ce fait, les tâches ont du être re-répartie entre Luc-André et moi-même.
481\begin{figure} [H]
482\begin{flushleft}
483%\centerline{\includegraphics[scale=0.35]{Gantt_Deploiement.png}}
484\caption{Diagramme de Gantt sur le déploiement de l'application}
485\end{flushleft}
486\end{figure}
487\subsubsection*{Mise en application du plan de déploiement}
488Une fois validé, ce plan de déploiement a été suivi par l'ensemble de l'équipe projet. Au fur et à mesure de l'avancement, des mises au point étaient effectuées afin de garder le planning à jour et effectuer un réel suivi. Le projet présentant un retard important, mettre en place un plan de déploiement et d'avancement a permis de cadencer le projet et de gagner en efficacité et visibilité. Cela a également servi à fixer le reste à faire pour le développement et pour le déploiement.
489De nouvelles fonctionnalités nécessaires à la mise en production ayant été demandées, le planning a du être considérablement rallongé. Cet écart est d'autant plus grand que chaque livraison créait de nombreuses anomalies qui devaient être corrigées aux versions suivantes, et ainsi de suite.
490C'est pourquoi un réel suivi des livraisons et du développement a du être mis en place. Ce suivi avait donc pour but principal d'améliorer l'efficacité de travail mais surtout de faire augmenter la qualité des livraisons.
491\subsubsection*{Suivi de projet}
492\subparagraph{Encadrement des livraisons}
493La mise en application de correctifs ou de nouvelles fonctionnalités donne lieu à l'apparition d'une nouvelle version de l'application. Cette version est livrée par l'équipe de développement sous la forme d'un fichier déployable sur les serveurs. Le fichier à déployer est un WAR, Web application ARchive, contenant l'ensemble des pages JavaServer, servlets, classes Java, fichiers XML, et pages statiques de l'application.
494Le fichier WAR seul est nécessaire pour déployer une nouvelle version de l'application. Cependant des fichiers SQL sont parfois transmis en complément lorsque des actions sont à effectuer sur l'architecture de la base de données.
495Le contenu des livraisons est défini par l'équipe de développement en fonction des ressources (développeurs) disponibles pour le projet et de la charge de travail nécessaire.
496
497Afin d'encadrer les livraisons et de permettre un suivi des livraisons, j'ai du mettre en place une procédure à suivre ainsi que des documents à utiliser pour faciliter les échanges. Ces documents et processus ont été réalisés en autonomie et ont ensuite été présentés au responsable hiérarchique pour validation.
498
499Il a donc été défini que le prestataire devrait remplir un PV de livraison spécifiant le contenu de chaque livraison. Ce document reprend donc les références des anomalies présentes sur le JIRA. Ces anomalies étant regroupées dans le document en fonction de leur importance. On peut trouver les demandes prioritaires puis les demandes IHM (Interface Homme-Machine).
500\begin{figure} [H]
501\begin{flushleft}
502%\centerline{\includegraphics[scale=0.8]{PV_Livraison.png}}
503\caption{Exemple de PV de livraison}
504\end{flushleft}
505\end{figure}
506Ce document s'insère donc dans un processus de livraison liant le client (Sopra Steria) et le prestataire (équipe de développement).
507Le processus défini forme un cycle qui est répété jusqu'à ce qu'une version pilote soit atteinte (voir ci-après).
508\newpage
509\begin{figure} [H]
510\begin{flushleft}
511%\centerline{\includegraphics[scale=0.22]{Workflow_Livraison.png}}
512\caption{Workflow d'une livraison}
513\end{flushleft}
514\end{figure}
515Ce processus a ainsi été mis en application à de nombreuses reprises et continuera d'être utilisé sur ce projet après la fin de ma période de stage. Ainsi, une dizaine de livraisons ont été effectuées en suivant ce modèle.
516Ce workflow et les supports qui y sont associés ont permis d'officialiser les livraisons et d'éviter de possibles litiges entre client et prestataire.
517\subparagraph{Suivi interne et étude sur la qualité}
518
519Après chaque livraison une étude sur la qualité était effectuée par mes soins. Cette étude était ensuite présentée aux responsables hiérarchiques (Manager, Chef de projet) afin de leur offrir un suivi du projet. Ces suivis statistiques étaient inclus dans un fichier de suivi hebdomadaire donnant au manager une visibilité maximale sur l'avancement du projet.
520Ce document a été réalisé en autonomie tout en prenant en compte les attentes du manager.
521\newline
522Le document contient 5 pages:
523\begin{itemize}
524\item Météo du projet
525\item Reste à faire avant version pilote
526\item Statistiques sur la qualité des dernières livraisons
527\item Recette de la dernière livraison
528\item Tableau des actions et des responsabilités (type RACI)
529\end{itemize}
530La page Météo de ce document a été réalisée afin de fournir le maximum d'informations au manager en utilisant le moins de place possible. En un coup d’œil le manager devait être capable de comprendre l'état d'avancement du projet de façon détaillée.
531
532Ainsi ce document était transmis de façon hebdomadaire au manager et était ensuite repris lors de réunions de suivi. Cela permettait au manager d'avoir une vision sur les activités de la semaine précédente (S-1), de la semaine actuelle (S) et de la semaine suivante (S+1).
533L'édition de ce document et le choix des actions de la semaine étaient réalisés en autonomie puis validés par le chef de projet et le manager.
534\begin{figure} [H]
535\begin{flushleft}
536%\centerline{\includegraphics[scale=0.5]{M_t_o.png}}
537\caption{Météo du projet}
538\end{flushleft}
539\end{figure}
540\begin{figure} [H]
541\begin{flushleft}
542%\centerline{\includegraphics[scale=0.6]{RACI.png}}
543\caption{Matrice de responsabilités}
544\end{flushleft}
545\end{figure}
546\newpage
547\subparagraph{Comités techniques}
548Au cours de ma période de stage, des comités techniques (CoTechs) ont été mis en place afin d'assurer un suivi continu des équipes de développement et d'améliorer la qualité des livraisons. Ces CoTechs avaient donc lieu de façon hebdomadaire et prenaient la forme de réunions physiques ou téléphoniques.
549\newline
550Ces comités réunissaient:
551\begin{itemize}
552\item Chef d'équipe (Prestataire)
553\item Développeur (Prestataire)
554\item Pilote projet (Prestataire)
555\item Chef de projet - Luc-André ROCHE (Sopra Steria)
556\item Chef de projet junior - François CHERRIER (Sopra Steria)
557\end{itemize}
558L'ordre du jour était défini par l'équipe client (Sopra Steria) en fonction des actions de la semaine. De façon générale, ces réunions servaient à échanger sur les points à traiter pour la prochaine livraison. Ainsi nous étions assurés que le prestataire avait bien compris la demande et qu'il n'y avait aucune zone d'ombre. Un compte rendu de réunion était édité après chaque session afin d'officialiser les demandes et les informations transmises. Une partie des informations de ces comptes-rendus était utilisée dans les fichiers de suivi hebdomadaire.
559
560La présidence de ces réunions était effectuée par Luc-André ROCHE et moi-même. Dans le cas où Luc-André ROCHE était indisponible, je devais présider seul les CoTechs et représenter Sopra Steria dans sa relation avec le prestataire. La relation client-prestataire étant parfois tendue, conduire seul ces comités était une expérience stimulante.
561
562\subsubsection*{Évolutions de l'application}
563Lorsque le reste à faire a été défini, nous nous sommes rendu compte que les spécifications actuelles étaient incomplètes et ne permettaient pas de livrer une application déployable en production. De nombreux éléments de l'application ont du être pensés et conçus en binôme avec le manager du projet. Afin de répondre au mieux aux besoins des utilisateurs, j'ai du consulter plusieurs assistantes afin de connaître leur travail et leur workflow. Ainsi nous avons pu définir ensemble les fonctionnalités nécessaires à leur travail. Lors de ces échanges il a donc fallu être force de proposition et offrir des solutions aux assistantes, tout en restant réaliste quant aux contraintes de développement.
564Une fois les spécifications rédigées et validées par le manager, des fichiers de demande de développement étaient édités puis envoyés à l'équipe de développement. Les fichiers envoyés étaient ensuite discutés en CoTechs et une estimation des charges était fournie par l'équipe de développement. Une fois cette estimation reçue et acceptée par l'équipe projet, le développement ainsi que la livraison associée étaient planifiés dans l'emploi du temps des développeurs.
565Les évolutions étant des demandes hors contrat et hors devis, un fichier de suivi des évolutions clair a donc du être transmit aux responsables hiérarchique afin de prévoir les coûts supplémentaires de ces demandes. Au total près de 14 évolutions importantes ont été demandées pour la version pilote et au moins 10 évolutions importantes seront à prévoir pour une version future.
566$\newline$
567\begin{figure} [H]
568\begin{flushleft}
569%\centerline{\includegraphics[scale=0.75]{Suivi_Evol.png}}
570\caption{Exemple de récapitulatif d'évolutions}
571\end{flushleft}
572\end{figure}
573\newpage
574\subsection*o{Interprétation et critique des résultats}
575Le projet Gestion des Astreintes a débuté en janvier 2017 et devait se finir en mars de la même année. Le développement de cette application a été géré en offshore par une entreprise de développeurs basée en Tunisie. Malheureusement, un manque d'efficacité de la part des équipes de développement et des difficultés lors de l'expression du besoin ont mis le projet en retard sur plusieurs mois. En effet lors de mon arrivée, le développement de l'application n'était toujours pas terminé et certains modules étaient mêmes sujets à de graves régressions. Même si le sujet initial de ce stage était la conception puis la mise en place d'un plan de déploiement pour l'application, la priorité a d'abord été d'améliorer la qualité des livraisons et de clarifier les demandes faites aux prestataires.
576La mise en place de processus de livraison et de demandes d'évolutions ont permis de gagner en efficacité et en qualité sur les versions livrées par les développeurs.
577
578Ainsi comme le montre l'image ci-dessous, la qualité des livraisons est passée de 25\% à 80\% sur la période de mon stage. De même, le stock d'anomalies répertoriées par version est passé d'environ 40 à 5 anomalies. Le résultat est donc satisfaisant.
579\begin{figure} [H]
580\begin{flushleft}
581%\centerline{\includegraphics[scale=0.65]{Statistiques_Qualit_.png}}
582\caption{Statistiques de qualité du 03/10/17 au 12/12/17}
583\end{flushleft}
584\end{figure}
585Néanmoins on peut aussi remarquer que la dernière livraison enregistrée présente une nette baisse de qualité. Cela intervient alors que les demandes faites pour cette livraison étaient plus importantes que les précédentes. De par cette livraison et de façon générale sur l'ensemble du projet, nous avons donc pu remarquer que l'équipe de développement n'était pas capable de fournir une qualité acceptable dès que la demande était importante. C'est pourquoi malgré une nette augmentation de la qualité, il semble compliqué de confier de lourdes de taches à cette équipe de développement.
586
587L'application n'a pas pu atteindre une version acceptable avant la fin de mon stage. Néanmoins de nombreux points ont été traités et le reste à faire en développement a été clairement défini et a été traduit par plusieurs plannings (Gantt notamment).
588Un planning concernant le développement de l’application ainsi qu’un fichier de suivi des évolutions ont été édités afin de connaître le reste à faire avant mise en production.
589Sur toutes les demandes transmises, 9 restent à valider en recette. Certaines nécessiteront certainement une ou deux livraisons avant d’être conformes, mais la demande est claire et les fichiers de spécifications de ces demandes sont connus de tous.
590Ainsi seules 2 demandes d’évolutions n’ont pas été transmises à l’équipe de développement.
591Une fois ces deux demandes finalisées et transmises, il ne restera plus qu’à attendre la fin du développement pour avoir une version pouvant être mise en production.
592
593De nombreux documents ont également été édités afin d'aider au transfert de connaissances vers la nouvelle personne désignée pour piloter le projet. Ces documents sont nécessaires à la mise en place du processus défini lors de la période de septembre-décembre.
594
595Enfin, mes connaissances techniques m'ont permis d'effectuer plusieurs audits sur l'application et la base de données et ont révélés plusieurs anomalies. Ces anomalies (essentiellement sur la sécurité) ont ensuite été corrigées et ont permis de garantir l'intégrité et la stabilité de l'application et des données.
596
597\newpage
598\section{Premier bilan}
599\subsection{Apports à l'entreprise}
600Ce stage s'inscrit dans mon projet professionnel en temps que stage de découverte des entreprises du type ESN et découverte de la gestion de projet en milieu professionnel. Ce stage doit ainsi me permettre de mettre en pratique et de compléter les connaissances en gestion de projet acquises durant ma scolarité à l'EPITA.
601\newline
602Le sujet original du stage était "Création et mise en œuvre d'un plan de déploiement pour une application interne". Cependant, l'application en question n'était pas prête pour une mise en production car le développement avait pris beaucoup de retard. Le sujet a donc peu à peu évolué pour englober également le pilotage du projet, des demandes, des livraisons; la réalisation de différents audits et la gestion des évolutions.
603\newline
604Ce changement de sujet n'a pas été une déception pour moi car cela n'a fait que m'ajouter des responsabilités et des tâches à accomplir. J'ai ainsi pu acquérir plus d'expérience et découvrir de nouveaux éléments sur la chefferie de projet en entreprise. Au cours de ce stage j'ai eu une certaine liberté et ai pu être force de proposition. Même si ces libertés se traduisaient en responsabilités, j'ai su m'adapter et ai travaillé de pair avec le manager de l'équipe pour faire avancer le projet le plus efficacement possible.
605J'ai ainsi été en relation avec l'équipe prestataire désignée pour la mission et ai été amené à effectuer de nombreuses réunions avec cette dernière. Étant actuellement président de la junior entreprise de l'EPITA (Cristal), je connaissais bien le point de vu prestataire et cela m'a grandement aidé lors de ces échanges. Ce stage m'a donc permis de découvrir le point de vu client et d'affiner ma maîtrise de la relation client/prestataire.
606
607Les notions vues et étudiées lors de ce stage se rapprochant grandement de celles enseignées dans la majeure SIGL, je serai à même de bien commencer mon semestre en cas d'acceptation dans cette majeure.
608Ce stage me conforte donc dans mon projet professionnel et dans mon choix de majeure pour ma deuxième année de cursus ingénieur à l'EPITA.
609
610\subsection{Apports personnels}
611
612Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
613
614\subsection{Conclusion et retour d'expérience}
615
616Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
617
618\newpage
619\section*{Glossaire}
620\thispagestyle{plain}
621\addcontentsline{toc}{section}{Glossaire}
622
623\begin{itemize}
624\item \hypertarget{AMOA_def}{AMOA} : Assistance Maîtrise d'Ouvrage, désigne le rôle ayant pour mission d'aider le maître d'ouvrage à définir, piloter et exploiter le projet.
625\item \hypertarget{BA_def}{Business Analyst} : Chargé d'évaluer les besoins d'une organisation ou d'une unité d'affaires et de documenter ses processus et systèmes et d'analyser son modèle d'affaires. Il agit généralement comme un agent de liaison entre les différentes parties prenantes de l'organisation, ici entre le métier et le pôle informatique
626\item \hypertarget{BD_def}{Big data} : le Big Data, ou "grandes données", regroupe des données présentant une grande variété, arrivant en volumes croissants, à grande vitesse, que les logiciels de traitement de données classiques sont incapables d'incorporer
627\item \hypertarget{bn_def}{Boîte noire} : Représentation d'un système sans considérer son fonctionnement interne, ici dû à la trop grande complexité du développement, rendant ce dernier opaque à toute analyse.
628\item \hypertarget{Centra_def}{Centralisation de trésorerie} : Equilibrage automatisé des soldes des comptes d'une entreprise permettant de concentrer les flux des comptes bancaires des filiales sur un compte centralisateur appartenant à la société mère
629\item \hypertarget{Cloud_def}{Cloud} : Modèle d'infrastructure permettant un accès omniprésent et à la demande à un réseau partagé et à un ensemble de ressources informatiques configurables qui peuvent être provisionnées et libérées avec un minimum d’administration
630\item \hypertarget{CPT_def}{CPT} : Cognitive Process Transformation, pôle d'expertise de GBS
631\item \hypertarget{digi_def}{Digitalisation} : Procédé visant à transformer des processus traditionnels, des objets, des outils ou encore des professions en utilisant des technologies digitales afin de les rendre plus performants
632\item \hypertarget{EPITA_def}{EPITA} : École Pour l'Informatique et les Techniques Avancées
633\item \hypertarget{ESN_def}{ESN} : Entreprise de Services du Numérique
634\item \hypertarget{GBS_def}{GBS} : Global Business Services, division d'IBM
635\item \hypertarget{hf_def}{Hotfix} : Modification légère d'une solution existante ayant pour but de corriger une ou plusieurs anomalies ou d'améliorer les performances de certains traitements
636\item \hypertarget{IBM_def}{IBM} : International Business Machines Corporation
637\item \hypertarget{JE_def}{Junior Entreprise} : Association fondée par des étudiants (en école d'ingénieurs, de commerce…), dans le cadre de laquelle ils accomplissent des travaux rémunérés pour le compte d'entreprises
638\item \hypertarget{Mainframe_def}{Mainframe} : Ordinateur de grande puissance de traitement, servant le plus souvent d'unité centrale à un réseau de terminaux
639\item \hypertarget{POC_def}{POC} : Proof Of Concept, réalisation expérimentale concrète et préliminaire, courte ou incomplète, illustrant une certaine méthode ou idée afin d'en démontrer la faisabilité
640\item \hypertarget{PWC_def}{PWC} : Price Waterhouse Coopers, entreprise d'audit et de conseil anglaise
641\item \hypertarget{RB_def}{RB} : Retail Banking, en français Banque de Détail, représente une \textit{practice} de CPT
642\item \hypertarget{refacto_def}{Ré-usinage} : Ici dans le cadre de ré-usinage de code : opération consistant à retravailler le code source d'un programme informatique – sans toutefois y ajouter des fonctionnalités ni en corriger les anomalies – de façon à en améliorer la lisibilité et la maintenance, ou à le rendre plus générique
643\item \hypertarget{sachants_def}{Sachants} : Personnes détenant le savoir sur un périmètre donné
644\item \hypertarget{SIGL_def}{SIGL} : Système d'Information et Génie Logiciel, majeure de l'EPITA
645\item \hypertarget{virtu_def}{Virtualisation} : Mécanisme informatique consistant à faire fonctionner plusieurs systèmes, serveurs ou applications, sur un même serveur physique
646\end{itemize}
647\newpage
648\clearpage
649\thispagestyle{empty}
650\phantom{a}
651\vfill
652\vfill
653\newpage
654\thispagestyle{plain}
655\listoffigures
656\addcontentsline{toc}{section}{Liste des Figures}
657\end{onehalfspacing}
658\end {document}