PROJET DE FIN D ETUDES



Documents pareils
WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Webinar. Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL. avec la participation de

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Le stockage local de données en HTML5

Mettre en place une infrastructure Web nouvelle génération avec Drupal et Acquia

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

D origine destiné à la conception de blog, WordPress est devenu l outil incontournable dans la liste des systèmes de gestion de contenus..

Dans cette Unité, nous allons examiner

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Introduction à. Oracle Application Express

Formation : WEbMaster

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

1. Des chartes graphiques homogènes, élégantes, créatives

RÉALISATION D UN SITE DE RENCONTRE

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Programmation Web. Madalina Croitoru IUT Montpellier

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Site web établissement sous Drupal

Créer un site internet?

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

Devenez un véritable développeur web en 3 mois!

Découvrir Drupal, le CMS Open Source de référence. Michel-Marie MAUDET Linagora /

Automatisation de l administration système

SYSTÈMES D INFORMATIONS

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

Préparation d un serveur Apache pour Zend Framework

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

PHP 5.4 Développez un site web dynamique et interactif

Savoir- Faire Offres mé1ers Offres technologiques

4. SERVICES WEB REST 46

Formation. Module WEB 4.1. Support de cours

les techniques d'extraction, les formulaires et intégration dans un site WEB

Joomla! Création et administration d'un site web - Version numérique

Projet en nouvelles technologies de l information et de la communication

Introduction aux concepts d ez Publish

CCI DE SAÔNE-ET-LOIRE - ATELIER ENP 18 MAI La création de sites internet

Sommaire. 1. Présentation de WordPress. 2. Hébergement et installation. 3. Prise en main, ajouter des contenus

SQL Server Installation Center et SQL Server Management Studio

Cahier des charges - Refonte du site internet rennes.fr

Petite définition : Présentation :

Drupal, pour quel usage? Comment se positionne Drupal? Les fonctionnalités de Drupal et de son écosystème. L'architecture technique et logicielle Le

La dernière base de données de Teradata franchit le cap du big data grâce à sa technologie avancée

... Cahier des charges Site Internet Office de Tourisme Lesneven - Côte des Légendes MAITRE D OUVRAGE

Content Management System. bluecube. Blue Cube CMS V4.3 par Digitalcube

CRM pour le Service clients et l Assistance technique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Choisir la solution d hébergement et de support faite pour vous

De l OpenData aux citoyens : potentiel et limites des plateformes collaboratives

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

INTERNET, C'EST QUOI?

X2BIRT : Mettez de l interactivité dans vos archives

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Introduction à ElasticSearch

CRM pour le marketing

Présentation du module Base de données spatio-temporelles

Pratique et administration des systèmes

Hébergement MMI SEMESTRE 4

Cours Bases de données

Formations Web. Catalogue 2014 Internet Référencement Newsletter Réseaux sociaux Smartphone

Cahier des charges. «Application Internet pour le portail web i2n» Direction du Développement numérique du Territoire

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Créer et partager des fichiers

Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC)

OFFRE DE SERVICE.

PHP 5. La base de données MySql. A. Belaïd 1

Agence Web innovatrice

Efficace et ciblée : La surveillance des signaux de télévision numérique (2)

Content Management System V.3.0. BlackOffice CMS V3.0 by ultranoir 1

Maîtriser la diffusion de son catalogue e-commerce

Créer une base de données vidéo sans programmation (avec Drupal)

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Construire un réseau social avec Symfony Xavier Lacot Clever Age. Symfony Live 11 et 12 juin 2009 Clever Age Xavier Lacot

Travail d équipe et gestion des données L informatique en nuage

Cloud public d Ikoula Documentation de prise en main 2.0

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

Microsoft Office SharePoint Server Guide d évaluation

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Communiqué de Lancement

Créer une page Google+ Pro internet.com

FileMaker Server 14. Guide de démarrage

Bien architecturer une application REST

RESEAUX SOCIAUX : OUTILS DE PROSPECTION ET FIDELISATION?

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Introduction MOSS 2007

Livre Blanc WebSphere Transcoding Publisher

Catalogue des formations Edition 2015

White Paper - Livre Blanc

Spip 2. Premiers pas pour créer son site web. Anne-Laure Quatravaux Dominique Quatravaux. Avec la contribution de Sandrine Burriel

Présentation Alfresco

En route vers le succès avec une solution de BI intuitive destinée aux entreprises de taille moyenne

FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement

De Zéro à Construire des expériences digitales uniques toujours à la pointe du web avec Acquia Cloud Site Factory

Guide plateforme FOAD ESJ Lille

Transcription:

N o d ordre :TI2/13/05 2012 / 2013 PROJET DE FIN D ETUDES Présenté pour obtenir le titre de INGENIEUR DE L UNIVERSITE LIBANAISE BRANCHE II Spécialité : Génie Electrique Option : Informatique et Télécommunication Par : Elie ZEIDAN Yakwala Sous la direction de : Dr. Carol AZAR Soutenue le 31 juillet 2013 devant le jury composé de : Dr. Gilles BALLOUZ Dr. Carole AZAR Dr. Rima ABDALLAH Dr. Joseph BOU HARB Dr. Habib TRAD Président Membre Membre Membre Membre Projet préparé à Ebizproduction/Bluedrop

Dédicaces Je dédie ce projet à ma mère qui m a poussé au delà de mes limites, qui avec son amour, son exigence et son attention m a aidé à franchir tout obstacle de mes premiers pas jusqu à la réalisation de ce projet. A ma tante, Siham, ma marraine encore plus exigeante, qui avec sa sagesse a orienté mon passage dans les chemins les plus difficiles A ma sœur Jihane qui m a encouragé à poursuivre mes passions et qui appréciait le moindre de mes exploits. A mes amis d enfance, Nicolas AKL, Elias AOUN, Roudy CHALHOUB, Samuel GEORGE et Jad TANIOS qui ont cru en moi, et qui sont venu à mon aide pendant les phases les plus critiques, et qui ont amplifié ma joie pendant les moments les plus heureux. 1

Remerciements Je tiens à remercier Dr Carole AZAR qui tout au long de mes trois dernières années universitaires, m a orienté académiquement et moralement, qui n hésitait jamais à présenter son aide et son support à chaque occasion. De même, je remercie EbizProduction, son PDG Yann ROTIL pour l opportunité de participer au déclenchement de ce projet, ce qui a dépassé mes plus grandes ambitions. Je remercie les ingénieurs hors-normes Rida MAKSOUR, Joseph AGHNATIOS et Renaud BESSIERES pour leur support, leurs conseils, leur temps, leur direction et la continuité du développement de ce projet. J aimerai remercier Dr Marleine KORDAHI la directrice de notre faculté, Dr Gilles BALLOUZ, le chef du département électrique et électronique, et tout le corps enseignant pour leur bienveillance envers notre éducation et notre progrès. 2

Résumé Dans notre monde actuel le web est considéré comme facteur principal dans la réduction des distances et l amélioration de l échange informatif. Malheureusement avec cette émergence immense, l information est dispersée et mal organisée. Yakwala est une plateforme qui vient en aide pour concrétiser la localisation et l échange effectif de données canalisées. Munie d un affichage géographique actif et de ressources de toutes sortes, Yakwala va rechercher tout contenu relatif à l emplacement de l utilisateur et le mettre à sa disposition. In today's world the web is considered as a key factor in the process of reducing distances and enhancing informative exchange. Unfortunately with this huge emergence, the information is scattered and poorly organized. Yakwala is a platform that helps to achieve the localization and the effective exchange of channeled information. Equipped with an active geographic display and reliable resources of all kinds, Yakwala will search any content related to the location of the user, and put it at his disposal. في عالم اليوم تعتبر شبكة األنترنت عامال رئيسيا في الحد من المسافات وتحسين تبادل المعلومات. لألسف أد ى هذا التضخ م إلى مبعثرة هذه المعلومات الضخمة.ياكواال هي عبارة عن منصة تساعد على تحقيق تمركز المعلومات وتبادلها الف عال و توجيهها. ياكواال مجه زة بأدوات عرض جغرافي ة آني ة و موارد متعددة ليتم البحث عن جميع المحتويات التي لها عالقة بموقع المستخدم لتتاح له. 3

Tables des matières Dédicaces... 1 Remerciements... 2 Résumé... 3 Liste des figures... 7 Liste des tableaux... 7 Liste des pseudo-codes... 8 Liste des abréviations... 9 INTRODUCTION... 10 Chapitre 1. Présentation générale du projet... 11 1.2. Stratégie de développement :... 12 1.3. Marché(s) ciblé(s) par Yakwala... 14 1.4. Yakwala et ses concurrents :... 15 Chapitre 2. IDEE GENERALE DU SYSTEME DE FONCTIONNEMENT... 18 2.1. Concept de base... 18 2.1. Fonctionnement et ergonomie... 18 2.1.1. L objet d une façon générale... 18 2.1.2 Du point de vue du client... 19 2.1.3 Du point de vue du serveur... 19 Chapitre 3. YAKWALA CONCRETISE DANS LE WEB CLASSIQUE :... 21 3.1. Idée générale sur Drupal :... 21 3.1.1. Contenus, ou nœuds... 22 3.1.2. Traitement : modules (PHP)... 24 4

3.1.2.2. Modules personnalisés... 25 3.1.3. Base de données (mysql)... 27 3.1.4. Architecture générale de Drupal... 28 3.2. le developpement de Yakwala sur Drupal:... 30 3.2.1. Drupal interne (php)... 31 3.2.2 Dupal externe (javascript)... 31 3.2.3 Aperçu général... 32 Chapitre 4. NODEJS ET PHP,MONGDB ET MYSQL... 33 4.1 le Nodejs... 33 4.1.1 La base de Nodejs... 33 4.1.2 Caractéristiques... 33 4.2 Critères de comparaison avec PHP... 34 4.2.1 Test envisage par load impact... 34 4.2.2 Le problème PHP/Apache... 37 4.2.3 Express js une framework Nodejs... 38 4.3 L introduction de MongoDB... 38 4.3.2 MongoDB et SQL... 38 4.4 La structure MongoDB pour la catégorisation... 40 4.4.1 Les catégories dans la base... 41 4.4.2 Le php et son nouveau rôle... 42 Chapitre 5. YAKWALA SOUS SA NOUVELLE STRUCTURE... 44 5.1 Les changements principaux... 44 5.2 L interface graphique finale... 45 5

Conclusion... 47 Références Bibliographiques... 49 Annexe A : Big Data et Small Data... 49 Annexe B : Code complet d un robot de catégorisation php... 50 6

Liste des figures Figure 1.1: Yakwala... 11 Figure 2.1: Schéma De L'objet concept... Error! Bookmark not defined. Figure 3.1: Apercu De Taxonomies... 22 Figure 3.2: Interface Graphique Modulaire... 24 Figure 3.3: Interface Graphique De La Disposition Des Nœuds... 25 Figure 3.4: Hook De Base... 26 Figure 3.5: Hook écrasée... 26 Figure 3.6: Noeud Dans La Base... 27 Figure 3.7: Architecture Des Taxonomies... 28 Figure 3.8: Combinaison Des Fonctions... 29 Figure 3.9: Architecture Du Traitement... 30 Figure 4.1: Temps de Réponse Nodejs... 36 Figure 4.2: Reponse PHP... 37 Figure 5.1 Architecture modifiée... 44 Figure 5.2 Interface Yakwala... 45 Liste des tableaux Tableau 4.1 Disposition de la table SQL... 39 7

Liste des pseudo-codes Pseudo code 3.1 L'objet noeud... 24 Pseudo code 3.2 JavaScipt autocomplete... 32 Pseudo code 4.1 Fonction non blocante... 34 Pseudo code 4.2 Nodejs import d'info... 35 Pseudo code 4.3 PHP import d'info... 36 Pseudo code 4.4 MongoDB object... 39 Pseudo code 4.5 MongoDB objet imbriqué... 40 Pseudo code 4.6 Insertion MongoDB categorie... 41 Pseudo code 4.7 Robot de recherche PHP... 43 8

Liste des abréviations Gmap : Google Map JSON : JavaScript Object Notation MongoDB : humongous data base NoSQL : Not only SQL PHP: Hypertext Preprocessor SQL : Structured Query Language XML : Extensible Markup Language Yakwala : y a quoi là 9

INTRODUCTION Là où l'information est actuellement dispersée, il s agit d offrir un outil centralisant les informations hyperlocales sous forme de carte ou de fil d informations, disponibles sur tous les terminaux. Pour ce faire, Yakwala travaille sur la mise en place de services d informations à destination du grand public, tout en permettant aux professionnels d organiser et de dynamiser leurs activités locales. Yakwala entend exploiter un maximum de données pertinentes à l échelle hyperlocale en les enrichissant d informations locales contextualisées. Il s agit d offrir le meilleur dispositif de visualisation possible, en prenant en compte les dimensions temporelles et géographiques des informations recherchées, des actualités locales et des services de proximité dont pourraient avoir besoin les utilisateurs de Yakwala. Ces données qui demandent une grande capacité de traitement et une performance optimale, ont dirigé le développement de Yakwala vers un environnement technologique avancé créant de divers obstacles : Yakwala doit surpasser les services des réseaux proches de son concept déjà en ligne Yakwala doit disposer de ressources d informations légales, considérables et gérables L algorithme de base doit être pratique efficace et élégant pour pouvoir élargir les services proposés Le développement doit avoir lieu à l aide d outils informatiques fiables et fonctionnant d une façon optimale pour assurer une performance adéquate Les méthodes classiques utilisées pour les services web et les plateformes vont être poussées à leur limite de fonctionnement. Pour étendre leur potentiel et assurer une réponse assez rapide du système, les technologies nouvelles du big data viendront en aide. Ces technologies sont munies d une performance supérieure mais demeurent encore immature. Yakwala fait face a un véritable défi de traitement de données combinant la fiabilité des technologies classiques, et la puissance des nouvelles. 10

Chapitre 1. Présentation générale du projet Yakwala est un outil de centralisation de l information locale capable de s adapter aux préférences de chacun, tout en proposant un certain nombre de services en temps réel. La plateforme Yakwala permet à tous les acteurs de la vie locale : De trouver de l information hyperlocale : actualités, agenda, informations générales. De diffuser leurs informations : actualité de la mairie, annonces des commerces locaux, ou encore agenda des associations. D utiliser les services commerciaux : geofencing, publicité géolocalisée et études de marché. D interagir avec leur quartier : Yakwala n est pas un réseau social, c est la proximité qui crée la pertinence. D optimiser facilement leurs connaissances sur le tissu socio-économique local : Yakwala proposera une interface «user friendly» permettant de démocratiser l accès aux données locales (Open Data et Very Small Data). Figure 1.1 Yakwala 11

Pour ce faire, Yakwala s appuie sur le dispositif éditorial et technologique suivant : Un système de transformation de la donnée (publique et privée) en informations et en services. Un traitement de l information issue des sources identifiées sur chaque territoire permettant de sélectionner automatiquement les contenus pertinents. Des tableaux de curation permettant à Yakwala d optimiser la pertinence des informations diffusées sur sa plateforme. Une technologie d analyse des usages des internautes et des mobinautes sur sa plateforme. 1.2. Stratégie de développement : Yakwala s appuie sur un environnement propice à l émergence de son projet pour devenir le premier service d information hyperlocale en France : Accélération de la libération des données publiques et privées depuis la création de la mission Etalab au premier semestre 2011. Maturité des technologies Big Data permettant de construire de nouveaux services autour de l information (Rapport McKinsey Institute, «Big Data : the next frontier for innovation, competition, and productivity», mai 2011) Essoufflement des modèles économiques de la presse locale traditionnelle Evolution du cadre juridique d utilisation des données personnelles (transposition en avril 2012 dans le droit français de la directive européenne dite «Paquet Telecom») Les petites et moyennes entreprises restent à la recherche d outils simples et faciles d accès leur permettant de combler leur retard en matière de numérique (Rapport SRI-Cap Gemini 2011). Les acteurs locaux cherchent à valoriser des pratiques dites durables encourageant le «produire local, consommer local». Yakwala construit une marque se différenciant très nettement de l ensemble des acteurs actuels de l information et des services locaux : Une solution de visualisation à échelle variable s adaptant aux besoins de ses utilisateurs (quartier, arrondissement, ville). Les utilisateurs paramètrent leurs comptes selon leurs préférences : Yakwala ne s appuie pas sur les «cookies» pour contextualiser les informations ou messages publicitaires 12

reçus. Aucun des services de Yakwala ne repose sur l utilisation non-explicitement consentie des données personnelles des utilisateurs. La réutilisation originale et transparente des données permet de bâtir une relation de confiance des utilisateurs à l égard des services proposés tout en optimisant la qualité du ciblage publicitaire local. Une boîte à outils d accompagnement des TPE/PME pour l optimisation de leurs communications web et mobile, de l analyse de leurs zones de chalandise, et de promotion de leurs produits. Yakwala conçoit une plateforme de type Big Data - sur laquelle reposent le site web et les applications permettant de générer d autres services à valeur ajoutée : API permettant de réutiliser les jeux de données traités par Yakwala Mise à disposition d un outil simple d utilisation permettant d analyser les données ouvertes locales Yakwala SAS est une start-up qui a d ores et déjà commencé à structurer son offre, développé la première version de sa plateforme, mais aussi à construire sa marque (de fabrique), à crédibiliser son discours auprès d un public averti, et à s entourer de partenaires et/ou de (premiers) clients. Yakwala dispose déjà d une marque repérée par de nombreux acteurs du traitement de données (Armadillo, Exalead), de l information locale (mise en place d un réseau de médias partenaires), par des entreprises intéressées par le dispositif proposé par Yakwala (Hi-Media), et par quelques acteurs institutionnels encourageant l innovation sur les territoires, la réutilisation de données publiques (Yakwala a été finaliste dans le cadre du premier concours Dataconnexions organisé par la mission Etalab) ou encore le développement d entreprises d envergure européenne et/ou internationale (Cap Digital). Dans le même temps, son expertise reconnue dans le domaine du journalisme, de la curation et des médias sociaux lui a permis de travailler pour le compte de grands comptes spécialisés dans l éditorial, le culturel et la formation : Canal France International, l ESJ-Pro ou encore l Institut français de Nouakchott ont fait appel aux services de Yakwala pour accompagner des professionnels des médias dans leurs montées en compétences sur des outils numériques. Yakwala compte à présent sur la promotion, la diffusion et la prise en main de sa plateforme par ses utilisateurs pour développer ses activités partout en France dans un premier temps, puis en Europe (en anglais d abord, puis en allemand et en espagnol). Pour ce faire, Yakwala a d ores et déjà rencontré un certain nombre d acteurs et de partenaires intéressés. Il lui faut désormais : Structurer ses équipes dans des locaux. Développer dans les meilleurs délais des applications mobiles et tablettes. 13

Automatiser la moisson de données et leurs traitements : géolocalisation, catégorisation, hiérarchisation, restitution. Optimiser les performances de sa plateforme. Amélioration des outils de prise en compte des «préférences» des utilisateurs. Renforcer l équipe Yakwala Data pour exploiter les données ouvertes (au fur et à mesure de leur libération par les collectivités territoriales et par les entreprises). Mettre en place la structure de développement commercial. 1.3. Marché(s) ciblé(s) par Yakwala Yakwala a vocation à créer une plateforme d informations et d interactions hyperlocales duplicable sur tous types de territoires, et disponible aussi bien chez soi, sur son ordinateur, que sur tous les supports mobiles. La centralisation de l information qu elle propose et l ensemble des fonctionnalités qui pourront être développées sont une réponse à la place croissante qu occupent, sur la Toile, les préoccupations locales. En effet, Internet n est plus seulement le meilleur moyen d envoyer un message à l un de ses proches installé à Sao Paulo, ou de lire la presse japonaise en ligne. La Toile irrigue désormais l ensemble de nos habitudes, de nos usages, de nos comportements. La prochaine révolution de l Internet, c est notamment à l échelle locale qu elle se prépare. Et c est sur le web que la bataille de l information locale va se jouer, que l avenir de la publicité et du commerce local va s inventer, et que la ville de demain va prendre forme. Le marché de l hyperlocal, sur la Toile, est aujourd hui extrêmement fragmenté : Les informations pratiques sont disponibles sur les sites des collectivités, sur des sites d informations locaux, ou encore sur les sites des entreprises et commerces locaux. Les réseaux sociaux s emparent assez mal des territoires qu ils recouvrent à l échelle locale. Les commerces sont à la recherche de solutions pratiques, faciles, et abordables, pour faire connaître leurs offres de manière ciblée, optimiser la promotion en temps réel, voire fidéliser leurs clientèles. Les données qui, peu à peu, sont libérées, n ont pas encore été réutilisées à large échelle (pour des audiences locales). Autrement dit, la centralisation de l information locale (au sens large) que l on était en droit d attendre, à l époque des rotatives et de l imprimé, n est plus exactement au rendez-vous des usages. Les audiences migrent volontiers sur la Toile, les entreprises cherchent des espaces 14

adaptés à leurs offres locales, et les administrations courent après leurs administrés sur les réseaux sociaux afin de tenter de les tenir informés. Yakwala se positionne donc sur trois marchés : Publicité locale sur Internet Publicité locale sur mobile Services marketing aux entreprises Par ailleurs, Yakwala travaille d ores et déjà sur la question des données ouvertes (Open Data) et des services associés. 1.4. Yakwala et ses concurrents : Yakwala étant une plateforme généraliste se construisant sur des marchés en pleine expansion, l entreprise connaît nécessairement plusieurs types de concurrence. Toutefois, Yakwala apporte, pour chacun des sites susceptibles de le concurrencer, une plus-value en termes d usages, une marque de fabrique différente, voire une complémentarité. Bref aperçu de la concurrence : Ayant tout d abord vocation à héberger des informations géolocalisées, Yakwala va devoir trouver sa place face à des sites d informations générales, pratiques, ou de services localisées. Topix est un exemple de site (aux Etats-unis) réunissant, sur une même plateforme, un ensemble d informations extraordinairement disparates par agrégation. Le plus de Yakwala : Curation des informations hyperlocales. En termes de réseaux sociaux géolocalisés, de nombreux sites et applications ont d ores et déjà été lancés, aux Etats-Unis, en Europe ou en Asie. Mais aucun d entre eux ne se positionne, comme Yakwala peut le faire, sur l information et l interaction hyperlocales. Que ce soit 15

Foursquare, mais aussi Loopt ou GoWalla (racheté par Facebook en mars 2012), les enjeux sont ludiques et/ou strictement commerciaux. Le plus de Yakwala : La plateforme est centrée autour des informations et de services locaux. Aux Etats Unis ou au Royaume-Uni (qui connaissent des entreprises pionnières en la matière), la concurrence dans le secteur de l information hyperlocale est de plus en plus forte.il s agit de sites destinés à faciliter l installation des nouveaux venus dans une ville qu ils ne connaissent pas, à renforcer la cohésion sociale de ces mégalopoles en mettant en relation le voisinage, et à lutter contre l isolement des individus. Everyblock est un site dispose de nombreux adeptes qui font de celui-ci un moyen de communication connu de tous, un outil censé faciliter l intégration sociale, moyen de promotion et de partage de connaissances sur sa propre ville. Patch.com et Meporter.com sont également deux exemples, portés respectivement sur la vie locale en général, et sur l actualité en particulier. Au Royaume-Uni, c est le quotidien The Guardian qui a lancé le site hyperlocal N0tice.com. Le plus de Yakwala : Transformation de la donnée ouverte (Open Data) en information et en service. Au-delà, Yakwala n est pas la première plateforme à miser sur l implication des contributeurs pour collecter des informations. Le site des Observateurs de France 24 est un bon exemple de cette grammaire participative : ce sont des observateurs amateurs, non rémunérés qui trouvent l information, et ce sont des journalistes qui, à Paris, éditent les contenus. 16

Le plus de Yakwala : La plateforme distingue l espace «Actualités» des informations produites par les contributeurs. Enfin, l ensemble des sites des médias locaux (PQR, TV locales, ou encore pure players locaux) sont susceptibles, où qu ils se trouvent, de concurrencer Yakwala dans la mesure où c est précisément leur cœur de métier que de diffuser de l information locale. Les exemples sont légion en France : Leparisien.fr, Ouest-France.com ou Rue89Lyon. Le paysage de l information locale est vaste, dense, et riche. Yakwala compte s appuyer sur ce réseau professionnel reconnu pour la qualité de son travail pour nouer des partenariats sur une base avantageuse pour chacun des contractants : partage des revenus publicitaires, augmentation du trafic, visibilité accrue. Le plus de Yakwala : Outil de «centralisation décentralisée». Yakwala recense l ensemble des informations locales à l échelle hexagonale. Yakwala est une plateforme centralisant les informations hyperlocales. A ce jour, il n existe pas d acteur comparable sur le marché. Des offres segmentées existent bien entendu, mais Yakwala offre une série de fonctionnalités originales permettant à tous les acteurs locaux d interagir dans des zones géographiques déterminées. D autres types de concurrences et/ou de modèles approchants peuvent être pris en compte : Geokiwi, qui a présenté son modèle de «voisinage social» au cours de la Conférence LeWeb 2011, Yakaz qui agrège des petites annonces locales, Pages Jaunes, qui propose aux professionnels locaux des solutions clé-en-main pour la visibilité en ligne, ou encore marésidence.fr, qui formalise sur la Toile les échanges entre voisins. Yakwala est un dispositif qui va plus loin : c est un outil d immersion dans son environnement : en bas de chez soi, en week-end ou en voyage, c est une fenêtre sur le territoire. Enfin, ses services à la croisée du temps réel, du territoire et des préférences des utilisateurs offrent de belles perspectives. 17

Chapitre 2. IDEE GENERALE DU SYSTEME DE FONCTIONNEMENT 2.1. Concept de base Yakwala traitera l information comme une entité, un objet disposant de plusieurs paramètres interdépendant. L information sera crée (import ou création), catégorisée et localisée. La publication sera faite en ligne et le contrôle,l ergonomie et les révisions seront faites à l aide des agents éditeurs, d où la notion de journalisme déjà présente dans le cœur de Yakwala. Le traitement et la gérance de données pour l optimisation des services, leur analyse pour la poursuite technique et qualitative seront assuré par des algorithmes spécifiques et adaptifs. Tant que pour l accessibilité, cette information sera trouvable et facile à rechercher grâce aux outils disposés que l on discutera plus tard. L information stockée sera arrangée pour correspondre a une base de données performante, assurant une facilité dans le traitement et l organisation. 2.1. Fonctionnement et ergonomie L objet sera discuté dans les différents points de vue principaux de n importe quel échange sur un réseau web. 2.1.1. L objet d une façon générale L information sous forme d objet dispose de : L information de base recherchée qui peut être un article, un évènement, une offre, une annonce etc... accompagnée de la date de création, et quelques restrictions. L auteur du contenu en tant qu utilisateur authentifié, agence ou entreprise participante La source d information pour le référencement, en cas de besoin d information supplémentaires, et l ouverture des sources mutuelle La catégorie pour l ergonomie visant la facilite du choix de l internaute, et la facilite de gérance ciblant la performance de la catégorisation en termes de base de données 18

Figure 1.1 Schéma de l objet concept Les restrictions suivant les accès de l utilisateur (anonyme, authentifie, éditeur, administrateur) ce qui permettra la division des taches ou privilèges de chaque utilisateur suivant sa contribution, sa position, son abonnement.. Les informations temporelles/géographiques pour l intégration de ce nœud dans les calendriers et les cartes disposées 2.1.2 Du point de vue du client Cette stratégie envisagée mettra en vigueur la disposition de l information vis-à-vis de l internaute qui pourra accéder à l information depuis : L emplacement géographique : a l aide d outils divers publiés et utilisés déjà, Gmap par exemple, ce qui facilitera l accès de l information de ce coté. La disposition temporelle : concrétisée par un calendrier ou un filtrage adéquat pour la recherche relative aux intervalles temporels. La catégorie : à l aide de filtres ou de systèmes de recherche, cette recherche sera orientée suivant une approche sémantique traitant les sujets d intérêts de l internaute. Le titre ou les mots clés : en cas de recherche précise, Yakwala se présentera comme un engin de recherche classique. L auteur ou la référence : l internaute pourra retrouver toutes les informations ou nœuds relatifs à la source désirée. 2.1.3 Du point de vue du serveur 19

D autre part, ce développement de Yakwala basé sur des entités, indépendantes mais pseudoconnectées, regroupant tous ces paramètres, facilitera le traitement interne : L entité sera stockée dans la base de données en tables relationnelle pour optimiser les catégorisations déjà discutées L entité aura une interface graphique sous forme de pointeur géographique, et sous forme de pages informative. L entité sera traitée par le logiciel sous forme d objet pour faciliter la gérance et l utilisation de tous les paramètres. Ayant bien défini le concept de base Yakwala peut être mis en action sur une interface web ou une application mobile, notre projet consiste à implémenter la version web 20

Chapitre 3. YAKWALA CONCRETISE DANS LE WEB CLASSIQUE : Yakwala se situe, selon la classification INSEE, dans le secteur «Information et communication» : il se trouve plus précisément à la croisée deux sous-catégories : les «services d informations» et le «traitement de données». Là où l industrie traditionnelle de l information et de la communication ne sait plus suivre et accompagner l évolution des usages comme des opportunités offertes par les nouvelles technologies, il semble déterminant de construire des outils permettant de répondre aux (nouveaux) besoins des utilisateurs, tout en apportant aux professionnels les clés de ce nouveau monde. Yakwala à été développé dans un environnement de web classique utilisant le PHP et le JavaScript principalement, a l aide du CMS Drupal disposant de fonctionnalités, modules et librairies impressionnante. 3.1. Idée générale sur Drupal : La facilite de Drupal en tant que CMS du point de vue technique et gestion de taches, présente des avantages inévitables dans le développement et l organisation du projet. Un CMS est un logiciel permettant la gérance des informations en ligne d une manière facile et performante. Muni de modules specialisés et open source, Drupal peut venir a l aide de la plupart des projets orientés web. Drupal est un CMS(content management system) basé sur l usage du PHP et JavaScript généralement.drupal gère l information sous forme de nœuds, l extension de ces derniers en fonctionnalités ou paramètres se repose sur l usage de modules ajoutant des outils, des options.. Drupal dispose de modules diversifiés, disposés comme plug-ins plutôt, multifonctionnels et open source permettant la division et la réduction des taches, la personnalisation des fonctionnalités et l organisation du projet (modules relatifs au contenu, à la categorisation, aux outils media,aux utilisateurs, aux pages, au partage de fichiers..) L interface graphique de Drupal pour la configuration et le développement, réduit l analyse technique et le souci des bugs puisque les modules sont «pseudo-standardisés» La création et la gérance de la base de données relationnelle est complètement assigne au moteur de Drupal 21

Drupal est un CMS pseudo orienté objet, muni de hooks, fonctions relatives a un objet ou un module, permettant l écrasement d une fonctionnalité par défaut, ou l élargissement de son impact. 3.1.1. Contenus, ou nœuds Drupal considère tout contenu qu il traite comme nœud". Un article sera un nœud par exemple. Un formulaire aussi. Ce nœud a un type : forum, article de fond, actualité, blog, commentaire, formulaire, media, image, séminaire.. etc. : la forme ou le type ne dispose pas d une architecture prédéterminée, ce qui rend le contenu aisément «customizable». D autre part, malgré l apparence adaptive de Drupal, le développeur, l administrateur, l éditeur.. Doivent s habituer à sa logique particulière. Le nœud possédera par ailleurs, conformément aux spécifications de son type, des champs : nom, type, date, auteur, image éventuelle, corps, votes de la communauté sur son contenu, etc. Figure 3.1: Apercu De Taxonomies Un nœud peut être attaché simultanément à différents termes taxinomiques ou catégories. Un article traitant le tour de France pourra être «taggé» France (sous catégories d actualités)et Cyclisme( sous catégorie de sport). Le concepteur ou l'administrateur ne sont donc pas obligés d'insérer leurs contenus dans une hiérarchie initiale unique. Il faut simplement que les taxinomies restent cohérentes (A ne peut pas dépendre de B dans l'une pendant que c'est B qui dépend de A dans une autre, ce qui n'aurait de toute façon aucun sens). À sa création, un nœud se voit attribuer un node ID (NID) qui le caractérise. Au fur et à mesure de ses révisions, s'il y en a, le système incrémentera un compteur de revision ID (VID). Le concepteur peut choisir de conserver ou non les révisions autres que la plus récente. Chaque nœud possède aussi un titre, ce qui permet aux administrateurs de les gérer de façon plus 22

commode. Le système de révisions successives permet de revenir à une version antérieure si besoin. La structure de base d un nœud peut être visualisée a l aide de cet exemple : stdclass Object ( [nid] => 13 [type] => story [language] => [uid] => 1 [status] => 1 [created] => 1202300504 [changed] => 1202300759 [comment] => 2 [promote] => 1 [moderate] => 0 [sticky] => 0 [tnid] => 0 [translate] => 0 [vid] => 27 [revision_uid] => 1 [title] => My new node [body] => Blah blah blah [teaser] => Blah blah blah [log] => [revision_timestamp] => 1202300759 [format] => 1 [name] => admin [picture] => [data] => a:0:{} [last_comment_timestamp] => 1202300504 [last_comment_name] => [comment_count] => 0 [taxonomy] => Array ( [1] => stdclass Object ( [tid] => 1 [vid] => 1 [name] => Art [description] => [weight] => 0 23

) [2] => stdclass Object ( [tid] => 2 [vid] => 1 [name] => Drupal [description] => [weight] => 0 ) ) ) [ ] Pseudo code 3.1 L'objet noeud Dans le pseudo-code ci dessus on arrive à distinguer les différents paramètres du nœud, tous prédisposés à l aide de Drupal. 3.1.2. Traitement : modules (PHP) 3.1.2.1. Modules Standards Figure 3.2: Interface Graphique Modulaire 24

Leur diversité et la facilité de leur utilisation, permettent de développer le projet d une manière séquentielle, chaque fonctionnalité séparément. Cette logique de développement permet d élargir le potentiel et la capacité indéfiniment, sans retour ou restructuration. Les modules sont divisés en Core Modules, et Extented Modules : -Les cores modules sont les modules de base indispensables. -Les extended modules sont les modules optionnels relatifs aux besoins du projet. Voici quelques modules(relatif aux besoins de Yakwala) : -Content pour la gerance des nœuds (core) -Taxonomy (le module «taxonomy» était responsable de la catégorisation dans l exemple cité précédemment.)(core) -Views,pour regrouper les contenus dans une page appelé «Vue»(extended) -Menu pour la création des menus (core) -Gmap pour assurer la disposition géographique de la vue. (extended) Figure 0.3 Interface Graphique De La Disposition Des Nœuds 3.1.2.2. Modules personnalisés Drupal est un système de gestion de contenu (CMS) libre et open-source publié sous la licence publique générale GNU,donc n importe quelle fonctionnalité peut être étendue et «customise», suivant les besoins spécifique du projet. Cette customisation est organisée d une manière à éviter les «bugs» qui pourront arrêter le 25

fonctionnement optimal du site. Elle se base sur des hooks, des fonctions qui écrasent «overrides» la fonction procurée à partir d un module- que l on désire modifier, tout en la laissant intacte. Donc le code de base est inchangeable, juste «remplaçable» tout en conservant sa structure, ses échanges et ses dépendances. Techniquement, les fichiers originaux restent intacts, mais la compilation des fichiers php modifiera les priorités assignées. L implémentation des hooks sera prise en considération et devient fonctionnelle, alors que le code de base sera négligé. Exemple de fonctionnalité par default traitant une forme Figure 3.4 Hook De Base L écrasement relatif de cette fonction Figure 3.5 Hook écrasée La variable $form a éte modifiée et utilisee dans le deuxieme hook sans changements dans le code de base. Le compilateur prendra en considerations ces changements sans avoir recours au script defini par defaut. 26

3.1.3. Base de données (mysql) Figure 3.6 Noeud Dans La Base Drupal organisera la base de données relationnelle avec les paramètres correspondants..l insertion, les modifications, les délétions seront gérées par le moteur php de drupal, sans nécessité a un administrateur de base de donnees, ce qui economise le temps et l effort qu on exercait auparavant. Les nœuds seront stockes dans une base de donnéesd une facon typique avec tous les paramètres comme colonnes.(nid,vid,language,titre..) Les taxonomies par exemple seront divisées en plusieurs tables : Indexage de la categorie, description de la categorie, hierarchie de la categorie, liste des categories ou taxonomies disponibles..la table d indexage assurera la relation entre les nœuds et les taxonomies correspondantes assignées a chacun. 27

Figure 3.7. Architecture Des Taxonomies Des tables et relations analogique seront structurées pour les autres paramètres du nœud assurant une précision et une organisation convenable. Les auteurs, les informations geographiques, les references tous auront des tables similaires. Ces paramètres ne peuvent pas manquer d importance par rapport a l information de base, puisque ces derniers sont aussi des entités exploitables par les internautes et Yakwala. 3.1.4. Architecture générale de Drupal Les differents composant mentionnes et élabores déjà vont collaborer pour assurer la fonctionnement d une plateforme puissante. Les taches seront divisées et organisées sans le souci de possibles erreurs et ou alertes non désirées. La combinaison de toutes ces fonctionnalités se manifestera suivant l architecture du système ci-dessous. 28