Solution proposรฉe
Dans le domaine de surveillance de parc informatique les niveaux de performance des solutions ci-dessus citรฉes sont assez rapprochรฉs. Toute fois, les logiciels libres ont acquis une notoriรฉtรฉ et une stabilitรฉ indiscutable.
Pour cette raison, La solution envisagรฉe par Mindware se caractรฉrise sa licence opensource et sa facilitรฉ dโinstallation et dโutilisation. Pour sa premiรจre version, elle sera destinรฉe aux petites et moyennes entreprises et proposera dans sa version de base une fonctionnalitรฉ Helpdesk avec possibilitรฉ dโutilisation dโoutil de contrรดle ร distance Avant de commencer la description dรฉtaillรฉe de la solution, un petit aperรงu sur la sociรฉtรฉ hรดte de mon stage sโimpose.ย Description de MindWare Mon stage de fin dโรฉtude a รฉtรฉ effectuรฉ au sein de la sociรฉtรฉ MindWarequi a รฉtรฉ crรฉe en Avril 2010 par M. Adil ZEAARAOUI en association avec lโuniversitรฉ Mohammed 1er, MindWare est la premiรจre start-up crรฉe par la dite universitรฉ. MindWare siรจge ร lโintรฉrieur mรชme du complexe universitaire et plus prรฉcisรฉment en plein centre de lโEcole Nationale des Sciences Appliquรฉes dโ Oujda (ENSAO).
Ce statut confรจre ร MindWare le soutien et le parrainage de lโuniversitรฉ Mohammed 1er et lui offre une place privilรฉgiรฉe tout prรชt du corps enseignant, des รฉtudiants et des laurรฉats de lโENSAO.
Domaines dโintervention
MindWare offre une gamme de services trรจs variรฉs et axรฉs sur deux pรดles
Edition des logiciels
MindWare offre ร ses clients lโopportunitรฉ de crรฉer des applications spรฉcifiques rรฉpondant exactement ร leurs besoins et ร leurs rรจgles de gestion. Aussi, MindWare propose ร ses clients la maintenance et la mise ร niveau de leurs applications de gestion dรฉjร en production.
Les technologies utilisรฉes par MindWaresโรฉtale sur un large spectre de choix : Technologie : OOA/D, JEE et les Framework (Struts2, JPmapper,hebernate…), PHP5 et Framework (Zend FM),Python, XML,Jquery, Ajax SGBD: Oracle, MySQL, Postgresql
Ingรฉnierie rรฉseau et systรจme
MindWare propose ร ses clients lโinstallation et la configuration de leurs rรฉseaux mono site et multi site. Pour cela, MindWare couvre un large spectre de technologies : Rรฉseaux et configuration : routeur, passerelle, firewall, proxy, contrรดleur de domaine, monitoring, messagerie, VPN, serveur dโimpression Solution VoIP: on travaille sur Asterisk Plateforme: linux/Unix (Debian/FreeBSD), Windows.
Mรฉthodologies du travail
La technique suivie lors de lโรฉlaboration de nโimporte quel projet au sein de MindWare est une technique basรฉe le travail en groupe et inspirรฉe de la mรฉthodologie UP (Unified Process) ou itรฉrative incrรฉmentale qui consiste ร diviser le projet en parties et pour chaque partie on effectue les รฉtapes suivantes:
– Analyse gรฉnรฉrale.
– formation sur les technologies.
– Analyse dรฉtaillรฉe.
– Conception du projet.
– Rรฉalisation des tests.
– Validation.
Analyse gรฉnรฉrale
Consiste ร comprendre le projet dans lโensemble en rรฉalisant une รฉtude prรฉliminaire en se focalisant sur les demandes des clients et faire la collecte des informations. Dans cette รฉtape, une analyse du marchรฉ avec une comparaissant des diffรฉrentes solutions existantes est rรฉalisรฉe. A lโissue de cette รฉtape une idรฉe gรฉnรฉrale prend forme et qui constituera la base de tout le projet.
Analyse dรฉtaillรฉe
Cette รฉtape se base sur les exigences du client pour une bonne implรฉmentation du cahier des charges avec gรฉnรฉration des cas dโutilisation. Dans cette รฉtape une รฉtude technique des technologies et outils ร utiliser est rรฉalisรฉe. Cette รฉtape est trรจs importante pour le bon dรฉroulement des รฉtapes suivante cโest pour cela que MindWare lui alloue le dรฉlai et les ressources nรฉcessaires.
A la fin de cette รฉtape, lโรฉquipe de dรฉveloppement est constituรฉe et les taches sont rรฉparties entre ses membres.
Formation sur les technologies
Aprรจs la constitution de lโรฉquipe de dรฉveloppement, une formation est rรฉalisรฉe par le chef de projet aux nouveaux membres. Cette formation a comme objet les technologies choisies lors de lโรฉtape prรฉcรฉdente et qui seront utilisรฉes dans le dรฉveloppement de la solution.
Le dรฉlai imparti ร cette รฉtape est proportionnel ร la difficultรฉ et la complexitรฉ des outils ร utiliser et en fonction la nouveautรฉ de ces outils pour les membres de lโรฉquipe de projet.
Conception du projet
En utilisant la mรฉthodologie UML une analyse conceptuelle est rรฉalisรฉe avec la participation de toute lโรฉquipe de projet. En utilisant le logiciel ยซ Entreprise Architect ยป, Dans cette รฉtape les diffรฉrents scรฉnarios sont cataloguรฉs et modรฉlisรฉs sous forme de diagrammes de sรฉquences.
En suite, le diagramme de classes est รฉlaborรฉ et affinรฉ ร plusieurs reprises. En fin et aprรจs une multitude de rรฉunions le chef de projet valide les diffรฉrents diagrammes un planning de dรฉveloppement est mis en place.
Dรฉveloppement et tests
Le dรฉveloppement de lโapplication est rรฉparti par le chef de projet sur lโรฉquipe de dรฉveloppement et suit le planning dressรฉ dans la phase prรฉcรฉdente. A la fin de chaque semaine une rรฉunion est faite et chaque membre de lโรฉquipe prรฉsente sa rรฉalisation.
A la fin de la rรฉunion les tรขches correctement rรฉalisรฉes sont validรฉes par le chef de projet et celles prรฉsentant des problรจmes reportรฉes ร la rรฉunion suivante.
Analyse fonctionnelle dรฉtaillรฉe du projet MindWare Remote, Monitoring and control (MRMC)
MRMC est un logiciel client/serveur full web qui est en cours de rรฉalisation au sein de MindWarepour rรฉaliser la surveillance et le control distant dโun rรฉseau.
Cette application sera intรฉgrรฉe en finalitรฉ dans un ERP qui englobe un ensemble de module. MindWare espรจre par le biais de cet ERP de couvrir lโensemble ou du moins une grande partie des processus de gestion dโune entreprise. Les modules en cours de dรฉveloppement sont :
โข Gestion de parc informatique (MRMC).
โข Gestion de messagerie รฉlectronique.
โข Gestion comptable.
โข Gestion commerciale.
โข Gestion รฉlectronique de document.
โข Gestion de courrier.
โข Gestion de clientรจle.
Dans ce chapitre jโessaierai dโexpliquer, indรฉpendamment des technologies utilisรฉes, les fonctionnalitรฉs que MindWare envisage intรฉgrer dans MRMC. Pour cette version initiale, ces fonctionnalitรฉs sont divisรฉes en trois grandes parties.
Gestion dโassistance
La gestion des incidents dans toute entreprise est un composant primordial dans la stratรฉgie des รฉquipes techniques. En effet, plus la taille du parc informatique est grande plus sa gestion est complexe et plus la satisfaction des demandes dโassistance devient difficile. MRMC รชtre capable de gรฉnรฉrer des demandes assistance automatique basรฉes sur les alertes et erreurs dรฉtectรฉes et remontรฉes dans la phase supervision, ainsi que la crรฉation des demandes dโassistance par les utilisateurs des machines et destinรฉes ร lโรฉquipe technique.
La satisfaction des demande dโassistance pourra รชtre rรฉalisรฉe soit par confรฉrence audio, soit par chat, soit par prise de contrรดle ร distance ou dans le cas รฉchรฉant en se dรฉplacement vers le lieu dโincident MindWare envisage dans un premier niveau intรฉgrer une gestion de ticket de demande dโassistance destinรฉ aux techniciens et dont le suivi est automatisรฉ par lโapplication.
Tableau de bord
Dans une application de gestion de parc informatique dont le nombre dโรฉquipement est assez grand, le suivi des machines, une par une, est trรจs complexe et nรฉcessite des efforts de synthรจse pour dresser une vue gรฉnรฉrale de lโรฉtat du rรฉseau, dโoรน la nรฉcessitรฉ dโun tableau de bord.
MRMC devra รชtre capable de dresser un tableau de bord synthรฉtisant lโรฉtat global du parc informatique et devra aussi avoir la capacitรฉ de filtrer les statistique en fonction dโune machine spรฉcifique du rรฉseau voir une durรฉe ou une date prรฉcise.
Modรฉlisation du MRMC
Choix dโUML
Comme le projet sera basรฉ sur lโarchitecture J2EE, UML a รฉtรฉ choisi comme langage de modรฉlisation, car la notation UML est la plus appropriรฉe pour des projets orientรฉ objets. Ce choix peut รชtre justifiรฉ รฉgalement par plusieurs raisons :
โข La notation UML facilite la comprรฉhension et la communication dโune modรฉlisation objet.
โข UML est aujourdโhui un standard, adoptรฉ par les grands constructeurs de logiciel du marchรฉ.
Trois acteurs majeurs (GradyBooch, Ivar Jacobson et Jim Rumbaugh) se sont regroupรฉs au sein de la sociรฉtรฉ Rational pour dรฉfinir le langage unifiรฉ UML (UnifiedModeling Language) La notation UML a รฉtรฉ conรงue pour servir le langage de modรฉlisation objet, indรฉpendamment de la mรฉthode de mise en ลuvre. MindWare utilise le logiciel Entreprise Architect pour la crรฉation des diagrammes UML. Ce logiciel lui confรจre une souplesse et un certain niveau de professionnalisme dans cette รฉtape du projet.
Acteur serveur
Cet acteur reprรฉsente le moteur dโapplication du systรจme qui supervise la globalitรฉ du parc informatique. Lโacteur serveur sera en charge des tรขches suivantes: identifier les machines du parc, sauvegarder les informations de ces derniรจres ainsi que la dรฉtection des erreurs et des alertes du parc.
Identification des machines (identify machine)
En fonction dโun intervalle paramรฉtrable par lโacteur administrateur, le serveur doit identifier chaque machine supervisรฉe et doit vรฉrifie sont รฉtat connectรฉ ou non. Si la machine est connectรฉe, le serveur pourra vรฉrifier plusieurs paramรจtres comme par exemple la version de lโagent installรฉ.
Sauvegarde dans la base de donnรฉes (store machine info into DB)
Aprรจs que le client installe lโagent, il pourra envoyer ses donnรฉes techniques au serveur pour que ces informations soient sauvegardรฉes dans la base de donnรฉes. Ces donnรฉes constituent lโรฉtat de la machine dans un instant donnรฉ.
Avant chaque enregistrement de lโรฉtat dโune machine, une vรฉrification de son existence prรฉalable est rรฉalisรฉe. Si la machine a envoyรฉ son รฉtat pour la premiรจre fois un nouveau enregistrement de machine est crรฉe.
Dรฉtection des alertes et des erreurs (detect warning and error)
Selon un intervalle dรฉfini par lโacteur administrateur, le serveur doit dรฉtecter les alertes ainsi que les erreurs existantes dans les diffรฉrentes machines du rรฉseau. Ces alertes et erreurs sont configurรฉes par lโadministrateur et sont en relation avec lโรฉtat des composants constituant les machines surveillรฉes.
Ces alertes et erreurs peuvent รชtre dรฉtectรฉes aussi lors de lโenvoi de lโรฉtat des machines supervisรฉes.
Diagrammes de sรฉquences
Les diagrammes de sรฉquences sont la reprรฉsentation graphique des interactions entre les acteurs et le systรจme selon un ordre chronologique dans la formulation ยซ Unified Modeling Language ยป, on y met l’accent sur la chronologie des envois de messages.
La dimension verticale du diagramme reprรฉsente le temps, permettant de visualiser l’enchaรฎnement des actions dans le temps, et de spรฉcifier la naissance et la mort d’objets. Les pรฉriodes d’activitรฉ des objets sont symbolisรฉes par des rectangles, et ces objets dialoguent par le biais de messages.
Client
Scรฉnario1
Dans ce scรฉnario le client est sensรฉ tรฉlรฉcharger lโapplication cliente pour faire partie du rรฉseau (pour que ce dernier soit surveillรฉ par le serveur), une fois le tรฉlรฉchargement effectuรฉ, le serveur identifiera cette machine et vรฉrifie son adresse MAC et IP, a` ce moment l`a lโextraction des donnรฉes en local est activรฉe.
|
Table des matiรจres
Contexte gรฉnรฉral du projetย
Chapitre 1
Etude de marchรฉ et fonctionnelleย
1.1 Etude concurrentielle de marchรฉ
1.1.1 Solutions opensource
1.1.2 Solutions commerciales
1.1.3 Critique des solutions
1.1.4 Solution proposรฉe
1.2 Description de MindWare
1.2.1 Domaines dโintervention
a) Edition des logiciels
b) ingรฉnierie rรฉseau et systรจme
1.3 Mรฉthodologies du travail
1.3.1 Analyse gรฉnรฉrale
1.1.1 Analyse dรฉtaillรฉe
1.1.2 Formation sur les technologies
1.1.3 Conception du projet
1.1.4 Dรฉveloppement et tests
1.4 Conclusion
Chapitre 2
Analyse fonctionnelle dรฉtaillรฉe du projet MindWare Remote, Monitoring and control (MRMC)
2.1 Premiรจre partie : Supervision de parc informatique
2.1.1 Gestion de lโinventaire
2.1.2 Gestion des alertes et erreurs
2.2 Deuxiรจme partie : Gestion dโassistance
2.3 Troisiรจme partie : Tableau de bord
2.4 Conclusion
Chapitre 3
Modรฉlisation du MRMCย
3.1 Choix dโUML
3.2 Les cas dโutilisation (Use case)
3.2.1 Acteur client
a) Envoi de lโรฉtat de la machine
b) Tรฉlรฉchargement de lโagent client
c) Mise ร jour de lโagent client
3.2.2 Acteur serveur
a) identification des machines (identify machine)
b) Sauvegarde dans la base de donnรฉes (store machine info into DB)
c) Dรฉtection des alertes et des erreurs (detect warning and error)
3.2.3 Acteur Administrateur
a) Authentification (log in)
b) Liste des machines (list machines)
c) Etat de la machine cliente (client state)
d) Afficher lโรฉtat de la machine cliente (get machine detail info)
e) Extraire les informations de la machine (Extract information)
f) Dรฉfinir intervalle (Set timer)
g) Tรฉlรฉcharger lโagent vers le client (upload new jar) _
h) Liste des alertes et erreurs des machines (list machine warning error)
3.3 Diagrammes de sรฉquences
3.3.1 Client
Scรฉnario1
Scรฉnario2
3.3.2 Serveur
3.3.3 Administrateur
3.4 Diagramme des classes
3.4.1 package ยซ machineยป
3.4.2 Package surveillance
3.4.3 Package assistance ยซ helpDeskยป
3.5 Conclusion
Chapitre 4
Etude technique du projet
4.1 Outils, langages et technologies utilisรฉs
4.1.1 Plateforme de dรฉveloppement : JEE
4.1.2 Editeur de dรฉveloppement : Eclipse
4.1.3 Le serveur dโapplication Tomcat
4.1.4 Le langage JAVA
4.1.5 La technologie Java ServerPages (JSP)
4.1.6 Les Servlet
4.1.7 Le Framework Struts2
4.1.8 JPMapper
4.1.9 La bibliothรจque SIGAR
4.1.10 Le langage XML
4.1.11 Dom4j
4.1.12 Le langage XPATH
Exemple
4.1.13 Le langage JavaScript
La technologieAJAX
La bibliothรจque Jquery
La librairie jqPlot
4.1.14 Bibliothรจque bureau ร distance (jrDesktop)
4.1.15 Mรฉthodologie ducodage: TechniqueMVC
4.1.16 SVN
4.2 Utilisation des technologies dans MRMC
4.2.1 Le dรฉpรดt SVN
4.2.2 Arborescence du projet Agent/JEE/ MVC
4.2.3 Agent MRMC
4.2.4 Console dโadministration web
4.3 Dรฉveloppement de la solution MRMC
4.3.1 Dรฉveloppement de lโagent MRMC
4.4 Conclusion
Chapitre 5
Prรฉsentation de MRMC
5.1 Prรฉsentation de lโagent
5.1.1 Installation
5.1.2 Demande dโassistance
5.2 Prรฉsentation de la Console dโadministration
5.2.1 Authentification
5.2.2 Supervision du parc
5.2.3 Paramรฉtrage des alertes et erreurs
5.2.4 Gestion de lโassistance aux utilisateurs
5.2.5 Tableau de bord
5.3 Critique et perspective de la solution
5.3.1 Fonctionnalitรฉs de lโagent
5.3.2 Fonctionnalitรฉs de la console dโadministration
5.4 Conclusion
Chapitre 6
Conclusion gรฉnรฉraleย
Rรฉfรฉrencesย
Annexesย
Struts2
Installation et Configuration
Le fichier xml Struts.xml
Les actions
JPMapper
Installation et Configuration
Remarque
Dom4j
Installation et Configuration
MySQL
Enterprise Architect
Pencil
Tรฉlรฉcharger le rapport complet