Logiciel de Mobile Device Management Soutenance de projet

Slides:



Advertisements
Présentations similaires
LES NOMBRES PREMIERS ET COMPOSÉS
Advertisements

[number 1-100].
Qualité du Premier Billot. 2 3 Défauts reliés à labattage.
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
Produit Gammes Nomenclatures Modules Techniques Prix de Revient Prix de Vente Modules Techniques Client Marges Mise en route Temps Unitaire Prix (Ex:
Page 1 Retour sur le e- tourisme. Page 2 Quelques chiffres…
Licence pro MPCQ : Cours
Distance inter-locuteur
Classe : …………… Nom : …………………………………… Date : ………………..
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
Architecture de réseaux
Initiation et perfectionnement à lutilisation de la micro-informatique Publier des films sur DailyMotion (sur Mac et sur PC) ©Yves Roger Cornil
Systèmes Experts implémentation en Prolog
La diapo suivante pour faire des algorithmes (colorier les ampoules …à varier pour éviter le « copiage ») et dénombrer (Entoure dans la bande numérique.
Plan de formation Chapitre 1 : Présentation de SAP
2 1. Vos droits en tant quusagers 3 1. Vos droits en tant quusagers (suite) 4.
User management pour les entreprises et les organisations Auteur / section: Gestion des accès.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
La domotique, l’habitat et le confort.
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Logiciel de Mobile Device Management
1 Bienvenue! Ministère de lEmploi et de la Solidarité sociale Direction des ressources humaines La conduite dun projet de refonte dun intranet Pascale.
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Présentation générale de MapBruit
Système Expert pour Smartphones
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
ON SQUATTE AUSSI CODING4FUN LIKE A BOSS SQUATTEUR : RUDY HUYN.
le profil UML en temps réel MARTE
Synchronisation et communication entre processus
II. Chaînage, SDD séquentielles
Serveurs Partagés Oracle
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
Bilan du Projet Industriel
Virtual Local Area Network
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
Titre : Implémentation des éléments finis sous Matlab
1 Conduite du changement LA CONDUITE DU CHANGEMENT.
Configuration de Windows Server 2008 Active Directory
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
VOC 1 CE2 Je sais utiliser des mots de la vie quotidienne.
SIDENA BTS IRIS Session 2008 CARME Arnaud.
Réseaux de neurones.
Développement d’application web
@SSR – Installation des applications eduscol.education.fr/securite - février 2007 © Ministère de l'Éducation nationale, de l'Enseignement supérieur et.
2 TP avec l ’aide d ’un modeleur 3D :
1 INETOP
PLD GHome H4214 Piccolo Thomas Gu Lei Deville Romain Huang Yachen
Représentation des systèmes dynamiques dans l’espace d’état
Tournoi de Flyball Bouin-Plumoison 2008 Tournoi de Flyball
Titre : Implémentation des éléments finis en Matlab
Projet de Master première année 2007 / 2008
Tout savoir sur la synchronisation des mails, contacts et calendrier sur Windows Phone Lire cette présentation en mode plein écran.
LA GESTION COLLABORATIVE DE PROJETS Grâce aux outils du Web /03/2011 Académie de Créteil - Nadine DUDRAGNE 1.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
CALENDRIER-PLAYBOY 2020.
Outil de gestion des cartes grises
LES PILES ET FILES.
Projet de stage d’année IIR4 sous le thème:
Architecture Chapitre 4 Interruptions. 2 Plan Principe Schéma d’acquisition Les états d’une interruption Décentralisation des interruptions Exemples.
Les Chiffres Prêts?
1 Formation à l’usage éco-performant de votre pc 1 ère Partie.
Projet Implémentation du protocole MMT sous Linux
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Visualisation d’un entrepôt de données Pré soutenance technique
Transcription de la présentation:

Logiciel de Mobile Device Management Soutenance de projet Manage Yourself Logiciel de Mobile Device Management Soutenance de projet 28 mai 2010 Etienne Alibert Florian Barbedette Pierre Chesneau Mathias Deshayes Sevan Hartunians Mathieu Poignet Encadrant : Laurence Rozé

Introduction Ces dernières années : forte augmentation du nombre de PDA et smartphone Surtout en milieu professionnel Nouveau marché : les applications de mobile device management Gestion de flottes d’appareils mobiles Manage Yourself : logiciel empêchant les appareils mobiles de planter.

Sommaire Présentation du projet Coté embarqué Coté serveur Conclusion Acteurs Contexte Objectifs Coté embarqué Architecture Globale Reporting Système Expert Démonstration Coté serveur Architecture serveur Communications Création du fichier .arff Apprentissage Interface d’administration Compilation .mrf -> .cs Démonstration Conclusion Organisation de travail Difficultés rencontrées Bilan

Présentation du projet Acteurs Contexte Objectifs

Acteurs Equipe DREAM (IRISA) Entreprise Telelogos Equipe de recherche spécialisée dans le diagnostic Entreprise Telelogos Spécialisée dans le middleware Proposant des outils de gestion/synchronisation de flottes d’ordinateur, PC portables et PDA Mediacontact

Contexte Constat : Identification d’un besoin  Développement Augmentation des flottes d’appareils mobiles en entreprise Applications critiques sur PDA Problèmes de maintenance Identification d’un besoin  Développement d’un logiciel concept Contraintes : Windows mobile 6.0 .NET compact framework 3.5

Objectifs 1/2 Diagnostic embarqué Effectuer une surveillance du système Relever l’état du système (processus lancés, niveau de mémoire…) Opérer un diagnostic du système Être transparent à l’utilisateur Apprentissage de règles automatisé (partie exploratoire) Déduire de nouvelles règles Insérer les règles déduites dans la partie diagnostic

Objectifs 2/2 Abonnement Téléchargement Surveillance en ligne Situation non reconnue

Coté Embarqué Architecture Globale Reporting Système Expert Démonstration

Surveillance du Système Architecture Globale Serveur Apprentissage Client Mobile Surveillance du Système (Reporting) Rapports de surveillance Diagnostic (Système Expert) Mise à jour des règles

Reporting 1/3 Vers apprentissage et système expert Rapport de fonctionnement Surveillance continue du système mobile Via coredll.dll et la classe SystemState Vers apprentissage uniquement Rapport de bug

Reporting 2/3 Eléments surveillés (52 en tout) : Périphériques (appareil photo, clavier…) Appels (appels en cours, redirection d’appels…) Batterie (batterie restante…) Mémoire (mémoire vive restante…) Réseaux (connexion wifi, puissance du signal…) Carte SIM (présence d’une carte, mémoire pleine…) Bluetooth (activation, nombre de connexions) Liste des processus Autres (Rotation, profil son, application courante…)

Reporting 3/3 Rapports codés en binaire Gain de place mémoire Ne prend pas beaucoup de place sur le téléphone Permet des transferts plus rapide Transferts plus sécurisés Nécessité de deux outils supplémentaires Encodage au niveau de l’application de surveillance Décodage dans le système expert et sur le serveur

Système Expert 1/4 Application de diagnostic  Système Expert Système constitué de : Base de faits Base de règles Moteur d’inférence (chainage avant) Permet de déduire de nouveaux faits Permet de déclencher des actions correctives Exemple Socrate : Socrate est un homme Tous les hommes sont mortels Donc Socrates est mortel

Système Expert 2/4 Définition d’une grammaire pour les règles Grammaire LL(1) Exemple de règle : SI memoireSaturee = true ET applicationA = true ALORS APPEL correctifA.exe FSI

Diagramme de classe du système expert – première partie

Diagramme de classe du système expert – deuxième partie Penser à parler des opérateurs Diagramme de classe du système expert – deuxième partie

Démonstration Génération de rapports de fonctionnement Règle présente dans le système expert : SI ACLineStatus = 0 ET iexplore.exe = 1 ALORS APPEL correctifA.exe FSI Situation normale Génération de rapports de fonctionnement Diagnostic bon Lancement de Internet Explorer Débranchement du chargeur Diagnostic d’une situation problématique Appel du correctif correspondant Exemple de Rapport : 4294967295,1,True,True,1,False,68595220, …

Coté Serveur Architecture serveur Communications Création du .arff Apprentissage Interface Administrateur Compilation .mrf -> .cs Démonstration

Architecture Serveur Apprentissage Compilateur Base de règles Mrf ->cs Base de règles NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Communications 1/3 Apprentissage Compilateur Base de règles Mrf ->cs Base de règles NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Communications 2/3 IP Fonctionnement de MediaContact Console(s) d’administration PDA IP GPRS, EDGE, UMTS, HSDPA, Wi-Fi, xDSL, RNIS, RTC LAN Serveur(s) de communications Tablette Portable Système point de vente Machine communicante Applications Messagerie Données SI CENTRAL Serveur : Windows 2000 / 2003 Client distant : Windows 2000 / 2003 / XP / Vista Windows CE / Mobile 5.0 - 6.0 Web Gestion multi-réseau Fonctionnement de MediaContact

Communications 3/3 Utilisation de Mediacontact Envoi régulier de rapports de surveillance à l’apprentissage Appel de programme pour concaténer des rapports Mise à jour des règles du système expert

Création du fichier .arff 1/2 Apprentissage Compilateur Mrf ->cs Base de règles NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Création du fichier .arff 2/2 Décodage des rapports binaires Création dynamique de l’entête : type des attributs Concaténation des rapports Une ligne par rapport @ATTRIBUTE BatteryLifeTime NUMERIC @ATTRIBUTE ACLineStatus NUMERIC @ATTRIBUTE CameraPresent {True,False} @ATTRIBUTE KeyboardPresent {True,False} @ATTRIBUTE PhoneActiveCallCount NUMERIC @DATA 4294967295,1,True,True,1 4294967456,1,False,True,1

Apprentissage 1/4 Apprentissage Compilateur Base de règles Mrf ->cs NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Apprentissage 2/4 Objectif : déduire de nouvelles règles à partir des rapports de surveillance remontés Contexte : Apprentissage supervisé (positif/négatif) Pouvoir comprendre les règles pour associer des actions Choix de l’algorithme : Arbres de décision (C4.5) Possèdent un grand pouvoir d’expression Travaillent sur des données bruitées Sont lisible par un humain

Apprentissage 3/4 Apprentissage d’arbres de décisions mémoire saturée normale neg pos ApplicationA lancée nonLancée Nœud ↔ variables Branches ↔ une valeur Feuilles ↔ catégorie Classification d’une instance : parcours de l’arbre Peut être traduit en règles

Apprentissage 4/4 Algorithme ID3 Mémoire normale saturée AppliA Ex Mémoire AppliA étiq e1 Saturée Lancée Pos e2 nonLancée neg e3 Normale lancée e4 Algorithme ID3 Mémoire normale saturée Ex Mémoire AppliA étiq e3 Normale lancée neg e4 nonLancée Ex Mémoire AppliA étiq e1 Saturée Lancée Pos e2 nonLancée neg AppliA lancée nonLancée Négatif Ex Mémoire AppliA étiq e1 Saturée Lancée Pos Ex Mémoire AppliA étiq e2 Saturée nonLancée neg Positif Négatif

Interface d’administration 1/3 Apprentissage Compilateur Mrf ->cs Base de règles NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Interface d’administration 2/3 Seul maillon de la chaine non-automatique Permet de : Lister les règles déjà présentes dans le système expert Lister les règles trouvées par l’apprentissage Entrer de nouvelles règles manuellement Associer des actions aux règles

Interface d’administration 3/3 Panneau principal de l’interface d’administration

Compilation .mrf -> .cs 1/2 Apprentissage Compilateur Mrf ->cs Base de règles NewRules.appr Interface Administration RuleBase.cs Report.arff NewRule.mrf Compilateur C# Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Report.bin Système Mobile

Compilation .mrf -> .cs 2/2 Utilisation de javacc pour la création du compilateur .mrf #Declaration des attributs ATTRIBUT memoire NUMERIC ATTRIBUT memDiscret {normale,saturee,presqueSaturee} ATTRIBUT applicationC {lancee,nonLancee} #Declaration des règles SI memDiscret = saturee ET applicationC=true ALORS APPEL viderMemoire.exe FSI SI memoire < 100 ALORS memDiscret = saturee FSI .cs // beginning of a new rule. (ruleid : 0) List<Condition> lConditions_0 = new List<Condition>(); List<InferenceEngine.Action> lConsequences_0 = new List<InferenceEngine.Action>(); lConditions_0.Add(new Condition(Condition.operators.EQUAL,new LeftOperand(this.kb.registerFact("memDiscret")),new ValueOperand(new Symbol("saturee")))); lConditions_0.Add(new Condition(Condition.operators.EQUAL,new LeftOperand(this.kb.registerFact("applicationC")),new ValueOperand(new Symbol("true")))); //end of conditions for ruleid : 0 lConsequences_0.Add(new ExecuteMethod("viderMemoire.exe")); kb.addRule(new Rule(lConditions_0,lConsequences_0)); //End of rule . Ruleid :0

Démonstration (Saturation de la RAM) Situation problématique Non-détection du problème Plantage d’une application Création du rapport de bug Envoi des rapports Analyse des rapports par l’apprentissage Génération de nouvelles règles Validation et ajout d’un correctif Mise a jour du système expert sur le mobile Situation problématique (Saturation de la RAM) Détection du problème Application du correctif approprié

Conclusion Organisation de travail Difficultés rencontrées Bilan

Organisation de travail Travail en binôme Partage du travail selon les modules Système expert : Pierre et Florian Reporting : Etienne et Mathias Communications et Serveur: Sevan et Mathieu Un chef de projet par phase Pré-étude, spécifications, conception, planification, implémentation, tests

Difficultés rencontrées Plus de difficultés que prévu sur les couches basses du système dues aux spécificités de Windows Mobile Problème de reconnaissance des chaînes avec Javacc L’espace est utilisé comme séparateur Problèmes de connexion au wifi Dus aux paramètres du CRI Nous avons utilisé la liaison USB

Bilan Motivation due au partenariat avec Telelogos Projet Exploratoire Beaucoup de temps investi dans la pré-étude Longues phases de spécification et de conception Phase d’implémentation plus rapide Projet modulaire Plus facile de se répartir les tâches Beaucoup de travail d’intégration Bonne ambiance, bon travail en équipe Au final : Un logiciel concept dont il n’existe pas d’équivalent sur le marché

Questions ? Apprentissage Compilateur Mrf ->cs Base de règles NewRules.appr Interface Administration Report.arff NewRule.mrf Compilateur C# RuleBase.cs Script Concaténation RuleBase.exe InferenceEngine.dll Report.rep Actions Compilateur bin ->rep SE MediaContact Système Mobile Report.bin Reporting Système Expert Report.bin Inférence