Théo RichartMTI 2012           Ubisoft Montréal       Développement et amélioration           d’outils internes en C#
CONTEXTE
UbisoftFrench company founded in 19863rd world video game publisher1 billion US$ revenueOver 5,000 employees in the world
Ubisoft Montréal2,000 employeesLargest Ubisoft Studio in the worldAssassins Creed, Watch Dogs, Prince of Persia,  Just Dan...
ÉquipeEquipe outils du projet Assassins Creed15 personnes parmi plus de 200 dans le monde
Mon maître de stageAnthony Brien : Lead technique équipe outilsFondateur du studio à MontréalA travaillé sur AC1, AC2, Pri...
Sujet du stageDéveloppement doutils internes en C#Développement et corrections rapides  Les utilisateurs sont des collègue...
OBJECTIFS
Objectifs globauxAméliorer efficacité et productivité des  utilisateurs  Outils nouveaux ou existants  OptimisationProduir...
MoyensDocumentation ConfluenceDisponibilité de mon maître de stage et mes  collèguesCode documentéFormations internes et «...
PlanningStage de 6 mois  Du 6 février au 3 aoûtQuatre projets notables
Points de contrôleCode reviewsBuild farmsTests unitaires et testeursMeetings hebdomadaires
RÉALISATIONS
Notions préliminaires            Scimitar :             Moteur             de jeu              (C++)            Protocole ...
World Issue SystemPlugin Anvil en WPFIntégration avec JIRACréation, édition, affichage et recherche  dincidents liés à un ...
World Issue SystemGrande phase d’optimisation :  Parallélisation JIRA  Virtualisation WPF  Mise en cache
World Issue SystemOutil déployéRepris par d’autres équipesPlusieurs phases d’améliorationEn cours d’adoption
Enum CustomizationPersonnalisation des énumérationsUtilisé par les DTRésultat pour tout le mondeDéployé, repris par lesaut...
Anvil StartupTemps de démarrage dAnvil : 40sProfiling afin de déterminer les goulots  détranglement
Anvil StartupParallélisation :  Migration vers .NET4 pour la Task Parallel  Library  Découpage en blocs fonctionnels      ...
Anvil StartupRecherche de processus  Recherche de lexécutable de Scimitar  Différents noms selon la configuration  Utilise...
Anvil StartupSérialisation XML  Utilisait les XmlSerializers du framework  Comparatif avec dautres solutions : Json.NET  2...
Anvil StartupTemps de démarrage : 25sModifications déployées, reprises par d’autres  équipes
Property BrowserRemplace la Property Grid vieillissante en  WinFormsAffichage et édition des propriétés des objets du  jeu...
Property Browser
Property BrowserIntégration depuis une autre branche de codeImplémentation pour ScimitarOptimisation et refactoringEn cour...
BILAN
BilanStage passionnant, enrichissantMené à une embaucheBelle conclusion de mes étudesMerci à mon maître de stage, Anthony ...
Prochain SlideShare
Chargement dans…5
×

Slides richar_o

389 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
389
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
2
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Slides richar_o

  1. 1. Théo RichartMTI 2012 Ubisoft Montréal Développement et amélioration d’outils internes en C#
  2. 2. CONTEXTE
  3. 3. UbisoftFrench company founded in 19863rd world video game publisher1 billion US$ revenueOver 5,000 employees in the world
  4. 4. Ubisoft Montréal2,000 employeesLargest Ubisoft Studio in the worldAssassins Creed, Watch Dogs, Prince of Persia, Just Dance, ...
  5. 5. ÉquipeEquipe outils du projet Assassins Creed15 personnes parmi plus de 200 dans le monde
  6. 6. Mon maître de stageAnthony Brien : Lead technique équipe outilsFondateur du studio à MontréalA travaillé sur AC1, AC2, Prince of Persia, ...
  7. 7. Sujet du stageDéveloppement doutils internes en C#Développement et corrections rapides Les utilisateurs sont des collèguesUtilisés par les créateurs de contenu Artistes, Game designers, ...
  8. 8. OBJECTIFS
  9. 9. Objectifs globauxAméliorer efficacité et productivité des utilisateurs Outils nouveaux ou existants OptimisationProduire du code réutilisable par léquipe et par les autres projets
  10. 10. MoyensDocumentation ConfluenceDisponibilité de mon maître de stage et mes collèguesCode documentéFormations internes et « capsules »
  11. 11. PlanningStage de 6 mois Du 6 février au 3 aoûtQuatre projets notables
  12. 12. Points de contrôleCode reviewsBuild farmsTests unitaires et testeursMeetings hebdomadaires
  13. 13. RÉALISATIONS
  14. 14. Notions préliminaires Scimitar : Moteur de jeu (C++) Protocole réseau Arrow Anvil : GuildLib : Editeur base de de données contenu (C++) (C#)
  15. 15. World Issue SystemPlugin Anvil en WPFIntégration avec JIRACréation, édition, affichage et recherche dincidents liés à un niveauInterface
  16. 16. World Issue SystemGrande phase d’optimisation : Parallélisation JIRA Virtualisation WPF Mise en cache
  17. 17. World Issue SystemOutil déployéRepris par d’autres équipesPlusieurs phases d’améliorationEn cours d’adoption
  18. 18. Enum CustomizationPersonnalisation des énumérationsUtilisé par les DTRésultat pour tout le mondeDéployé, repris par lesautres projets
  19. 19. Anvil StartupTemps de démarrage dAnvil : 40sProfiling afin de déterminer les goulots détranglement
  20. 20. Anvil StartupParallélisation : Migration vers .NET4 pour la Task Parallel Library Découpage en blocs fonctionnels UI Initialisation Pipeline Configuration Plugins
  21. 21. Anvil StartupRecherche de processus Recherche de lexécutable de Scimitar Différents noms selon la configuration Utilise WMI et WQL
  22. 22. Anvil StartupSérialisation XML Utilisait les XmlSerializers du framework Comparatif avec dautres solutions : Json.NET 2 fois plus rapide 10.00 8.00 6.00 4.00 2.00 0.00
  23. 23. Anvil StartupTemps de démarrage : 25sModifications déployées, reprises par d’autres équipes
  24. 24. Property BrowserRemplace la Property Grid vieillissante en WinFormsAffichage et édition des propriétés des objets du jeuOutil préexistant, mais non utilisé
  25. 25. Property Browser
  26. 26. Property BrowserIntégration depuis une autre branche de codeImplémentation pour ScimitarOptimisation et refactoringEn cours de déploiement, collaboration avec d’autres équipes
  27. 27. BILAN
  28. 28. BilanStage passionnant, enrichissantMené à une embaucheBelle conclusion de mes étudesMerci à mon maître de stage, Anthony Brien

×