Projet Industriel 2010 Réalisation d’une librairie de gestion d’algorithmes de répartition de charge S Encadrante universitaire : Isabelle Chrisment Encadrants industriels : Antoine Fillinger, Nicolas Crouzier 18/03/2010 Réalisation : Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne
Sommaire Présentation Analyse des besoins Gestion de projet Synthèse des recherches Réalisation Conclusion S
Présentation 1 NIST Contexte Exemple d’utilisation M
NIST Présentation National Institute of Standards and Technology M Gaithersburg, USA Présentation M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
“ ” NIST Présentation National Institute of Standards and Technology Créé en 1901 Mission officielle : Présentation M Son but est de promouvoir l'économie en développant des technologies, la métrologie et des standards de concert avec l'industrie. “ ” Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
NIST Présentation National Institute of Standards and Technology Budget 2009 : Supérieur à 1,5 milliard de dollars Département de la Défense : 520 milliards Force de travail 2 900 scientifiques, ingénieurs, personnel administratif 1 800 associés (chercheurs et ingénieurs invités) Présentation M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Contexte Présentation NDFS-II : NIST Data Flow System II Création NDFS-I : 1998 (v1) NDFS-II : 2003 (v2) Réseau de serveurs Présentation B Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Contexte Présentation NDFS-II : NIST Data Flow System II Traitement de l’information Entrées de données variées Fonctionnement en flux Traitement continu et parallèle Utilisé pour de nombreux domaines Présentation B Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Exemple d’utilisation Dans une salle de réunion Microphones en entrée Reconnaissance vocale, et transcription Conversation textuelle en sortie Présentation ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet dolor sit amet, consectetur adipiscing elit. Nam aliquet mauris eget ligula condimentum id rutrum arcu suscipit. Pellentesque egestas molestie turpis Non venenatis dui. Vivamus consequat. Pellentesque egestas. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam aliquet mauris eget ligula condimentum id rutrum arcu suscipit. Pellentesque egestas molestie turpis Non venenatis dui. NDFS-II B Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Analyse des besoins 2 Problématique Notre mission S
Problématique Présentation Traitements non optimisés Pas assez de données traitées Serveurs surchargés Besoin d’amélioration Prévenir la surcharge serveurs Équilibrer les clients Présentation S Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Notre mission Analyse des besoins Plusieurs clients / serveurs Déplacer un client sur le serveur approprié Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Notre mission Analyse des besoins Concevoir et développer une librairie Gestion d’algorithmes de répartition de charge Multiplateforme C++ Analyse des besoins S NDFS-II Notre librairie Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Notre mission Analyse des besoins NIST Notre librairie Algorithme S Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Gestion de projet 3 Équipe Planning prévisionnel Communication O
Équipe chargée du projet Chef de Projet Olivier Versanne Responsable Qualité Brice Ambrosiak Responsable Informatique Mathieu Lehnhard Responsable Communication Stéphane Qin Gestion de projet O 16 Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010 18/03/2010
Planning prévisionnel Intro. Recherche Conception Développement Gestion de projet O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Répartition du travail Division en tâches Individuelles ou groupées Réparties équitablement Suivi systématique Tâches planifiées Tâches vérifiées Délais respectés Gestion de projet O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Communication Gestion de projet Réunions Courriels Equipe Plusieurs fois par semaine Audioconférence ≈ 2/3 semaines Publication de CR Courriels Messagerie instantanée Gestion de projet O Remarque : 1,67 mails / jr Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Synthèse des recherches 4 Sources utilisées Répartition des clients M
Synthèse des recherches Sources utilisées Martin Quinson Prêt d’un livre Publications de chercheurs Pistes de conception Projet DIET Outils pour le calcul réparti Université de Lyon Synthèse des recherches M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Répartition des clients Synthèse des recherches M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
5 Réalisation Conception Fonctionnement Environnement de travail Détails des étapes Difficultés rencontrées B
Conception Réalisation Première étape, suite aux recherches Déterminante pour ce projet Flexibilité Adaptabilité Réunions et discussions avec le NIST Réalisation B Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Conception Réalisation B - Bibliothèque - Algorithme Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Fonctionnement Réalisation Initialisation En attente Mise en buffer LibMain(AlgoFusion) En attente Mise en buffer updateStats(XML) Répartition balance() : XML Réalisation Vidage buffer Lancement algorithmes B Algo 1 Algo n Récupération et fusion des résultats Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Environnement de travail Développé et testé sur plusieurs plateformes IDE : Code::Blocks Convention de codage Directives « Ellemtel » Laboratoire suédois Réalisation M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Environnement de travail Versions Tortoise SVN Assembla (http://www.assembla.com) Réalisation Dépôt Chef de projet Planning Code Sources, documentation Conception Diagrammes classes, flux Note de cadrage Présentations Rapports Recherche Réunions Comptes-rendus M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Environnement de travail Communication Google Mail Courrier électronique Google Talk Audioconférences avec encadrants Google Agenda Prévision des réunions, soutenances, … Réalisation M Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Planning de développement Bibliothèque Algorithmes Réalisation O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Détails des étapes Réalisation Développement Cahier des charges technique Base de la réalisation Utilisation de TinyXML Librairie de lecture/écriture XML 2 500 lignes de code Réalisation O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Détails des étapes Réalisation Tests Tests unitaires En parallèle du développement S’assurer que nos modules fonctionnent Tests d’intégration Vérifier la cohérence entre les modules Recette métier Vérifier la conformité du projet au CDCF Réalisation O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Détails des étapes Réalisation Documentation Code correctement commenté « How to » pour ajouter des algorithmes Générée par Doxygen Réalisation O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Livrables Réalisation Cahier des charges fonctionnel et technique Projet fonctionnel sous Linux/Windows/Mac Sources du projet Programme de test simulant des appels Algorithme exemple Documentation du code Manuel du développeur (« how to ») Réalisation O : Tout a été validé ! Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Difficultés rencontrées Extension du cahier des charges Gestion parallèle des algorithmes Fusion des résultats Report des jalons Tempêtes de neige sur Gaithersburg Audioconférences ajournées Réalisation O Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Conclusion 6 Planning réel Devenir Appréciation S
Planning réel Conclusion ` Proche du planning prévisionnel Phase de développement détaillée Conclusion S Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Devenir Conclusion Poursuite du projet en stage Intégration du projet au NDFS-II Ajout des algorithmes Recherches préalables Implémentation Mise en production Conclusion S Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Appréciation Conclusion Formateur Stimulant Enrichissant Gestion d’un projet complet Relation client Stimulant Projet important pour le NIST Orienté algorithmes de load-balancing Enrichissant Apprentissage du C++ Ouverture sur la recherche Conclusion S Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18/03/2010
Questions ? Merci de votre attention S