1 / 40

Le système de production

Le système de production. Présentation à la délégation sénégalaise Marie-Eve Martin. Conclusion. Les différents morceaux. Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs. Le système de traitement.

sasha
Download Presentation

Le système de production

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Le système de production Présentation à la délégation sénégalaise Marie-Eve Martin

  2. Conclusion

  3. Les différents morceaux Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs

  4. Le système de traitement Fichier d’instructions Analyste Interpréteur Exécuteur Ressources etprogrammes

  5. Historique 2011 à aujourd’hui Système imaginé pour une équipe (RHN) Système généralisé pour toutes les équipes Ajout de fonctionnalités, souplesse, capacités… On est arrivé au bout, prêtsà recommencer avec toutesl’expérience acquise

  6. Fichier d’instructions Format texte Indépendant

  7. Interpréteur • Technologies : Opalis/Python • Responsabilités : • Traduire le fichier d’instructions • Préparer les batchs • Gérer les erreurs

  8. Exécution Serveurs Windows, communs à tous Outil de balancement de la charge : LSF

  9. Démo

  10. Leçons apprises • L’importance d’un bon interpréteur a été sous-estimée. • L’interpréteur actuel a été développé pour les besoins d’une équipe et adapté à tous, • Beaucoup de patch. • L’expérience acquise nous permettra de planifier une prochaine version très solide. • La présence d’un interpréteur permet d’isoler le traitement et facilite les maintenances.

  11. Leçons apprises Beaucoup d’interdépendance dans le système. Le format du fichier d’instructions ne respecte aucune norme Meilleur contrôle des outils installés sur les systèmes.

  12. Les différents morceaux Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs

  13. Gestion des programmes • Logiciel utilisé : Tortoise SVN + Subversion • Avantages : • Gestion des sources • Contrôle des modifications • Gestion de l’historique

  14. BD Ressources • Utilisée pour enregistrer tous les paramètres • Adresses de répertoires • Paramètres de connexion • Permet de changer un paramètre au besoin, sans modifier les fichiers d’instructions.

  15. Démo

  16. Leçons apprises Les traces de déploiement dans l’historique d’un fichier nous a sauvé plusieurs fois. Le déploiement à la pièce est indispensable pour la correction de bugs en urgence. Difficile de définir quels programmes doivent être gérés et lesquels sont des tests à jeter.

  17. Les différents morceaux Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs

  18. Technologies utilisées • Nombre de technologies limitées : • FME, ESRI, PYTHON, DOS, JAVA, GDAL, ORACLE, POSTGIS • Facilite le support et les migrations. • Demande certains compromis. • Requière une bonne gouvernance.

  19. Bonnes pratiques • Normes de programmation • Établies et adoptées les programmeurs et le support. • Encouragées par la gestion • Mécanismes de contrôle de qualité

  20. Exemples de normes de programmation Documentation obligatoire Tests unitaires obligatoires et stockés avec le programme Messages d’erreurs devant être accompagnés d’instructions. …

  21. Démo

  22. Leçons apprises Les dernières nouveautés sont toujours tentantes (prévoir un environnement pour tester). Demande un mécanisme et des règles de gouvernance et souvent un contrôle des ordinateurs. Beaucoup de résistance au contrôle de qualité par les pairs.

  23. Leçons apprises • Facilite énormément le support • Facilite énormément les mises à jour • La présence de tests de métriques autonomes permet de tester l’ensemble des programmes durant la nuit de façon automatique

  24. Les différents morceaux Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs

  25. Gérer ou subir le changement ? Productivité Efforts de migration Efforts de migration Migration par saut • Chaque migration est un mur à franchir • Perception : Encore un changement... Peut-on le retarder ? • Les processus ne sont pas faits pour changer facilement, chaque changement coûte cher. Changements continus • Le changement fait partie de l’amélioration constante d’un processus.

  26. Gérer le changement • Une bonne gestion de changement permet: • De profiter des dernières nouveautés. • De faciliter les migrations. • Plus d’agilité. • Une planification plus précise • Une bonne gestion de changement démontre: • Un meilleur contrôle des processus.

  27. Gérer le changement • Une bonne gestion de changement requiert: • La volonté d’évoluer ! • De la planification ! • De la rigueur ! • Accepter qu’un développement n’est jamais final. • Définition et le respect de bonnes pratiques. • Moins de bricolage, de patch. Touche tout le monde, du programmeur à la gestion

  28. Leçons apprises Le pression de livrer nous amène encore souvent à tourner les coins ronds La migration Windows 7 s’est faite sans heurts en 2 semaines La migration FME est faite 1 ou 2 fois par année (presque) sans heurts

  29. Les différents morceaux Le système de traitement La gestion des sources Les normes de programmation La gestion des mises à jour Les outils communs

  30. Bénéfices de composants réutilisables Plus de redondance Plus d’autonomie Plus rapide à développer Plus d’investissement initial Équipes Services Boite à outils Totalité d’un projet Échelle non-représentative TI-Géomatique DDIP / SPC Choix du niveau d’intervention

  31. Organisation du travail • Équipe spécialisée en développement: • Facilite le développement de composants réutilisables (boite à outils) • Uniformise les développements et facilite le transfert à support • Allège le fardeau des équipes de production • > 250 programmes/services réutilisables

  32. Organisation du travail Énonce le besoin Comprend le processus Développements ad-hoc Moins d’optimisation Moins de respect des normes Plus de pression de sortir quelque chose vite Fournit des outils communs Développe les demandes des analystes Optimise les outils redondants Petites modifications Migrations Correction de bugs • Analystes • Programmeurs • Support

  33. Exemples de composants réutilisables • Le système de traitement • Utilitaires • La base de données de suivi de production

  34. Exemples de composants réutilisables Catalogue1 Catalogue 2 Programme • Validations basées sur un catalogue • Catalogue basé sur ISO-19110 • Uniformise les validations entre les processus • Programmes indépendants des règles

  35. L’utilisation du catalogue Site FTP Sous-traitant Outil de création de catalogue Catalogue XML Programme de validation

  36. Exemples de composants réutilisables • Validations basées sur un catalogue • Valider Contraintes spatiales • Valider Domaine attribut • Valider Dimensions minimales • Valider Proximité • Valider Segmentation • …

  37. Démo

  38. Leçons apprises Analystes et développeurs difficiles à séparer (à cause de considérations historiques au CITS) Développements basés sur normes internationales évoluent mieux et les partenaires embarquent mieux.

  39. Conclusion

  40. Conclusion Pour qu’un système de production fonctionne bien, tous les morceaux doivent s’emboiter correctement. Une équipe forte doit agir comme chef d’orchestre pour coordonner le tout. Ce sont souvent les composants non planifiés qui deviennent les meilleures idées (mais ils nécessitent un bon polissage)

More Related