RAPPORT DE STAGE
Développeur
RUEL Quentin
7 Janvier 2019 / 15 Février 2019
Tuteur de stage : Monsieur Leguay
Enseignant référant : Madame Laouija
Établissement : Lycée La Joliverie
Table des matièes
1. L’entreprise et son secteur...4
1.1. Secteur d’activité...4
1.2. L’entreprise...4
2. Le stage...6
2.1. Contexte du stage...6
2.2. Mes Missions...7
2.3. Bilan...11
Conclusion……… 11
Introduction :
Du 7 Janvier au 15 Février dans le cadre de mon BTS à la Joliverie, j’effectue un stage au sein de L’Union des caisses de France CIBTP.
C’est une association à but non lucratif de la loi du 1er juillet 1901, agréée par arrêté ministériel, administrée par des professionnels du bâtiment et des travaux publics. CIBTP dirigée par Jean-luc Carretta.
Durant le stage mon tuteur a été Yann Leguay mais Maxime
Verheaghe c’est aussi beaucoup occupé de moi ainsi qu’Adrien et les 6 personnes qui étais avec moi dans le Bureau. Nous étions d’ailleurs 24 au total dans les locaux. Mais CIBTP possèdes des locaux un peu partout en France. Au cours de ce stage, l’occasion m’est donnée d’appréhender les différentes approches du développement orienté Objet, de la compréhension des codes sources du projet fournis, jusqu’à la réalisation des modifications demandé. Ce contexte me permet ainsi d’aborder dans d’excellentes conditions les
problématiques de ce métier en bénéficiant notamment de conseils sur la réalisation d’un projet et de l’analyse de la demande ainsi que des codes sources. Ma mission était bien évidemment liée au domaine du développement. J’ai dû traduire une application Java en .Net. Ce stage était pour moi l’opportunité non seulement de mieux appréhender ce que me réserve mon futur mais aussi et surtout de découvrir l’étendue des taches d’un développeur.
Pour mon rapport de stage j’ai décidé de me concentrer sur la
présentation de la DSI de Nantes qui est spécialisé dans le
développement.
1. L’entreprise et son secteur 1.1. Secteur d’activité
Ici le DSI (direction des Services Informatiques) s’occupe
principalement de la Gestion du SIU (système d’information unique).
Il n’y a donc pas de concurrence sachant qu’ils ne travaillent qu’uniquement en interne. Les enjeux sont par contre eux très important car l’application permettant de payer les congés au travailleur du BTP, il faut que cela fonctionne. C’est pour cela que tous les jours des nouvelles missions de correction de bugs sont donnés. En parallèle une équipe s’occupe des améliorations et optimisations de l’application.
1.2. L’entreprise
Le 7 juin 1936, le gouvernement du Front populaire instaure la se- maine de quarante heures et l'octroi de quinze jours de congés payés pour les salariés ayant travaillé durant six mois dans la même entre- prise.
Dans le bâtiment et les travaux publics (BTP), les salariés changeant fréquemment d'employeur et risquant de ne pas bénéficier de ce repos, le gouvernement, à la demande de la profession, décide de créer un système spécifique de caisses (ainsi que dans les secteurs d'activités du transport, du spectacle et de la manutention portuaire), destiné à as- surer . En 1947, ce dispositif est complété par un .
Au fil du temps, d' ont été confiées au réseau.
L’entreprise travaille sur 3 axes :
-Les congés payé des métiers du bâtiment
-Les congés intempérie des métiers du bâtiment (en cas de mauvais temps ils ne peuvent pas travailler)
-Les taxes d’apprentissage
La DSI travaille uniquement pour CIBTP et les différentes caisses qui se trouvent en France, 8 pour être précis. Il y’en avais 29 en 2008 qui ont été fusionné.
Il y’a 4 DSI (direction des systèmes d'information) dont la DSI de pilotage qui se trouve à Paris.
Nantes est spécialisé dans le développement comme Lyon.
Le SIU de Nantes travail sur 6 Applications différentes :
- L’applicatif métier AXINOD développé en .Net qui gère les congés et les intempéries
- L’Output Management qui sert au Mapping
- GED=Gestion électronique des documents (acheté à un tiers) o LAD=Lecture Automatique des documents
- CEGID pour la comptabilité (acheté à un tiers)
- ODIGO pour la téléphonie et la gestion des appels entrant - GAIA pour la trésorerie
Toute est centralisé dans les Datacenter de l’entreprise KEOPS, 2
Datacenters sont utilisés.
2. Le stage
2.1. Contexte du stage
Les locaux sont localisés à St Herblain proche du Zenith. Il y’a 5 Bureaux, dans le miens nous étions 7. J’ai été surtout en discussion avec Yann et Maxime mais les membres de mon bureau mon aussi aidé lorsque j’avais besoin. J’ai été aussi en contact avec des
personnes de d’autre DSI comme des développeurs de Bordeaux car l’application « System de Flux »(dont je me suis occupée) a été écrite la bas.
J’ai pu remarquer que tous les matins les équipes faisais des SCRUM, en commun avec les DSI de d’autre lieux en France. Cela leurs permet de savoir ou le projet commun est rendu, et ce qu’il faudra faire le jour même
Tout le monde travaille sur des machines virtuelles via Citrix.
Le projet initial Java m’obligeait à utiliser Anypoint Studio pour
développer, car il utilise MULE. J’ai ensuite trouvé une extension me
permettant de lire le .Net car MULE fonctionne uniquement avec java
normalement.
2.2. Mes Missions
Ma mission initiale à été de réécrire l’application « System de flux » développé en Java en .Net.
Mais pour cela j’ai dû réaliser plusieurs étapes au préalable.
Tout d’abord il a fallu récupérer le code source du SF(System de flux ) et même si ça peut paraitre évident, ce fu compliquer de trouver quelqu’un qui savais ou le trouver car ils ont beaucoup d’applications et donc énormément de dossier.. Sachant que personne au DSI de Nantes n’avais toucher au SF.
Une fois le code source à ma disposition, je me suis livré à essayer de le comprendre.. Après avoir lu les classes une par une, je ne comprenais toujours pas le fonctionnement. C’est vrai que la quantité de classes (33), de méthodes, de lignes étais conséquente. De plus de
nombreux fichier restais inconnu pour moi ainsi que certaine chose présente dans les classes.
Effectivement ici beaucoup de choses mais rien que je connaissais. J’ai donc après avoir fait le tour décidé d’aller voir l’architecte en développement, Maxime. Lui-même n’étant pas au courant du fonctionnement du SF, il a installé Eclipse, par reflexe pour utiliser du Java, j’avais fait pareil. Mais impossible d’ouvrir le projet ? personnellement j’avais ouvert les classes une a une pour pouvoir les lires. Il finit par appeler une personne qui savais le fonctionnement du SF. Il s’avère que le SF est basé autour de la technologie de MULE et que ce genre de projet ne s’ouvre qu’uniquement avec Anypoint Studio.
J’ai donc profité de cette réunion pour demander à quoi sert ce SF concrètement. Car pour comprendre le code c’est plus simple si on comprend le but initial de l’application.
Pour faire simple :
Le SF est un service visant a gérer les flux (principalement des documents) provenant des différente application pour pouvoir tout centraliser. Le SF derrière s’occupe de transférer les documents du DSI SIU au différente DSI qui pourrais avoir besoin des documents. Il sert aussi à archiver les documents.
Une fois cela compris, j’y voyais un peu plus clair. Même si MULE restais flou pour moi.
J’ai donc pu commencer a traduire le java en .net
C’est vrai que ces 2 langages orienté objet sont similaire mais sur beaucoup de choses ils sont différent..
Par exemple : extends = : final = readonly
boolean = bool
Mais ce genre de traduction, c’est simple. Effectivement après avoir fait toutes ces traductions simples, j’ai dû me pencher sur le reste qui sont d’une autre envergure.
Effectivement l’utilisation des WebService (MULE) est différente, la gestion des exceptions aussi et surtout les librairies Java tels que pour les logs, ne fonctionne bien évidement pas en .net
Malheureusement après avoir fait cela, Adrien (un employé) à été assigné pour s’occuper de moi. Et apparemment ce que j’avais fait n’étais pas bon. Il a donc fallu tout reprendre de 0.
Tout d’abord, contrairement a ce que j’avais fait, nous avons commencé par corriger toutes les erreurs du code source java qui jusque-là n’étais pas buildable. La plupart des erreurs venant de librairie manquante ce ne fu pas bien dure a faire. Une fois cela réglé il a fallu build le projet avec ANT, ce fu un peu difficile à réaliser car plein de problèmes sont apparu, autant dans le projet que sur le poste de travail.
Une fois le Build réussi, j’ai pu exécuter le code source du SF.
Effectivement cela ne sait pas passé si simplement. 222erreurs sur 368 tests..
Les tests étant réalisé avec JUnit.
L’erreur venant de cette ligne et ceux dans les 222 tests faux J’ai donc été voir a quoi cela correspondait.
J’ai ensuite été voir ce fameux FlowServicesTestProperties.
On peut voir les 2 problèmes, Le chemin qui mènent à l’utilisateur Kyahioun et l’url 10.33.4.178 qui ne mènent à rien.
2.3. Bilan
Ce stage m’a tout de même énormément apporté. Cela ma permit de voir que tout ne fonctionne pas toujours du premier coup, que tout n’est pas simple à réaliser et que la réutilisation d’une application d’une autre personne est plutôt compliquée, surtout quand ils n’y’a pas de commentaire dans le code. J’ai aussi pu voir comment se déroulais le travail dans une grosse entreprise contrairement à mon premier stage avec une freelance. J’ai donc pu comparer et voir l’ampleur des différences dans leurs façon de travailler. J’ai pu voir le système de Jira. C’est un principe de tickets qui en cas de problème ou d’erreur ou quoi que ce soit, se voie renvoyer à l’équipe en charge de gérer ce type de ticket. Puis le travail est reparti dans les équipes. Certaines équipes font des scrums tous les matins, par Skype pour échanger avec les autres DSI de d’autres villes. J’ai donc pu voir comment ressoudre les erreurs, les problèmes. Trouver des solutions par moi-même mais aussi demander et me faire aider par les personnes compétentes dans le domaine de mes erreurs. J’ai donc beaucoup appris durant ce stage.
Conclusion
Ce stage a été très intéressant et extrêmement enrichissant pour moi car il m’a permis :
• Reprise d’un projet existant
• Gestion des erreurs
• Gestion des problèmes
• Apprendre comment fonctionne une grosse entreprise
• Voir les différences entre Java et .Net
• Apprendre à communiquer et échange autours de mes problèmes avec une équipe
• M’adapter à un nouvel environnement de travail
Cela me conforte dans la volonté de me spécialiser dans ce domaine par la suite. J’espère donc pouvoir continuer dans cette voie de sorte à être force de propositions. Apres l’année dernière avoir découvert une freelance qui travaille seul, j’ai pu découvrir le fonctionnement d’une grosse entreprise et voir comment cela fonctionne, car c’e-st bien différent. Après m’avoir fait une proposition d’alternance, je vais surement changer mes objectifs futurs et tenter de rejoindre l’ENI pour un BAC+5.