P ROJET I NDUSTRIEL Réalisation d ’ une librairie de gestion d ’ algorithmes de répartition de...

Preview:

Citation preview

PROJET INDUSTRIEL

Réalisation d’une librairie de gestion d’algorithmes de répartition de charge

2010

18/03/2010

Réalisation : Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne

Encadrante universitaire : Isabelle ChrismentEncadrants industriels : Antoine Fillinger, Nicolas Crouzier

SOMMAIRE

Présentation

Analyse des besoins

Gestion de projet

Synthèse des

recherches

Réalisation

Conclusion

ESIAL - NIST

Présentation

1 • NIST• Contexte• Exemple d’utilisation

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 4

ESIAL - NIST

NIST

National Institute of Standards and

Technology

PR

ÉSEN

TATIO

N

18/03/2010

G a i t h e r s b u r g , U S A

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 5

ESIAL - NIST

NIST

National Institute of Standards and

Technology

Créé en 1901

Mission officielle :PR

ÉSEN

TATIO

N

18/03/2010

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 6

ESIAL - NIST

NIST

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

ÉSEN

TATIO

N

18/03/2010

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 7

ESIAL - NIST

CONTEXTE

NDFS-II : NIST Data Flow System II

▫Création NDFS-I : 1998 (v1)

NDFS-II : 2003 (v2)

▫Réseau de serveurs

18/03/2010

PR

ÉSEN

TATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 8

ESIAL - NIST

CONTEXTE

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

18/03/2010

PR

ÉSEN

TATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 9

ESIAL - NIST

EXEMPLE D’UTILISATION

Dans une salle de réunion

▫Microphones en entrée

▫Reconnaissance vocale, et

transcription

▫Conversation textuelle en sortie

18/03/2010

PR

ÉSEN

TATIO

N

NDFS-II

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.

ESIAL - NIST

Analyse des besoins

2 • Problématique• Notre mission

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 11

ESIAL - NIST

PROBLÉMATIQUE

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

18/03/2010

PR

ÉSEN

TATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 12

ESIAL - NIST

NOTRE MISSION

18/03/2010

AN

ALY

SE D

ES B

ESO

INS

Plusieurs clients / serveurs

Déplacer un client sur le serveur approprié

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 13

ESIAL - NIST

NOTRE MISSION

Concevoir et développer une

librairie

▫Gestion d’algorithmes de

répartition de charge

▫Multiplateforme

▫C++

18/03/2010

AN

ALY

SE D

ES B

ESO

INS

NDFS-II Notre librairie

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 14

ESIAL - NIST

NOTRE MISSION

18/03/2010

AN

ALY

SE D

ES B

ESO

INS

Algorithme

Notre librairie

NIST

ESIAL - NIST

Gestion de projet

3 • Équipe• Planning prévisionnel• Communication

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 16

ESIAL - NIST

18/03/2010

Chef de Projet

▫ Olivier Versanne

Responsable Qualité

▫ Brice Ambrosiak

Responsable Informatique

▫ Mathieu Lehnhard

Responsable Communication

▫ Stéphane Qin

ÉQUIPE CHARGÉE DU PROJETG

ESTIO

N D

E P

RO

JET

18/03/2010Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 16

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 17

ESIAL - NIST

PLANNING PRÉVISIONNEL

18/03/2010

GESTIO

N D

E P

RO

JET

Intro.

Recherche

Conception Développement

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 18

ESIAL - NIST

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

18/03/2010

GESTIO

N D

E P

RO

JET

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 19

ESIAL - NIST

COMMUNICATION

Réunions

▫Equipe Plusieurs fois par semaine

▫Audioconférence ≈ 2/3 semaines

▫Publication de CR

Courriels Messagerie instantanée

18/03/2010

GESTIO

N D

E P

RO

JET

ESIAL - NIST

Synthèse des recherches

4 • Sources utilisées• Répartition des clients

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 21

ESIAL - NIST

SOURCES UTILISÉES

18/03/2010

SYN

TH

ÈSE D

ES

REC

HER

CH

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

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 22

ESIAL - NIST

RÉPARTITION DES CLIENTS

18/03/2010

SYN

TH

ÈSE D

ES

REC

HER

CH

ES

ESIAL - NIST

Réalisation• Conception• Fonctionnement• Environnement de

travail• Détails des étapes• Difficultés rencontrées

5

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 24

ESIAL - NIST

CONCEPTION

Première étape, suite aux

recherches

Déterminante pour ce projet

▫Flexibilité

▫Adaptabilité

Réunions et discussions avec le

NIST18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 25

ESIAL - NIST

CONCEPTIONR

ÉA

LIS

ATIO

N

18/03/2010

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 26

ESIAL - NIST

FONCTIONNEMENT

18/03/2010

RÉA

LIS

ATIO

N

En attente

InitialisationLibMain(AlgoFusion)

Répartition

balance() : XML

Mise en buffer

updateStats(XML)

Vidage buffer

Lancement algorithmes

Récupération et fusion

des résultats

Algo 1 Algo n

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 27

ESIAL - NIST

ENVIRONNEMENT DE TRAVAIL

Développé et testé sur plusieurs

plateformes

IDE : Code::Blocks Convention de codage

▫Directives « Ellemtel »

▫Laboratoire suédois18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 28

ESIAL - NIST

ENVIRONNEMENT DE TRAVAIL

Versions

▫Tortoise SVN

▫Assembla

(http://www.assembla.com)

18/03/2010

RÉA

LIS

ATIO

N

Dépôt

Chef de projet

Planning

Code

Sources, documentati

on

Conception

Diagrammes classes, flux

Note de cadrage

Présentations Rapports Recherche Réunions

Comptes-rendus

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 29

ESIAL - NIST

ENVIRONNEMENT DE TRAVAIL

Communication

▫Google Mail Courrier électronique

▫Google Talk Audioconférences avec encadrants

▫Google Agenda Prévision des réunions, soutenances, …

18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 30

ESIAL - NIST

PLANNING DE DÉVELOPPEMENT

18/03/2010

RÉA

LIS

ATIO

N

Bibliothèque

Algorithmes

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 31

ESIAL - NIST

DÉTAILS DES ÉTAPES

Développement

▫Cahier des charges technique Base de la réalisation

▫Utilisation de TinyXML Librairie de lecture/écriture XML

▫2 500 lignes de code

18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 32

ESIAL - NIST

DÉTAILS DES ÉTAPES

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

18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 33

ESIAL - NIST

DÉTAILS DES ÉTAPES

Documentation

▫Code correctement commenté

▫« How to » pour ajouter des

algorithmes

▫Générée par Doxygen

18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 34

ESIAL - NIST

LIVRABLES

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 »)

18/03/2010

RÉA

LIS

ATIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 35

ESIAL - NIST

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

18/03/2010

RÉA

LIS

ATIO

N

ESIAL - NIST

Conclusion• Planning réel• Devenir• Appréciation

6

37

ESIAL - NIST

PLANNING RÉEL

`

Proche du planning prévisionnel

▫Phase de développement détaillée

18/03/2010Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne

CO

NC

LUSIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 38

ESIAL - NIST

DEVENIR

Poursuite du projet en stage

▫Intégration du projet au NDFS-II

▫Ajout des algorithmes Recherches préalables

Implémentation

▫Mise en production

18/03/2010

CO

NC

LUSIO

N

Brice Ambrosiak, Mathieu Lehnhard, Stéphane Qin, Olivier Versanne 39

ESIAL - NIST

APPRÉCIATION

Formateur

▫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

18/03/2010

CO

NC

LUSIO

N

ESIAL - NIST

Questions• Merci de votre attention?

Recommended