Home
ESIEE I5FR - Projet Fil Rouge 2009 - 2010
Contents
1. Page 38 62 C GWA ESIEE tats Unis FCC 116 5580 Japon Europe ETSI 120 5600 12 2467 124 5620 Japon Europe ETSI 128 5640 13 2472 132 5660 Japon uniquement 14 2484 136 5680 140 5700 149 5745 153 5765 157 5785 161 5805 165 5825 Remarque En pratique le balayage des cellules proximit se fait plus rapidement si la station n est connect e aucun AP C est pourquoi le programme regarde si la station est connect e et le cas ch ant affiche un message qui conseille de se d connecter Page 39 62 C C GWA ESIEE 11 4 4 3 Export XML GWA permet d exporter a la fin d une campagne toutes les informations collect es Le format d export est XML eXtensible Markup Language C est un langage de balisage g n rique L avantage de ce format est qu il sera simple de l importer dans d autres logiciels pour traiter plus finement les r sultats par exemple Voici un exemple volontairement raccourci d un fichier export par GWA lt Resultats gt lt Batiment gt lt id gt 2010 3 17 16 31 17 274988 lt id gt lt nom gt beaubatiment lt nom gt lt x gt 0 lt x gt lt y gt 0 lt y gt lt realwidth gt 1000 000000 lt realwidth gt lt realheight gt 1000 000000 lt realheight gt lt Batiment gt lt Salle gt lt id gt 2010 3 17 21 53 13 215040 lt id gt lt nom gt 2400 lt nom gt lt description gt lt x gt 0 lt x gt lt y gt 0 lt y gt lt z gt 0 lt z
2. HH Page 31 62 Coma ESIEE Ceci revient a r soudre 3 m 0 1 n 0 ay BER Le vecteur 7 a pour composante d d eX Fa D D xX X De mani re g n rale pour tout point a origine d un rep re local de composante y nous appliquerons un vecteur de translation T de la forme suivante Ce vecteur est appliquer aux diff rents points appartenant au rep re local en question En appliquant le vecteur de translation aux points a b et c nous avons le r sultat suivant en vert Page 32 62 Coma ESIEE Rotation Comme expliqu plus haut la matrice de rotation a pour but de tourner un ensemble de points dans un systeme de coordonn es Effectuer une rotation a un point revient a multiplier ses coordonn es par une matrice de rotation nous allons utiliser une matrice de rotation sur 2 dimensions no Sec sm cos Si l on reprend l exemple pr c dent nous avons le graphique suivant Las soir ado on do o a o dnd al A ttes ol ll ppp pr eg Las s gt Arado ao E do add Ad do a os de A pr pr pp pp bel Nos points a b et c ont pour coordonn es de do ua Sec sin cos 37 f Ici 0 SCH Cet angle nous permet de faire concorder les axes du rep re local en vert au rep re global en noir Page 33 62 C C GWA ESIEE Nous appliquons la matrice de rotation aux diff rents points du rep re local de la mani re suivante cos sin X
3. R X avec R X repr sente les coordonn es de l ancien point et X les sin cosd coordonn es du nouveau point 37 Am 37 cos Sin len sin 1 b R b 2 2 2 3m 3a 37 0 sin COS cos 2 2 2 37 COS sin _1 cos 0 c R c 2 3z 0 3m 1 sin cos sin 2 2 2 En repr sentant nos r sultats sur le graphique en rose nous voyons que le nouveau rep re obtenu est bien en concordance avec notre rep re global Cette matrice doit tre appliqu e tous les points appartenant au rep re local Page 34 62 ESIEE Le rep re local est maintenant en concordance avec notre rep re global En r alisant locaux nous pourrons comparer les eres ts rep diff rentes valeurs obtenues l aide de notre programme H eren tions pour nos diff H emes opera A les m Page 35 62 Coma ESIEE 11 4 4 Nouvelles fonctionnalit s 11 4 4 1 G olocalisation Pour impl menter les diff rentes op rations relatives la g olocalisation nous avons utilis numpy Numpy est une extension du langage de programmation Python destin e a manipuler des matrices ou des tableaux multidimensionnels Cette extension va donc nous permettre de r aliser nos diff rents calculs savoir la translation et la rotation Nous avons donc d finit une m thode changementRepere qui a pour but de calculer et retourner les nouvelles coordonn e
4. 62 C C GWA ESIEE 1 4 2 Code et base de donn e T ches d ja r alis es e D coupage du programme en diff rents fichiers e Cr ation de la base de donn es des tables et des champs Probl mes e Code non modulaire d coup en 1 fichier par boite de dialogue o Fonctions r p t es dans le code de plusieurs pages o IHM cod e directement en Python et non partir des sources d IHM e Probl mes d indentation de certaines parties du code e Pas de fonction de suppression impl ment e pour supprimer des l ments de la base 1 4 3 Documentation T ches d j r alis es e R daction d un manuel expliquant le fonctionnement du programme e Rapport et pr sentation Probl mes e Code non comment Page 11 62 C ows ESIEE 1 5 Expression des besoins 1 5 1 Fonctions indispensables e F1 Acquisition des mesures d analyse de puissance Wi Fi e F2 Tests de d bits bas s sur Iperf e F3 Cartographie de couverture e F4 Utilisation sur un ordinateur portable avec un OS Linux e F5 Stockage des r sultats dans une base de donn es 1 5 2 Fonctions importantes e F6 Fonction de translation des mesures d une salle dans le plan d un b timent e F7 Export XML des donn es e F8 Structure modulaire du logiciel e F9 Documentation e F10 Faciliter la transmission du projet 1 5 3 Fonctions suppl mentaires e F11 Installation facile e F12 Ergonomie du logiciel e F13 Clef U
5. Coma ESIEE III Conclusion 11 1 Conclusion technique et humaine Ce projet nous a permis de r aliser vrai projet de d veloppement logiciel Nous avons ainsi pu am liorer nos comp tences en gestion de projet gestion des plannings r partition des taches et d couvrir des outils de d veloppement collaboratifs SVN plateforme GoogleCode Nous avons galement am lior nos comp tences en langage Python Humainement ce projet nous a permis de d couvrir le travail en quipe et de voir l importance de la communication entre les membres pour la bonne r alisation du projet Nous sommes heureux d avoir pu contribuer au d veloppement d un logiciel open source amen voluer l ESIEE Il peut dors et d j tre utilis par tout un chacun afin d tablir la couverture Wi Fi de son domicile Il se positionne sur un segment de march totalement libre et pourrait donc d ici quelques ann es devenir un logiciel tr s populaire 11 2 Axes de d veloppement futurs GWA tant destin poursuivre son d veloppement les ann es suivantes des axes de d veloppements peuvent tre dessin s pour les futures versions Carte thermique du d bit et mix puissance d bit Les mesures de puissance Wi Fi sont repr sent es la fin de la campagne sous forme de carte thermique Il serait int ressant par la suite d impl menter la m me chose pour les mesures de d bit ainsi que produire une cartographie m lant les donn es d
6. Copions le r pertoire qui contient les fichiers dans notre r pertoire de travail toto mercure projet GWAS mv pagesui Projet_final Il faut maintenant signifier a SVN que des nouveaux fichiers ont t ajout s au projet tape non n cessaire lors d une modification d un fichier existant toto mercure projet GWAS svn add Projet_final pagesui A Projet_final pagesui A Projet_final pagesui page4 ui A Projet_final pagesui page3 ui A Projet_final pagesui page9 ui A Projet_final pagesui page1 ui A Projet_final pagesui page6 ui A Projet_final pagesui page2 ui A Projet_final pagesui page8 ui Page 19 62 C ows ESIEE A Projet_final pagesui page5 ui A Projet_final pagesui page7 ui Une tape importante avant toute mise a jour du d p t toujours faire un update de son r pertoire de travail local toto mercure projet GWAS svn up la r vision 17 Une fois cette tape effectu e on peut faire un commit vers le d p t SVN toto mercure projet GWAS svn ci m un message indiquant ce que vous avez fait Ajout Projet_final pagesui Ajout Projet_final pagesui pagel ui Ajout Projet_final pagesui page2 ui Ajout Projet_final pagesui page3 ui Ajout Projet_final pagesui page4 ui Ajout Projet_final pagesui page5 ui Ajout Projet_final pagesui page6 ui Ajout Projet_final pagesui page7 ui Ajout Projet_final pagesui page8 ui Ajout Projet_final pagesui page9 ui Transmission des donn es R vision 18 p
7. galement de localiser tous les points d acc s audibles et indique leurs configurations et parametres de s curit Il existe galement une version payante Ekahau Site Survey plus avanc e Qu Ekahau HeatMapper Avantages e Gratuit e Audit de s curit des AP Inconv nients e OS Windows uniquement Page 9 62 Coma ESIEE Au vu de ces logiciels concurrents on peut en d duire qu il n en existe aucun sur le segment vis par GWA c est dire un outil l ger libre et gratuit et qui fonctionne sous Linux Ce logiciel dispose donc d un march et pourrait devenir un logiciel tres populaire dans les ann es a venir 1 4 Bilan de Pexistant Notre projet consiste continuer le travail effectu sur GWA par l quipe d tudiants de l ann e pr c dente Nous avons donc du prendre en main leur travail et faire un bilan pour pouvoir d finir les t ches r aliser 1 4 1 IHM et fonctions du logiciel T ches d j r alis es e R cup ration et pr sentation sur une carte des mesures de puissance e R cup ration des mesures de d bits e IHM du logiciel Probl mes e R solution de IHM trop importante pour l utilisation sur un ordinateur portable fen tres taille fixe e Pas de sources des fichiers d IHM fournies e Codage directement dans les fichiers Python g n r s partir des sources de l IHM e Fonction d export XML non impl ment e Page 10
8. galement proc d a une batterie de test sur le programme afin de valider toutes les fonctions dans tous les cas de figure v rifiant ainsi le bon fonctionnement et la stabilit du programme Page 44 62 Cows ESIEE IL 4 7 Distribution Afin de faciliter la distribution de GWA nous avons choisit de proposer 2 modes diff rents le packaging Debian et la Clef USB 1 4 7 1 Packaging Dans le cadre du d ploiement de GWA nous avons cr un paquet debian pour simplifier son installation Ce paquet permet de s assurer que toutes les d pendances n cessaires au bon fonctionnement de GWA sont install es sur le syst me d installer le logiciel et de configurer la base de donn es La finalit tant dans un premier temps d int grer le paquet sur un d p t non officiel de mani re l installer via apt et enfin pour plus tard de l int grer aux d p ts officiels debian ubuntu Cette derni re tape tant tres compliqu car pour tre accept dans les d p ts officiels le paquet doit respecter un certain nombre de regles tres strictes Dans ce qui suit nous allons d tailler assez simplement comment r g n rer le paquet mais il faut savoir que le packaging debian est quelque chose de tres sensible et pas forc ment tr s simple a appr hender En effet il est possible de casser un syst me avec un paquet mal concu C est pour ca qu apres avoir lu un peu cette partie nous vous recommandons si vous n avez jamais pr
9. me sens que les axes du rep re global Pour simplifier nos calculs le rep re global reste toujours le m me quelque soit le b timent c est dire que l orientation des axes de ce rep re sera inchang e et l origine du rep re global aura pour coordonn es 0 O 0 De plus l orientation de l axe z ne sera jamais modifi e pour les rep res locaux et sera donc identique celle du rep re global Le fait de ne pas modifier l orientation de l axe z simplifie nos calculs et nous permet d effectuer nos op rations en 2 dimensions Enfin nous utiliserons la m me chelle dans nos diff rents rep res ceci nous vitera d avoir utiliser une matrice de mise l chelle Page 30 62 GWA ESIEE 11 4 3 3 Op rations Translation Un vecteur de translation est utilis pour ramener le point d origine d un rep re local aux coordonn es du point d origine du rep re global Prenons un exemple Le graphique suivant pr sente un rep re orthonorm global en noir dont l origine est le point o un autre rep re dont l origine est a est repr sent en bleu Ici nous voulons ramener le point a aux coordonn es du point o Nous avons les coordonn es suivantes 3 3 2 _ m a i b gt d i et nous recherchons les composantes du vecteur T n Nous cherchons appliquer au point a un vecteur de translation dont les composantes sont d termin es l aide des quations suivantes
10. tant que suivre les indications d une Interface Utilisateur on ne d taillera pas cette partie 2 Extraction et personnalisation du filesystem Le filesystem d une liveUSB comme un liveCD est contenu dans le fichier filesystem squashfs Mount dev sdc1 tmp usb Pour personnaliser le filesystem il faut pouvoir le monter pour l explorer le modifier et se chrooter dedans Pour cela on va le monter et comme squashfs est un syst me de fichiers en lecture seule on va copier son contenu afin de pouvoir le modifier Mount o loop t squashfs tmp usb casper filesystem squashfs squashfs Cp aR squashfs custom Cd Cp etc hosts etc resolv conf etc Chroot Nous voila maintenant dans le filesystem qui sera contenu dans la cl Toutes les op rations suivantes prendront effet non pas sur notre systeme de d veloppement mais sur le futur filesystem de la cl USB C est ici que l on va installer supprimer des paquets ou encore cr er certains fichiers Page 49 62 Cows ESIEE mount t proc none proc mount t sysfs none sys export HOME root apt get remove purge liste des paquets a supprimer apt get install liste des paquets a installer wget sources de GWA Avant de fermer le chroot dans l tat souhait pour la cl USB on va le nettoyer un peu Rm rf tmp Apt get clean Rm f etc hosts etc resolv conf Exit Nous revoila maintenant dans notre systeme de d veloppement Nous a
11. ago issue 5 Problems with provided Ul Status changed by scanchon Okay for Page9 Status Fixed E 23 hours ago issue 4 Some Windows created with QT will not be reziseable Status changed by scanchon Ok for Page9 Issue closed Status Fixed Yesterday 25 hours ago r194 Page10 now MVC committed by scanchon Page10 now MVC 25 hours ago 1193 Page2 and 3 really Okay committed by scanchon Page2 and 3 really Okay e un gestionnaire de bugs issues tracker Oo A Geographical Wireless Analyzer Project Home Downloads Wiki Issues Source Administer New issue Search Openissues for Advanced search Search tips Tip Type for issue tracker keyboard shortcut help hide Select All None Actions y IDY Type Status Priority e Milestone v Owner Summary Labels 6 Defect Started High fbagard Chargement des pages Ei 8 Defect Started High BeanMachi Problem with page4 Ww 9 Enhancement New Low ee BeanMachi Add a button to delete saved plan rooms Usability Ei 11 Enhancement New Low BeanMachi Make dialogBox for errors 13 Defect Accepted Medium f bagard Page3 description is not saved 15 Enhancement Accepted Medium scanchon Page4 modification 16 Enhancement Accepted High scanchon Performs some check before start Page 21 62 e un wiki pour la documentation gwa Search projects A Geographical Wireless Analyzer Project Home Downloa
12. cela il faut se mettre a la racine du paquet et lancer la commande debuild no lintian sai user mercure projet packaging GWA gwa 0 30 debuild no lintian sa This package has a Debian revision number but there does not seem to be an appropriate original tar file or orig directory in the parent directory expected gwa_0 30 orig tar gz or gwa 0 30 orig continue anyway y n y dpkg buildpackage rfakeroot D us uc sa Ly dpkg deb construction du paquet e gwa dans e gwa_0 30 2_i386 deb dpkg genchanges sa gt gwa_0 30 2_i386 changes dpkg genchanges inclusion du code source original dans l envoi upload dpkg buildpackage envoi complet paquet Debian natif inclusion du code source complet Now signing changes and any dsc files signfile gwa_0 30 2 dsc S bastien CANCHON canchons esiee fr gpg S bastien CANCHON lt canchons esiee fr gt a t ignor la cl secr te n est pas disponible gpg stdin clearsign failed la cl secr te n est pas disponible debsign gpg error occurred Aborting debuild fatal error at line 1250 running debsign failed On a une erreur ce qui est normal car nous n avons pas de signature gpg officielle Page 47 62 C ows ESIEE On v rifie ensuite que notre paquet gwa_0 30 1_ i386 deb a bien t cr dans le r pertoire parent de celui ou l on est actuellement user mercure projet packaging GWA gwa 0 305 ls gwa_0 30 1_i386 bu
13. commencer par pr senter plus en d tail le projet son contexte les besoins du client et les probl matiques associ es Dans une seconde partie nous pr senterons la solution que nous avons propos e pour r pondre aux besoins du client Page 5 62 rom ESIEE I Pr sentation du projet 1 2 But et enjeu du projet Le but du projet de fin d ann e d I5FR projet Fil Rouge 2010 est de continuer le d veloppement du logiciel d analyse de couverture Wi Fi GWA initi par les tudiants d I5FR en 2009 l ESIEE Paris L enjeu de ce projet est de reprendre en main le d veloppement d ja r alis d velopper de nouvelles fonctions et am liorer le code et la documentation du programme afin que le projet puisse tre repris tr s facilement l ann e prochaine par les prochains tudiants et continuer le programme sur des bases saines 1 1 Qu est ce que GWA GWA pour Geographical Wireless Analyser est un logiciel ayant pour but d analyser la couverture Wi Fi d un b timent L objectif est de faire une cartographie de la couverture pr sentant le niveau de puissance re ue en chaque point d un b timent Cette carte permettra par la suite de pouvoir optimiser la couverture en d pla ant ou en ajoutant des bornes afin d obtenir la couverture souhait e GWA est un logiciel open source cod en Python destin aux OS de type Linux Ce logiciel est d velopp dans le cadre d un projet de fin d ann e pour les tudiant
14. det nan donne eee is 45 11 4 8 Documentation du rara dai 51 LS Diagramme de PERT s cseivecesdus cosmesticnsesunavddelgeseduendideuecan Wecdosnnd cabenneneacnedea vesnuntbevaenanavenigied 55 MS Diagramme de CANTE arriba idad 56 Mi AA o E A q 57 11 8 Probl mes Tecos rai 58 1 8 1 Planificatio rai A 58 A A 58 MR O 59 ULT Conclusion technique et humaine OE 59 111 2 Axes de d veloppement futurs iii 59 IMs ANNEXES eo PEGO PEO RA 61 MT SEUS TIQUES 0 A A a 61 N2 Manuel d Or neo need 62 Page 3 62 C GWA ESIEE Remerciements Nous tenons tout d abord remercier M Olivier Cayrol ainsi que M S bastien Panel pour l aide qu ils nous ont apport durant la r alisation de ce projet Nous remercions galement M Daniel Courivaud notre client pour sa disponibilit tout au long du projet Page 4 62 Coma ESIEE Introduction Ce projet de fin d tude fil rouge conclut les trois ann es d apprentissage au sein de l ESIEE Il s est d roul entre Septembre 2009 et Avril 2010 et a repr sent un volume de travail d environ 80 heures L objectif de ce projet tait de poursuivre le d veloppement d un logiciel de mesure et de cartographie de couverture ainsi que de tests de d bits Wi Fi en Python Nous devions reprendre en main le projet initi l ann e pr c dente par la promotion ISFR 2009 puis continuer son d veloppement afin de l am liorer et d y rajouter de nouvelles fonctions Nous allons
15. gt lt realwidth gt 210 000000 lt realwidth gt lt realheight gt 750 000000 lt realheight gt lt Salle gt lt Campagne gt lt nom gt zsedrftg lt nom gt lt statradio gt 1 lt statradio gt lt automatique gt 1 lt automatique gt lt step gt 50 lt step gt lt env gt 0 lt env gt lt manuel gt 0 lt manuel gt lt stattrafic gt 0 lt stattrafic gt lt id gt 2010 4 6 16 33 8 364284 lt id gt lt Campagne gt Page 40 62 C C GWA ESIEE lt Mesures gt lt 2010 4 6 16 33 20 400367 gt lt x gt 50 lt x gt lt y gt 50 lt y gt lt z gt 0 lt z gt lt description gt z lt description gt lt Link Quality gt 76 100 lt Link Quality gt lt Rx invalid frag gt 0 0 lt Rx invalid frag gt lt Power Management gt off lt Power Management gt lt Fragment thr gt lt Invalid misc gt 0 0 lt Invalid misc gt lt 802 11 gt b lt 802 11 gt lt Tx Power gt 27 dBm lt Tx Power gt lt Tx excessive retries gt 0 0 lt Tx excessive retries gt lt Missed beacon gt 0 0 lt Missed beacon gt lt Bit Rate gt 48 lt Bit Rate gt lt Rx invalid crypt gt 0 0 lt Rx invalid crypt gt lt Encryption key gt lt Signal level gt 54 dBm lt Signal level gt lt ESSID gt FIRES lt ESSID gt lt Access Point gt 00 1D 60 15 60 EE lt Access Point gt lt Noise level gt 103 dBm lt Noise level gt lt Rx invalid nwid gt 0 0 lt Rx invalid nwid gt lt Sensitivity gt lt RTS thr gt off lt RTS thr gt l
16. la documentation fournie ainsi que le code afin de s approprier le projet et bien comprendre le fonctionnement des diff rentes classes et fonctions la structure de la base de donn es etc Nous avons galement tent d utiliser le logiciel afin de tester son fonctionnement Cependant de nombreuses erreurs lors du lancement ainsi qu une r solution beaucoup trop lev e pour l utilisation sur un ordinateur portable nous ont oblig s a d abord passer par une grande tape de mise au propre du programme IL 4 2 Mise au propre du programme 1 4 2 1 Refonte de l IHM L Interface Homme Machine IHM cr e par l quipe pr c dente n tait pas redimensionnable La r solution n cessaire pour pouvoir afficher le programme devait tre sup rieure 1 181x884 ce qui n est pas support sur les ordinateurs portables n cessitent un cran de 19 pouces ou plus L IHM avait t cr e par l quipe pr c dente a l aide du logiciel QT4 designer Ce logiciel cr e des fichiers d IHM en ui qui sont ensuite compil l aide de PyQT4 en py Python Les fichiers sources d IHM n tant pas inclus dans les sources du programme nous avons donc du les demander a l ancienne quipe Les fichiers ui qu ils nous ont fournis ne correspondaient plus a l IHM actuelle En effet ils avaient modifi directement les fichiers Python g n r s a partir des ui Afin de rester modulaire et de pouvoir modifier l IHM facilement nous avons choisi d
17. repr sent es sous la forme d un tableau dans lequel chaque ligne correspond un point d acc s Ce tableau permet de conna tre pour chaque Access point e Le nom du r seau ESSID gt sera vide si le r seau ne diffuse pas son nom e Le canal gt Tous les canaux support s par la carte r seau seront parcourus e L adresse MAC BSSID e Le type de cryptage utilis gt WEP WPA ou pas de cryptage open e La qualit de la r ception Chaque champs du tableau a t rendu s lectionnable pour permettre le copier coller Scan de l environnement ox Filtres Open Actualiser et gt D wer ees SS cone E WPA Nom du r seau Canal Adresse MAC BSSID Encryption Qualit r ception 1 BE CC B2 CE FD 51 WPA 50 70 1 BE CC B2 CE FD 53 WPA 50 70 11 06 7F 8F C1 CF 81 WPA 33 70 12 6A AC C2 FF 34 9D WPA 32 70 12 6A AC C2 FF 34 9C WPA 33 70 13 6E 9B 6E C3 5B B5 WPA 27 70 AP_grrrrrrr 1 BE CC B2 CE FD 50 WPA 50 70 Bbox 5EE814 00 1F 9F F5 F4 1F lie 33 70 Bbox B370C0 00 1F 9F F5 C8 67 WBA ah FreeSaintHilaire 1 06 7F 8F C1 CF 80 WPA 34 70 Livebox 0F49 y 00 18 E7 6F D6 58 WEP 25 70 NUMERICABLE 5DEO 00 26 F2 86 56 E0 WEP 36 70 NUMERICABLE 9CB2 e 00 1F C6 86 BE 5E WEP 41 70 NUMERICABLE EFC2 13 00 1F C6 86 C8 8D WPA 28 70 freebox_fl 1 6E 9B 6E C3 5B B4 WPA 39 70 freeboxmims 1 C6 D0 C0 C1 F5 98 WPA 37 70 Les filtres Une section permettant de filtrer les r sultats a galement t impl ment e Celle ci permet de n aff
18. 4 Manuel du programme Afin d expliquer le fonctionnement du logiciel aux utilisateurs nous avons r dig un manuel d utilisation Ce manuel comprend des captures d cran de chaque tape et permet d expliquer l utilisateur comment remplir les diff rents champs Ce document est fournit en annexe IV 2 Page 54 62 C GWA ESIEE 11 5 Diagramme de PERT lt u Page 55 62 ESIEE C GWA 1 6 Diagramme de GANTT uoyesin p engen uoneyuasaud ja poddey ajj guaunauos apr ua AUS Page 56 62 Coma ESIEE Le diagramme de GANTT est donn a titre indicatif Les taches au sein du carr vert sont celles effectu es lors de la premi re p riode Les taches dans le carr bleu sont celles effectu s dans la seconde p riode 11 7 Indicateurs Afin de pouvoir suivre l volution du projet nous avons mis en place des points d avancements r guliers avec les personnes de l quipe Ces points nous ont permit d changer sur l avancement des t ches de chacun et de pouvoir s entraider et discuter des probl mes r soudre Nous avons galement mis en place une liste de t ches sur le Wiki du Google Code afin renseignant les t ches les personnes attribu es a ces t ches et l tat d avancement Nous avons galement effectu un bilan interm diaire correspondant a la moiti du projet c est dire a la fin de la premi re p riode 20 heures de projet Ce bilan interm diair
19. Cisco Cette solution apporte de tres nombreuses fonctions telles que la planification la configuration la surveillance et la gestion des r seaux locaux sans fils a partir d un point unique En effet cette solution s installe sur un serveur a partir duquel elle peut interroger et contr ler tous les AP Wi Fi et cartographier la couverture radio Fle EM Yew Fortes Took Hep t Do me grues rs Zi O Ga Gi L I Select a command nove View filters FSS Color 1 mp Toom Retreat Sinon 4 OMOOB gt E mm sut 100 E 5min o AP Fitter x je Total APactt Protocol 307 1 149 Cape ST Rast Cet Page 8 62 Coma ESIEE Avantages e Produit tr s complet e Point unique de gestion e Outil int grant des fonctions de reporting e Support multi OS pour le serveur et les clients accessible en client web Inconv nients e Prix de la licence environ 4000 pour la gestion de 50 AP maximum e Support du protocole LWAPP Lightweight Access Point Protocol obligatoire pour les AP e Analyse de puissance et cartographie bas sur des protocoles propri taires e N cessite un serveur 1 3 3 2 Ekahau HeatMapper Ekahau HeatMapper est un outil de cartographie de la couverture pour les r seaux Wi Fi Il est t l chargeable gratuitement et fonctionne en environnement de Windows Il est simple d utilisation et illustre la force des signaux sans fil sur des cartes thermiques avec codes de couleurs Il permet
20. ES cE Chambre de commerce ENGINEERING une cole de la et d industrie de Paris GWA Rapport ESIEE I5FR Projet Fil Rouge 2009 2010 Q GWA rom ESIEE Sommaire Remercioments tarada alados 4 ig ge CT END E 5 l o pea genee Seege eg 6 L2 But et enjeu du projet viesseccsdedcosneetdavcsunavddelacd counted idad 6 1 1 Qu est ce EE 6 Ee e EE 7 E A anna 7 3 2 Cont xte te UE 7 1 3 3 Contexte concuerda 8 LA Bande existan ainda 10 1 4 1 IHM et fonctions du logiciel s src adds 10 1 4 2 Code et base de donn e dde 11 LAS Docum ntati Nana 11 1 5 Expression des besoins rra ir denied 12 SA Fonctions Indispensables 12 LE Fonctions IMPORTANTE AAA AA 12 1 5 3 ee EE ELE 12 LSA D tails TE dei E 13 A O A en 15 1 6 P rim tre DR lcd 16 Il Pr sentation de la solution scvsssorerrensvanscstsarnaviensiaandcassianstacdinaisstusnnnsewataandsceuaubcadsnanestanennkends 17 1 1 Organisation et IN 17 I1 2 Pr sentation des outils atesora 17 CAES NA dd 17 1 2 2 Google COAG AA onu 21 11 2 3 Environnement de d veloppement ss 23 11 3 Organigramme des t ches isis 25 Page 2 62 C ows ESIEE Il 4 Descriptionides acer 26 11 4 1 Prise en main du TO CE avance eri idas 26 11 4 2 Mise au propre du PFOBPAMIM Cs sisvnviinsnsricisrsinnrnnsnsyennu sagvaavbensaiiieniicansdegpavivenavnenbonds 26 11 4 3 Etude de la g olocalisation cinco dust dead 29 11 4 4 Nouvelles ee gel EE 36 AAA aa ananas AN 43 114 6 EE 44 UE Beau
21. Edit QWidget enabled Y EE sizePolicy H maximum 116777215 x 16777215 Signal Slot Editor Sender Signal Receiver lt A A A lt gt Signal Slot Edi Action Edi Resource Brow AAA Page 23 62 C C GWA ESIEE 11 2 3 2 PyQT4 PyQT4 est un programme permettant de convertir les fichiers ui en fichier Python py Il converti donc en fait le code XML en code Python Pour cela il suffit de d entrer la commande suivante pyuic4 o fichier py fichier ui 11 2 3 3 Editeur Il existe de nombreux diteurs permettant de reconnaitre le langage Python Il existe galement un IDE Python complet Eric Nous avons choisit de ne pas imposer d diteur chacun travaillant avec celui avec lequel il est le plus laise Au final personne n a utilis l IDE Eric car trop lourd et complexe pour notre usage Exemple d diteurs utilis s e Kate e gedit e Vi Page 24 62 sed ESIEE pineg uaige4 Y E 1e ee 19 2 Gas asado sno Le Wee 19 auald sud uaige4 aspuexaly 9 aes UK d 3 e 3 9 Ges Q nist pineq 1 ue 11 3 Organigramme des t ches Page 25 62 rom ESIEE 11 4 Description des t ches IL 4 1 Prise en main du projet Le projet tant la reprise du projet GWA de l ann e pr c dente il tait n cessaire pour tout le groupe projet d tudier en d tail ce qui avait t r alis par l quipe pr c dente Pour cela nous avons tudi
22. SB e F14 Scan de l environnement Wi Fi et audit de s curit Page 12 62 Coma ESIEE 1 5 4 D tails des fonctions F1 Acquisition des mesures d analyse de puissance Wi Fi Le logiciel doit tre capable de r cup rer le niveau de signal Wi Fi recut par la carte pour chaque point de mesure Pour cela il doit se baser sur les remont es d iwlist F2 Tests de d bits bas s sur Iperf Le logiciel doit tre capable de proc der un test de d bit pour chaque point de mesure bas sur les remont es d iperf F3 Cartographie de couverture Le logiciel doit tre capable de reporter les mesures de puissance recue par la carte Wi Fi pour chaque point de mesure sur une carte de la salle repr sentant la couverture Wi Fi sous forme thermique de rouge pour un signal tr s puissant a bleu violet pour un signal tres faible F4 Utilisation sur un ordinateur portable avec un OS Linux Le logiciel doit pouvoir s ex cuter sur un ordinateur portable quip d un OS de type Linux La r solution d cran doit donc tre adapt e aux tailles d ordinateurs portables soit entre 7 et 17 pouces F5 Stockage des r sultats dans une base de donn es Les r sultats de chaque campagne de mesures doivent tre sauvegard s au sein d une base de donn es afin de pouvoir les r cup rer ult rieurement par exemple pour faire des traitements math matiques sur les donn es mesur es F6 Fonction de translation des mesures d une s
23. alle dans le plan d un b timent Il est important que le logiciel soit capable de replacer les mesures effectu es dans diff rentes salles d un b timent au sein d une carte globale pour ce b timent Page 13 62 Cows ESIEE F7 Export XML des donn es Les r sultats d une campagne doivent pouvoir tre export s au format XML En effet ce format standardis permet de r cup rer les donn es afin de les r utiliser au sein d autres logiciels Cela peut permettre par exemple d exporter les donn es vers Mathlab afin de r aliser des tudes math matiques F8 Structure modulaire du logiciel Le logiciel doit tre con ut de mani re modulaire et permette son volution future de mani re simple Il doit donc reprendre les concepts de la programmation objets F9 Documentation Il est important que le projet soit bien document Une documentation doit tre g n r e a partir des commentaires ins r s au sein m me du code Cette documentation pourra galement int grer un diagramme de classe expliquant graphiquement la relation entre les diverses fonctions Un manuel d utilisation doit galement tre r dig afin d expliquer aux utilisateurs la proc dure a suivre pour utiliser le logiciel F10 Faciliter la transmission du projet Le projet ayant pour but de continuer son d veloppement grace aux quipes d tudiants des ann es suivantes il est n cessaire de tout mettre en ceuvre afin de leur faciliter la r
24. atiqu de packaging debian d aller consulter de la documentation sur ce point notamment e http www debian org doc maint guide Ce document est LA r f rence du maintenant debian le probl me est qu elle est tr s longue et parfois indigeste e http doc ubuntu fr org tutoriel creer un paquet Version plus facile a appr hender Etant donn que cette doc est relativement courte il est conseill de la lire en entier avant m me de commencer a g n rer un nouveau paquet pour GWA Fonctionnement du paquet Le paquet va copier tout le programme dans usr share python support gwa Un script de lancement gwa sh est copi dans usr bin tandis qu un fichier gwa desktop fichier pour les menus gnomes kde est copi dans usr share applications Page 45 62 Cows ESIEE Lors de la premiere installation le paquet va importer les dumps dans la BDD postgresql Cette tape n est pas faite lors des mises a jour a moins d une grosse mise a jour au niveau de la base de donn es G n ration du paquet Paquets n cessaires pour la g n ration cdbs devscripts debhelper build essential fakeroot lintian Pour commencer r cup rer le fichier compress qui contient le squelette du paquet sur le site du projet et le d compresser dans votre r pertoire de travail L arborescence est la suivante gwa 0 30 debian dumpDB images python Le dossier debian contient toutes les informations relatives a
25. ds Wiki Issues Source Administer New page Search Current pages for 1 60f6 PageName y Summary Labels y Changed ChangedBy v TaskList Tasklist 22 hours ago BeanMachi CodePropre 5 days ago scanchon InstallerLePaquet Comment installer le paquet debian Sep 24 scanchon Devel Environnement de developpement Sep 21 scanchon LancerLeProjet One sentence summary of this page Sep 21 scanchon ProjectBegining Comment commencer Sep 09 dumoulin sebastien 1 60f6 e un espace de t l chargement de fichier 0e A Geographical Wireless Analyzer Project Home Downloads Wiki Issues Source Administer New download Search Current downloads for Search Filename v Summary Labels v Uploaded v Size v Downlc gwa_0 20 1_i386 deb GWA 0 20 debian package 4 days ago 323 KB 1 diveintopython pdf Dive into python en FR Sep 21 13MB 2 technique pdf Rapport technique 46 pages original Sep 14 8 5 MB 19 PresentationFilRouge2009 pdf Planning 1er semestre Sep 14 435KB 18 Presentation pdf Pr sentation du projet 115 pages Sep 11 155MB 3 manuel pdf Manuel d installation et d utilisation original Sep 11 11MB 74 GWA tar gz GWA 0 1 tarball Sep 10 334KB 10 Le site est accessible l adresse suivante http code google com Page 22 62 CC GWA ESIEE 11 2 3 Environnement de d veloppement 11 2 3 1 QT Designer 4 QT Designer est un logiciel permettant la cr ation d interfaces graphiques IHM de mani re simple L interface du logiciel permet de cr er l
26. e couverture et de d bit Page 59 62 Coma ESIEE Impl mentation complete de l tude de g olocalisation Nous avons pu r aliser l tude math matique compl te permettant de replacer les mesures des salles au sein du b timent Cependant nous n avons pu impl menter que des exemples en Python Pour les prochaines versions il serait int ressant de pouvoir impl menter totalement l tude math matique afin d ajouter cette fonction au programme Am lioration de l IHM Nous avons modifi IHM cr er l ann e pr c dente afin de l all ger et de la rendre plus ergonomique Il serait int ressant de pouvoir am liorer encore l interface en la rendant encore plus simple et graphique la mani re d un assistant Windows Int gration des fichiers SVG Nous n avons pas pu int grer la gestion des fichiers SVG Les plans utilis s par le logiciel doivent tre sous forme JPEG ou PNG Il serait tr s int ressant de pouvoir impl menter le support de ce format avec la possibilit d ouvrir et de sauvegarder les plans sous ce format Page 60 62 rom ESIEE IV Annexes IV 1 Statistiques e Entre 80 et 90 heures de travail r parties sur 2 p riodes d apprentissage e 256 r visions e 92 fichiers e 3113 lignes de code Python o 4600 pour le projet initial e 10 226 lignes de codes modifi es o Ajout Suppression Modification e 23 Bugs ou am liorations signal s o 20 Bugs ou am liorations corrig s e Paquet Debia
27. e nous a permis de faire un tat complet d avancement et de pr parer la seconde p riode Cela nous a permis d tablir la liste suivante e T ches accomplies e T ches restant accomplir e Probl matiques r soudre et difficult s Nous avons galement fait une soutenance avec le commanditaire notamment afin de rendre compte de l avancement de ce projet Page 57 62 Coma ESIEE 11 8 Probl mes rencontr s 1 8 1 Planification e Planification des horaires trop dense o Perte de nombreuses heures lors d un blocage pour lequel on doit attendre une intervention ext rieure e Planification de l intervention des consultants inadapt e o Les interventions de S bastien Panel sont arriv es trop tard en seconde p riode alors que son aide aurait t utile au d marrage du projet afin de nous aider nous l approprier o Les interventions d Olivier Cayrol sont arriv es trop t t d s le d part du projet au moment ou nous tentions de nous approprier le projet Son aide en Python a t utile au moment ou nous avons commenc le d veloppement IL 8 2 Techniques e D marrage du projet sans connaitre le langage Python e Dimensions des fen tres rendant l ancien projet inutilisable e Sources de l IHM non fournies au d part e Fichiers IHM ne correspondant plus au programme codage de l interface directement dans les sources Python par l ancienne quipe e Fonctions math matiques Page 58 62
28. e reprendre l IHM de z ro et de recr er les ui Page 26 62 Coma ESIEE Cela nous a permis d avoir des fen tres d une r solution de 1024x780 r solution support e par les ordinateurs portables et les notebooks De plus nous avons ajout la possibilit de redimensionner les fen tres afin de pouvoir adapter facilement la taille des boites de dialogues a la r solution d cran utilis e 1 4 2 2 Fusion IHM et fonctions Une fois IHM recr e nous devions r int grer le code du programme dans les pages Python g n r es par PyQT4 En effet l quipe pr c dente avait cod les fonctions au sein m me des pages de IHM Il a donc fallu pour chacune des pages identifier quel tait le code Python correspondant IHM et quel tait le code Python correspondant au fonctionnement du programme De plus l IHM ayant chang e il nous a fallu adapter l ancien code la nouvelle IHM Nous n avions pas encore eu les cours sur le langage Python Cette tape a donc t assez longue et fastidieuse Page 27 62 CC GWA ESISE 11 4 2 3 Transformation objet Une fois IHM recr et le programme fonctionnel nous avons choisit de transformer le d coupage du logiciel afin de le rendre modulaire En effet au vu du temps pass pour fusionner le code du programme avec celui de IHM nous avons d cid de les s parer afin de pouvoir r g n rer une nouvelle IHM tout moment sans impacter le fonctionnemen
29. emple de commentaires att Fonction toto param titi parametre 1 param tutu parametre2 aaa Il est possible d avoir plus de d tails sur les docstrings sp cifiques a python sur le site officiel de doxygen http www doxygen nl docblocks htmlttpythonblocks Le fonctionnement de doxygen est bas sur la lecture d un fichier de configuration propre au projet Ce fichier utilise des chemins relatifs et est donc assez sensible Pour viter devoir r crire compl ment le fichier de config assurez vous d avoir r cup rer correctement notre d p t SVN et d avoir une arborescence de ce type DOC Projet_final New_pagesui images python DAC DBA Mapping Files PythonUl SCripts A AAA AA II OA A A A Page 51 62 Coma ESIEE tools dumpBD Dans notre cas de fichier est nomm doxygen_gwa et se trouve dans le r pertoire Projet_Final scripts du SVN Ce fichier a t configur par nos soins pour g n rer des fichiers LaTeX dans le r pertoire DOC Ces fichiers latex peuvent ensuite tre convertis en PDF G n ration de la documentation Premi re tape Pour que doxygen interprete correctement le python il est n cessaire d installer un filtre suppl mentaire Ce filtre s appel doxypy et il est possible de trouver les informations pour le t l charger et l installer au moment de la r daction de ce rapport ici http code fo
30. ence par d tailler toutes les informations qu il a pour le batiment en cours balise lt batiment gt vient ensuite les informations sur la salle balise lt salle gt puis le d tail de la campagne notamment quels ont t les tests effectu s balise lt campagne gt Enfin pour finir l export de toutes les mesures dans le cas de l exemple uniquement la partie radio dans la balise lt mesure gt Chaque mesure est s par e par une balise qui contient son identifiant unique de mesure On retrouvera dedans les coordonn es relatives de la mesure par rapport la salle les informations radios et ou d bit etc Nous n avons pas jug n cessaire d exporter les infos sur AP car on retrouve ces derni res sur la partie radio des mesures Page 42 62 Coma ESIEE IL 4 5 Ergonomie Afin d am liorer l ergonomie du logiciel nous avons travaill tout d abord sur IHM Nous l avons tout d abord rendue redimensionnable dynamiquement Cela permet d adapter l interface la r solution d cran du pc portable Nous avons ensuite choisit de simplifier cette interface en supprimant les champs non n cessaire et en repla ant les boutons de mani re plus intuitive Nous avons galement impl ment des raccourcis claviers afin de lancer les mesures Cela permet d viter l utilisateur de devoir faire les mesures avec une souris ou en touchant en permanence le touchpad ce qui n est pas vident quand il
31. eprise du projet et l ajout de nouvelles fonctions En cela la fonction de structure modulaire du logiciel ainsi qu une documentation compl te et d taill e permettra d atteindre ce but F11 Installation facile Dans la mesure du possible le logiciel devrait tre facilement installable sur une distribution Linux L utilisateur devrait pouvoir t l charger et utiliser le logiciel en tres peu de temps Il ne doit pas se pr occuper des ventuelles d pendances du logiciel Page 14 62 Coma ESIEE F12 Ergonomie du logiciel Le logiciel devra si possible tre ergonomique afin de faciliter son utilisation Elle doit tre intuitive et demander le moins possible d intervention de l utilisateur F13 Clef USB Dans la mesure du possible une clef USB devra tre pr par e contenant le logiciel GWA ainsi que tous les autres outils n cessaires pour poursuivre le d veloppement Celle clef USB devra tre bootable et fournit un environnement complet pour l utilisation de GWA F14 Scan de l environnement Wi Fi et audit de s curit Une des nouvelles fonctions souhait es est si possible le d veloppement d un nouveau module permettant de scanner l environnement Wi Fi et de pouvoir effectuer un audit de s curit 1 5 5 Contraintes 1 7 5 1 Contraintes techniques e Environnement Python e Base de donn es PostgreSQL e Interface graphique e Calculs math matiques 1 5 5 2 Contrainte de temps Le projet doi
32. es fen tres graphiques en mode WYSIWYG ll est bas sur l utilisation de la biblioth que graphique Qt d velopp e en C Cet outil g n re des fichiers ui User Interface contenant la description de toute la partie graphique en XML Qt Designer File Edit Form View Settings Window Help Dep op A 8 Widget Box o Ba SSR M 23308385 Start Debugger startexternaldialog ui Layouts ecutable Vertical Layout JJ Horizontal Layout 333 Grid Layout 38 Form Layout Spacers ped Horizontal Spacer E Vertical Spacer e Buttons ex Push Button A Tool Button 9 Radio Button f Check Box Q Command Link Button Z Button Box Item Views Model Based a List View SQ Tree View a Table View Column View Item Widgets Item Based List Widget SR Tree Widget EE Table Widget Containers Group Box Scroll Area e Tool Box E Tab Widget rguments reak at main OK Cancel E projectwizardpage ui Add to Project lu Project d to version control fn The following files will be added Object Inspector Object Class StartExternalDialog QDialog lt noname gt 4 QGri yout argLabel QLabel checkBoxBreakAtMain MY QCheckBox Bd execFile 2 Core oser execLabel labelBreakAtMain lt noname gt Property Editor argsEdit Filter QLineEdit Property Value a objectN args
33. gt majeur z Page 29 62 Cows ESIEE L orientation choisie des axes ne respecte pas la r gle de la main droite et complexifie donc les calculs a r aliser pour comparer les valeurs des diff rentes mesures effectu es par notre programme 11 4 3 2 Solution propos e Nous voulons dans un premier temps red finir le repere global afin que les axes de ce rep re respectent la r gle de la main droite Nous allons donc d finir un rep re en orientant Taxe des abscisses vers la droite et celui des ordonn es vers le haut A pr sent nous souhaitons trouver un moyen de rapporter les coordonn es d un rep re local au rep re global afin de pouvoir comparer les diff rentes mesures effectu es par notre programme Pour ce faire nous avons d cid d utiliser plusieurs op rations une translation et une rotation De facon g n rale une translation sert a d placer un objet dans l espace sans le tourner Dans notre cas nous utiliserons un vecteur de translation afin de positionner le point d origine des diff rents rep res locaux aux coordonn es du point d origine global au batiment Les matrices de translation sont utilis es pour tourner un ensemble de points dans un systeme de coordonn es Chaque point possede de nouvelles coordonn es mais leurs distances relatives restent inchang es Dans notre cas une matrice de rotation sera utilis e afin d orienter les axes des rep res locaux dans la m me direction et le m
34. icher que certains AP en utilisant des crit res de cryptage ou bien de se restreindre un canal en particulier Ce filtre s av re tr s utile lorsqu un grand nombre de points d acc s sont capt s proximit typiquement dans les immeubles en ville et l on peut rapidement se retrouver avec plus d une vingtaine d AP Page 37 62 C GWA ESIEE La plupart des cartes wifi permettent d utiliser les fr quences du standard WiFi 802 11a bande 5Ghz Le filtre prend donc en compte en plus des 13 canaux du 802 11b g les canaux autoris s en Europe du 802 11a En effet la r glementation en mati re de fr quences radio diff re selon les pays cf tableau ci dessous Fr quences dans la bande 2 4 Ghz Fr quences dans la bande 5 Ghz 802 11a Fr quence Fr quence Canal USA E J Canal Mhz Pays ana Mhz urope Japon Japon Europe ETSI 34 5170 ee tats Unis FCC 36 5180 Japon Europe ETSI 2 241 S T Etats Unis FCC 38 5190 40 5200 3 2422 J apon ee ETSI Etats Unis FCC 42 5210 Japon Europe ETSI 4 242 2 Etats Unis FCC Se 5220 5 2432 Japon Europe ETSI ES 5230 Etats Unis FCC 48 5240 6 2437 Ji apon Europe ETSI 52 5260 Etats Unis FCC J E ETSI ge 0 7 2442 Japon urope Etats Unis FCC 60 5300 Japon Europe ETSI 64 5320 244 A r Etats Unis FCC 100 5500 Japon Europe ETSI 9 2452 3 Etats Unis FCC 104 5520 Japon Europe FETSL 108 5540 1 24 3 9 ei Etats Unis FCC 112 5560 11 2462 Japon Europe ETSI
35. ild gwa_0 30 1_i386 changes gwa 0 30 gwa_0 30 1_i386 deb gwa_0 30 1 dsc gwa_0 30 1 tar gz gwa_0 30 1 dsc asc Tous ces fichiers ont leur utilit dans le cas d une int gration dans un d p t Pour nous tant que nous n avons pas de d p t seul le fichier deb nous int resse 11 4 7 2 Clef USB Pour une utilisation tr s simple de GWA sur un pc portable et afin de ne pas tre d pendant de POS install sur ce pc nous avons d cid de produire une clef USB bootable directement dans un environnement personnalis pour GWA et contenant tous les programmes n cessaires a son utilisation et son d veloppement futur e Kubuntu 9 10 e GWA e PostgreSQL e Librairie de d veloppement Python e PyQT4 e QT Designer A e Kate e Vim e Firefox e Eric e Subversion e Inkscape e Aircrack ng e Wireshark L avantage est de pouvoir utiliser rapidement GWA sans aucun impact sur OS install sur le pc portable h te Page 48 62 Cows ESIEE Divers outils permettent de cr er une cl USB avec une distribution linux bootable mais aucune ne permet de la cr er directement personnalis e Cependant la personnalisation du filesystem est possible Il a donc t d cid de proc der de la mani re suivante 1 Cr ation de la cl USB bootable avec un outil tel qu UnetBootln ou Linux Live USB Creator 2 Extraction et personnalisation du filesystem 3 Remplacement du filesystem de la cl USB 1 Le point 1 n
36. llons d abord mettre a jour certains fichiers puis recr er un nouveau squashfs qui remplacera celui de la cl USB 3 Remplacement du filesystem de la cl USB chmod W tmp usb casper filesystem manifest chroot custom dpkg query W _ showformat S Package S Version n gt tmp usb casper filesystem manifest tmp usb casper filesystem manifest tmp usb casper filesystem manifest desktop mksquashfs custom tmp usb casper filesystem squashfs Parallel mksquashfs Using 4 processors Maintenant Nous allons mettre a jour deux derniers fichier Le README facultatif situ a mnt usb README et le fichier de checksum de notre nouvelle distribution cd tmp usb amp amp find type f printO xargs 0 md5sum gt md5sum txt Voila il ne nous reste plus qu a rebooter un PC sur notre cl USB Page 50 62 C ESIEE IL 4 8 Documentation du projet 11 4 8 1 Documentation du code Afin de faciliter la reprise du projet par les prochaines quipes nous avons comment en d tail le code Python Nous avons galement g n r une documentation HTML a partir des commentaires pr sents dans le code Doxygen est un logiciel libre de g n ration de documentation de code Ce dernier peut tre utilis dans nombre de langages JAVA C C et notamment pour Python en lui ajoutant un filtre correct Il repose sur un syst me de commentaires et de docstring tr s similaires ceux utilis s dans la JAVADOC Ex
37. n de 333ko pour la release 0 3 stable Page 61 62 C owa ESIEE IV 2 Manuel d utilisation La manuel d utilisation est fournit avec le projet ll se nomme GWA Manuel d utilisation pdf Page 62 62
38. ne version plus ancienne du programme par exemple Nous allons expliquer comment utiliser SVN pour notre projet Ici seront d taill es les commandes de base avec svn sans interface graphique N anmoins en ayant compris les commandes l utilisation via un client graphique tel que TortoiseSVN par exemple ne posera plus aucuns problemes 11 2 1 1 Les diff rents r pertoires de SVN A la racine de SVN se trouvent 3 r pertoires de bases e branches Ce r pertoire h berge les diff rentes branches d un m me projet Nous ne l utiliserons pas Page 17 62 rom ESIEE e tags Ce r pertoire h berge les diff rentes versions du projet A chaque volution majeure du code on copie la version dans ce r pertoire Par exemple la version initiale du projet a t copi e dans ce r pertoire avec le num ro de version 0 1 e trunk ce r pertoire contient les sources du projet Les versions sont g r s via SVN elles sont appel es r vision 11 2 1 2 Installation Il faut premi rement s assurer que SVN est bien install sur le syst me toto mercure sudo apt get install subversion 11 2 1 3 R cup ration des sources Avec SVN la r cup ration des sources est diff rente suivant votre contexte Dans l ordre on effectue d abord un checkout puis on effectue des imports Pour r cup rer les sources la premi re fois il faut effectuer un checkout cela permet de mettre en place l environnement SVN ainsi que les
39. onUI compound PythonUlI namespace PythonUI compound PythonUI namespace PythonUI compound PythonuI namespace Pythonur compound PythonUTI Generating namespace member index Generating graph info page Generating file index Generating example index Generating file member index Doxygen has finished Ui_Page4 Ui_Paged Ui_Page5 Vi_Page5 Ui_Page5 Ui_Page6 Vi_Page6 Ui_Page6 Ui_Page7 Ui_Page7 Ui_Page7 Ui_Page8 Ui_Page8 Ui Page8 Ui_Page9 Ui_Page9 Ui_Page9 Ui_PageEnvironnement ui _ PageEnvironnement Ui_PageEnvironnement D Page 53 62 Coma ESIEE e Sixieme etape Une fois la g n ration finie il faut aller dans le r pertoire DOC latex puis lancer la commande make Cette commande s occupe de combiner toutes les pages LaTeX de mani re a produire un seul et unique pdf qui sera nomm refman pdf 11 4 8 2 Etude concurrentielle Afin de pouvoir cerner les avantages de GWA nous avons r alis une rapide tude concurrentielle afin d identifier quels sont les produits semblables GWA sur le march Nous avons ainsi pu voir les avantages et inconv nients de chacun et remarqu que le segment vis par le logiciel GWA tait encore libre 11 4 8 3 Rapport et pr sentation A partir de la seconde p riode du projet nous avons d marr la r daction du rapport de projet ainsi que la pr paration de la soutenance 11 4 8
40. osel org doxypy Ce filtre est n cessaire pour la g n ration de la documentation de GWA avec notre fichier de configuration doxygen Seconde tape il faut installer les paquets doxygen et doxywizard Le premier fourni le logiciel doxygen en lui m me tandis que le deuxi me fourni un front end graphique pour l utilisation de doxygen qui a la base s utilise uniquement en ligne de commande Troisi me tape ex cuter la commande doxywizard Vous devriez avoir une interface qui ressemble cette capture d cran Doxygen GUI frontend File Settings Help Step 1 Specify the working directory from which doxygen will run Select Step 2 Configure doxygen using the Wizard and or Expert tab then switch to the Run tab to generate the documentation Wizard Expert Run onies Provide some information about the project you are documenting Project Mode Output Project name Diagrams Project version or id Specify the directory to scan for source code Source code directory doxygen mail 1 5 7 doxywizard Select C Scan recursively Specify the directory where doxygen should put the generated documentation Destination directory Select Page 52 62 C ewa ESIEE L interface de doxywizard est assez pur e Trois onglets sont disponibles deux consacr s au fichier de configuration un pour en mode simplifi qui se nomme Wizard et un de
41. ropag e Il se peut que SVN vous informe de lignes qui ont t ignor s Juste fermer le fichier puis taper c pour continuer l upload Maintenant nos fichiers ont t mis a jour sur le d p t Page 20 62 Co GWA ESIEE 11 2 2 Google Code Nous avons choisit la plateforme de d veloppement collaboratif de Google Google Code afin d h berger notre projet Ce service est gratuit et permet I h bergement de projets open source Il propose diverses fonctionnalit s e un gestionnaire de version SVN ou Mercurial voir 11 1 2 gwa A Geographical Wireless Analyzer Project Home Downloads Wiki Issues Source Administer Summary Updates People Details Show all Hide all Today E alexandre planchon Scan des AP list s dans la console 2 min ago r201 Scan des AP list s dans la console committed by 8 17 hours ago 200 Xml is now working well with measures miss bandwith and AP committed by scanchon Xml is now working well with measures miss bandwith and AP List a 19 hours ago r199 Beta XML export committed by scanchon Beta XML export Ei 20 hours ago 1198 ok Page5 committed by scanchon ok Page5 22 hours ago TaskList Tasklist Wiki page edited by BeanMachi Revision 1197 MAJ E Ei 23 hours ago 1196 No log message committed by scanchon No log message 23 hours ago r195 Page9 had now Ul committed by scanchon Page9 had now UI Ei 23 hours
42. s d un point appartenant a un rep re local afin que ce point appartiennent au repere global changementRepere xorigine yorigine xlocal ylocal teta 0 Cette m thode prend en compte plusieurs param tres Les param tres xorigine et yorigine repr sentent les coordonn es du point d origine du rep re local C est a partir de ces coordonn es que l on d terminera les composantes de notre vecteur de translation Ensuite les param tres xlocal et ylocal repr sentent les coordonn es d un point appartenant au rep re local notre m thode va d finir les nouvelles coordonn es de ce point dans le rep re global Enfin le dernier param tre teta repr sente l angle entre l axe des abscisses du repere global et l axe des abscisses du rep re local Cet angle est utilis pour effectuer la rotation 11 4 4 2 Scan de l environnement Une des fonctions optionnelles demand es par le client tait d impl menter un module de scan de l environnement et de s curit Wi Fi Nous avons ainsi d cid d impl menter la fonction de scan de l environnement Celle ci permet de conna tre l environnement radio dans lequel on se situe et voir quelle s curit est appliqu e Open WEP WPA Page 36 62 Coma ESIEE Cette nouvelle fonctionnalit correspond une nouvelle page dans IHM accessible au d marrage de l application En utilisant les r sultats de la commande iwlist les donn es sont
43. s en derni re ann e d apprentissage en R seaux et T l communications l ESIEE Paris Ce projet a t initi par M Daniel Courivaud enseignant et chercheur au laboratoire SIGTEL l ESIEE Paris Une premi re quipe d tudiant a d marr le projet en 2009 Page 6 62 C C GWA ESIEE 1 3 Contexte 1 3 1 Humain Commanditaire e M Daniel Courivaud enseignant et chercheur au laboratoire SIGTEL a l ESIEE Paris Consultants e M Olivier Cayrol consultant soci t Logilabs e M S bastien Panel ancien tudiant ayant particip au d veloppement de GWA l ann e pass L quipe projet se compose de 7 tudiants d I5FR promo 2010 e David Alexis e Fabien Bagard e Fatah Brahmi e S bastien Dumoulin e S bastien Canchon e Alexandre Planchon e Pierre Valat I 3 2 Contexte technique e La solution propos e doit tre compatible avec un OS de type Linux e Le d veloppement de la solution doit tre fait l aide de logiciels libres e Le d veloppement de la solution doit tre fait en utilisant le langage Python Page 7 62 K C GWA ESIEE 1 3 3 Contexte concurrentiel D autres solutions d analyse et de cartographie de signal Wi Fi existent sur le march Parmi elles on peut retrouver des solutions payantes et d autres libres Ci dessous les 2 solutions les plus populaires 1 3 3 1 Cisco WCS WCS Wireless Control System est une solution payante fournie par l quipementier r seau
44. se trouve debout avec le pc dans les bras II lui suffit simplement d appuyer sur une touche pour passer la mesure suivante Nous avons galement impl ment une fonction permettant la suppression des l ments tels que les b timents salles point d acc s et mesures de la base de donn es cette fonction n avait pas t impl ment e par l quipe pr c dente afin d viter de se retrouver avec une liste d roulante norme et une base de donn e toujours plus grande chaque mesures Cela permet galement d effacer un l ment mal configur mauvaises coordonn es d un b timent mauvais ESSID d un point d acc s Ces am liorations d ergonomie permettent une utilisation plus simple et intuitive du logiciel par l utilisateur Page 43 62 Coma ESIEE 11 4 6 Fiabilisation 11 4 6 1 Corrections de bugs La correction de bugs a t une phase qui s est tal e tout au long du projet En effet il nous a fallu premi rement corriger les bugs pr sents dans le programme d velopp l ann e pr c dente puis les bugs apparus lors de notre propre d veloppement 11 4 6 2 Mise en place de tests Nous avons galement impl ment s de nombreux tests dans le programme afin de s curiser son fonctionnement e Tests de la validit des valeurs entr es par l utilisateur e V rification du fonctionnement de la base de donn es avant de d marrer le programme Une fois le programme termin nous avons
45. sources toto mercure projets Is manuel pdf Presentation pdf technique pdf toto mercure projetS svn co https gwa googlecode com svn trunk GWA username nom_utilisateur A GWA DOC A GWA GWA sh A GWA dumpBD A GWA dumpBD deleteTable sql ll A GWA Projet_final images batiment2_mesure png A GWA Projet_final images pointeur1 png R vision 15 extraite toto mercure projets Is GWA manuel pdf Presentation pdf technique pdf Page 18 62 C C GWA ESIEE On constate qu un r pertoire GWA a fait son apparition Ce dernier contient toutes les sources checkout depuis notre SVN toto mercure projet GWAS ls la total 28 drwxr xr x 6 toto toto 4096 2009 09 14 09 38 drwxr xr x 3 toto toto 4096 2009 09 14 09 38 drwxr xr x 3 toto toto 4096 2009 09 14 09 38 DOC drwxr xr x 3 toto toto 4096 2009 09 14 09 38 dumpBD rwxr xr x 1 toto toto 55 2009 09 14 09 38 GWA sh drwxr xr x 5 toto toto 4096 2009 09 14 09 38 Projet_final drwxr xr x 6 toto toto 4096 2009 09 14 09 38 svn Un r pertoire svn a aussi fait son apparition il contient toute la configuration de Subversion adresse du d p t pour notre projet Maintenant que nous avons une copie en local du d p t voyons comment ajouter les UI que nous avons r cup r s par exemple 11 2 1 4 Mise jour Dans le jargon SVN une mise jour du d p t se nomme commit Voyons ici comment rajouter les UI que nous avons r cup r s notre d p t SVN
46. t tre r alis en 80 heures Des cr neaux horaires on t r serv s dans l emploi du temps afin de travailler sur ce projet La date de fin du projet est fix e pour le 09 Avril 2010 Page 15 62 E ESIEE 1 5 5 3 Contrainte de co ts Aucun budget n est pr vu pour ce projet Le d veloppement ainsi que la solution doivent tre bas e uniquement sur des logiciels libres 1 6 P rim tre du projet Le p rim tre du projet est le suivant e D veloppement du logiciel partir de l existant e R daction d une documentation compl te pour faciliter la reprise par les prochaines quipes Page 16 62 C C GWA ESIEE IL Pr sentation de la solution 11 1 Organisation de l quipe GWA tant un logiciel libre nous nous sommes organis s de la m me mani re que les quipes de d veloppement de logiciel libre c est dire en mode communautaire Chacun a pu ainsi travailler sur tous les aspects du projet sans rester cantonn a une seule partie Nous avons fait des points d avancements r gulier afin que chacun connaisse l avancement de chacune des parties les probl mes rencontr s par les autres et puisse ainsi y apporter son aide Ces r unions ont permis galement de se r partir les t ches 11 2 Pr sentation des outils utilis s 11 2 1 SVN SVN signifiant SubVersioN est un logiciel de gestion de version Il permet de conserver un historique total du projet et de revenir facilement u
47. t Frequency gt 2 422 GHz lt Frequency gt lt Retry limit gt None lt Retry limit gt lt Mode gt Managed lt Mode gt lt 2010 4 6 16 33 20 400367 gt lt 2010 4 6 16 33 26 817246 gt lt x gt 50 lt x gt lt y gt 100 lt y gt lt z gt 0 lt z gt lt description gt z lt description gt lt Link Quality gt 76 100 lt Link Quality gt lt Rx invalid frag gt 0 0 lt Rx invalid frag gt lt Power Management gt off lt Power Management gt lt Fragment thr gt Page 41 62 C C GWA ESIEE lt Invalid misc gt 0 0 lt Invalid misc gt lt 802 11 gt b lt 802 11 gt lt Tx Power gt 27 dBm lt Tx Power gt lt Tx excessive retries gt 0 0 lt Tx excessive retries gt lt Missed beacon gt 0 0 lt Missed beacon gt lt Bit Rate gt 48 lt Bit Rate gt lt Rx invalid crypt gt 0 0 lt Rx invalid crypt gt lt Encryption key gt lt Signal level gt 55 dBm lt Signal level gt lt ESSID gt FIRES lt ESSID gt lt Access Point gt 00 1D 60 15 60 EE lt Access Point gt lt Noise level gt 104 dBm lt Noise level gt lt Rx invalid nwid gt 0 0 lt Rx invalid nwid gt lt Sensitivity gt lt RTS thr gt off lt RTS thr gt lt Frequency gt 2 422 GHz lt Frequency gt lt Retry limit gt None lt Retry limit gt lt Mode gt Managed lt Mode gt lt 2010 4 6 16 33 26 817246 gt lt Mesures gt lt Resultats gt La syntaxe XML a t volontairement faite pour qu elle soit interpr table par un homme L export comm
48. t du programme Pour cela nous avons transform le code en code objet afin de gagner en souplesse Cela nous a galement permit d utiliser la relation d h ritage pageX ui Ul_pageX py H ritage PageX py Page 28 62 Coma ESIEE 11 4 3 Etude de la g olocalisation 11 4 3 1 Contexte Actuellement dans le programme r cup r la promotion I5FR de l an dernier un rep re global a t d finit Ce rep re global au b timent est utilis pour effectuer les calculs Le rep re global au b timent est d finit en haut a gauche du b timent de la mani re suivante x y Les coordonn es du point d origine du rep re local fourni par l utilisateur du programme est d fini par rapport aux coordonn es du point d origine du rep re global au b timent Un probl me subsiste avec le rep re global d finit par la promotion de Tan dernier En effet les axes des abscisses et des ordonn es x et y sont mal orient s L orientation de ces axes ne respecte pas la r gle de la main droite La r gle de la main droite est un moyen de se rappeler comment sont li es diverses directions Avec cette r gle nous pouvons repr senter facilement un rep re orthonormal direct Le pouce l index et le majeur permettent de repr senter les trois vecteurs de la base appel e couramment i j k ou encore x y z Les trois doigts forment alors un tri dre dans l espace pouce index y
49. u paquet comment le construire la description les d pendances dumpDB contient les dumps initiaux de la base de donn e images contient les images n cessaires au fonctionnement du programme et enfin python contient le programme en lui m me Lors d une r g n ration il convient de copier les nouveaux fichiers au bon endroit images dans images et les sources python dans python On n est pas oblig de faire le tri avec les fichiers pyc ou autre car ils seront automatiquement supprim s lors la g n ration du paquet Une fois ces fichiers copi s placez vous dans le dossier debian user mercure projet packaging GWA gwa 0 20S cd debian Puis lancer la commande dch i user mercure projet packaging GWA gwa 0 20 debianS dch i Cette commande permet de modifier correctement le fichier changelog qui est la base lors d un upgrade de version Il va lancer un diteur de texte sur ce fichier Voici un exemple d ajout Page 46 62 C C GWA ESIEE gwa 0 30 1 jaunty urgency low New dump From SVN S bastien CANCHON lt canchons esiee fr gt Tue 06 Apr 2010 16 06 47 0200 Pour indiquer le changement de version majeure tout changement de version apr s le tiret est consid r comme un changement au niveau du packaging et non du programme dch renommera le dossier source dch warning your current directory has been renamed to qwa 0 30 On peut maintenant lancer la commande pour g n rer le paquet Pour
50. uxi me avec plus de d tails nomm Expert et un troisi me pour lancer doxygen pour g n rer la documentation e Quatri me tape faut charger le fichier de configuration de doxygen pour GWA via File Open dans doxywizard Une fois charg vous pouvez regarder un peu quels sont les options qui diff rent par rapport a une configuration par d faut ces options sont marqu es en rouge dans l onglet expert e Cinqui me tape on va maintenant g n rer la documentation Rendez vous dans l onglet Run puis cliquez sur Run Doxygen File Settings Help Step 1 Specify the working directory from which doxygen will run home user projet GWA Projet_final scripts Select Step 2 Configure doxygen using the Wizard and or Expert tab then switch to the Run tab to generate the documentation Wizard Expert Run Run doxygeg Status not running Output produced by doxygen Show configuration La sortie de la commande doxygen s affichera au milieu de l onglet Output produced by doxygen Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs Generating docs for for for for for for for for for for for for for compound PythonUlI namespace PythonUI compound PythonUI namespace PythonuI compound PythonUlI namespace Pyth
Download Pdf Manuals
Related Search
Related Contents
STRATOS SRM Istruzioni di servizio per l`installatore Logamatic 4321/4322 Installation & User Manual Recharging EC-Vent User Manual GB (A004) Copyright © All rights reserved.
Failed to retrieve file