Rapport de Stage >Addicta / USTL. module d interfaçage. Facebook. Addicta 52,54 Rue de roubaix Tourcoing - France

Dimension: px
Commencer à balayer dès la page:

Download "Rapport de Stage >Addicta / USTL. module d interfaçage. Facebook. Addicta 52,54 Rue de roubaix 59200 Tourcoing - France"

Transcription

1 [RAPPORT DE STAGE] Ayoub NEJMEDDINE Mise en œuvre d un module d interfaçage Facebook Addicta 52,54 Rue de roubaix Tourcoing - France Stage réalisé du 02 Avril au 30 Juin 2012 Sous la tutelle de : M. Rénald Duhamel et M. L e n g l e t L u d o v i c Ioan Marius BILASCO: Professeur à l université Année universitaire : 2011 / 2012 A p p l i c a t i o n F a c e b o o k Page 1

2 Dédicace Avant tout, je dédie ce modeste travail à mes parents afin de leurs exprimer tout mon amour et mon respect. Pour les sacrifices qu ils ont consentis à mon égard. J espère que ce travail puisse être le témoignage de mes remerciements, je le dédie également à : Tous mes enseignants de l université de Lille1, Et Tous mes amis. A p p l i c a t i o n F a c e b o o k Page 2

3 Remerciements Au terme de ce travail je tiens à remercier chaleureusement et respectivement tous ceux qu ont contribués, de près ou de loin, à la réalisation de ce travail, à savoir : M. Rénald Duhamel le Directeur Général de la société Addicta pour son accueil au sein de son entreprise, Mon tuteur de stage M. Lenglet Ludovic de m avoir encadré durant cette période. Ses recommandations ont été essentielles pour mener à bien le projet qui m a été confié. Mon tuteur universitaire M. Ioan Marius BILASCO de m avoir suivi tout au long de mon stage et toutes les personnes qui m encourageaient durant la période de réalisation de ce travail. Merci à tous... A p p l i c a t i o n F a c e b o o k Page 3

4 [SOMMAIRE] Introduction... 5 PREMIERE PARTIE : Présentation de l entreprise Présentation d Addicta... 7 Introduction 1.2-Missions et activités Clients DEUXIEME PARTIE: REALISATION DU PROJET Objectifs et cahier des charges Introduction Description de la demande Déroulement du projet Méthodes et outils utilisés IntroductionIntro Outils et technologies de développement Méthodes d'analyse et de conception Spécification technique Fonctionnnement de MVC dans l application Mise en œuvre du CakePHP pour notre application ductio Mise en œuvre framework Facebook pour l application Architecture et implémentation Architecture MVC Coneption Modèle conceptuel de données Modèle physique de données Implémentation Autres projets Spécification fonctionnelle Présentation des interfaces Espace utilisateur Espace administrateur Résultats et difficultés rencontrées Résultats obtenus Difficultés rencontrées Conclusion Glossaire Bibliographie Annexes A p p l i c a t i o n F a c e b o o k Page 4

5 [INTRODUCTION] Le stage revêt une importance cruciale dans le cursus de formation de tout étudiant. Il est Introduction considéré comme un chantier où l on peut valider les connaissances théoriques acquises lors de notre formation universitaire. C est aussi une fenêtre donnant sur la réalité du marché et permettant à l étudiant une initiation et une expérimentation, quoique brève mais enrichissante en connaissances et aptitudes utiles pour tout développement professionnel et personnel. Dans le cadre de ma formation universitaire afin de valider la troisième année de Licence Informatique, j ai effectué un stage de trois mois au sein de l entreprise Addicta. Ce rapport présente le projet que j ai réalisé et le travail que j ai effectué lors de mon stage, IntroductionIntrod qui s est déroulé 02 Avril au 30 Juin Aujourd hui, 900 millions de membres sont inscrits sur Facebook, ce nombre énorme a fait de ce réseau social une immense communauté regroupant tous les types d entreprises. Cette statistique a fortement participé à la naissance de ce projet. Addicta eut alors l'idée de créer une application d automatisation avec Facebook qui a deux objectifs principaux : le premier uctio consiste au contrôle de page Facebook afin de permet aux commerçants de gérer la réputation de leurs entreprises. Le deuxième concerne le contrôle parental qui permet aux parents de préserver la sécurité de leurs enfants inscrits sur Facebook. Donc l objectif de ce stage était de développer une application externe qui peut se connecter au site de Facebook, afin de permettre aux utilisateurs, d une part, d analyser leur Mur et de recevoir des alertes sur critère, et d autre part, de publier des messages sur un mur Facebook en fonction de critères, en utilisant le framework CakePhp afin de développer cette application plus rapidement, proprement et d'augmenter l'évolutivité de projet. Donc ma mission a consisté à étudier le framework de développement Facebook et CakePhp et ensuite de concevoir et de développer une application répondant à ces critères. Mon rapport de stage présentera donc mes douze semaines de stage au sein d Addicta. Je commencerai par une présentation de l entreprise. Puis, je développerai le projet qui m a été confié et les moyens utilisés pour parvenir à mes fins. Enfin, je dresserai un bilan de l ensemble des connaissances apportées par ce stage autant sur le plan personnel que professionnel. A p p l i c a t i o n F a c e b o o k Page 5

6 [PREMIERE PARTIE] Présentation de l entreprise A p p l i c a t i o n F a c e b o o k Page 6

7 1[Présentation d Addicta] Cette partie expose la présentation de l entreprise où j ai effectué mon stage, sa fiche technique, ses missions et son organigramme ainsi que ses activités. 1.1 Présentation de l entreprise ADDICTA, a été créée en 01 décembre L'entreprise est une Société par actions simplifiée (SAS) au capital de EURO, son siège est immatriculé auprès des greffes et tribunaux de la ville de Roubaix-Tourcoing. Elle est enregistrée avec le code APE 6202A qui correspond au secteur Conseil en systèmes et logiciels informatiques Localisation Addicta se trouve au 52/54 Rue de Roubaix à Tourcoing, et est située à quelques mètres de station de métro Tourcoing Sébastopol. Sa situation offre de nombreux avantages. En effet, la proximité de l entreprise au métro ou encore l autoroute facilite l accès des employés à leur lieu de travail. Figure1 : Plan d accès à Addicta A p p l i c a t i o n F a c e b o o k Page 7

8 1.1.2 Fiche technique : Raison sociale Forme juridique Addicta Société par actions simplifiée(sas) Capital social Objet Siège Social Président Directeur général 52/54, rue de Roubaix TOURCONG M. Ludovic Lenglet M. Rénald Duhamel Date de création 01 décembre 2011 L effectif de l entreprise 4 personnes Téléphone Site web contact@addicta.net Figure2 : Fiche technique de l entreprise Addicta A p p l i c a t i o n F a c e b o o k Page 8

9 1.1.3 Organigramme d Addicta: Président général M.Ludovic Lenglet Directeur général M.Rénald Duhame Stagiaire graphiste Emmanuel Lemettre Stagiaire développeur Ayoub Nejmeddine Figure3 : Organigramme de l entreprise Addicta 1.2 Activités et missions: La mission de la société Addicta va bien au-delà du développement et de la commercialisation de logiciels. Addicta a choisi de servir la communauté économique dans son ensemble, il propose des différents services et solutions aux différentes entreprises : A p p l i c a t i o n F a c e b o o k Page 9

10 Grands Comptes : - Développement des applications multicanaux spécifiques selon le domaine d activité. - Proposition des applications en mode d accès Saas (Software as a Service) - Mis en place des stratégies de communications suivant le besoins des clients. - Création des interfaces des applications sur demande grâce à des Web Services. - Proposition des solutions pour contrôler les réseaux sociaux. PME-PMI : - Réalisation des sites plaquettes. - Réalisation des sites e-commerce. - Création des newsletters . - Proposition des solutions de gestion des campagnes. Commerçants: - Création des animations commerciales. - Accompagnement et conseil sur la mise en place de solutions informatiques et marketing. - Création des sites internet. - Transformation des fiches clients en fichiers informatiques. Figure4 : Les différents services proposés par Addicta A p p l i c a t i o n F a c e b o o k Page 10

11 1.3 Clients : De nombreuses entreprises nationales et internationales ont fait confiance à Addicta. Voici les principaux clients d Addicta : Le Passeport Gourmand : Le guide restaurant du réseau n 1 de l'édition gastronomique régionale. Mon Pack Santé : Un site qui propose des offres exclusives en complément alimentaires avec pour chaque offre une vidéo conseil. Mercedes Benz : Mercedes-Benz est une marque allemande d'automobiles, de tracteurs et de camions indépendante fondée en Aggeria ferme : Une ferme qui vente en ligne de produits fermiers du Pays Basque. L AS DE L'IMMOBILIER : Une agence à Tourcoing, regroupe un large choix d'annonces immobilières actualisées régulièrement. A p p l i c a t i o n F a c e b o o k Page 11

12 [DEUXIEME PARTIE] Réalisation du projet A p p l i c a t i o n F a c e b o o k Page 12

13 2[Objectifs et cahier des charges] Cette section présente la description du projet. Dans un premier temps, j expose le contexte et l objet du projet. Dans un deuxième temps, je décris les fonctions et les objectifs auxquels l application doit répondre. 2.1 Introduction : L application a deux objets principaux : Contexte et objectif du B to B : Une source AFP a répertorié plus de 900 millions de membres sur Facebook. Ce dernier représente un terrain propice au développement de nouvelles stratégies et applications commerciales. Aujourd hui la plupart des entreprises ont désormais des pages Facebook.Ce dernier est devenu un lieu idéal pour les marques qui souhaitent se faire connaître à moindre coût, ou soigner leur e-réputation. A force d utiliser le réseau social Facebook par les entreprises, Addicta s est très vite aperçu que les commerçants et les professionnels n'avaient pas d'outil spécialisé pour contrôler le flux passé sur leurs pages Facebook afin de garder l image de leurs entreprises. Addicta eut alors l'idée de créer une application qui interagit avec Facebook et qui donne la possibilité aux professionnels de créer des déclencheurs permettant de recevoir une alerte, soit sous forme d , soit sous forme de SMS selon leurs choix, dès qu une personne écrit un message qui contient une des expressions d alerte que le commerçant spécifie au moment de la création du déclencheur Contexte et objectif du B to C : Le réseau social Facebook exige actuellement que ses utilisateurs soient âgés d'au moins 13 ans, mais beaucoup de jeunes mentent à propos de leurs âges pour s'y inscrire. Selon une étude américaine menée par MinorMonitor, un organisme dédié à la surveillance parentale sur les réseaux sociaux, plus d'un mineur sur trois inscrit sur le réseau social aurait moins de 13 ans. Addicta avait souligné qu aucune solution n a été trouvée concernant ce cas, car les parents ne peuvent pas accompagner leurs enfants tout au long de leur utilisation d internet. Pour mettre un terme à cette situation, Addicta a pris l'initiative de réaliser une première application répondant à ce besoin en offrant une solution qui permettait de connecter le compte de A p p l i c a t i o n F a c e b o o k Page 13

14 l'enfant à l application. Cette dernière peut envoyer des SMS ou s à ses parents dès qu une personne publie ou envoie un message qui contient une des expressions d alerte définies par eux. Cette application aidera au mieux les parents à préserver la sécurité de leurs enfants dans un environnement en ligne qui évolue". 2.2 Description de la demande: Après avoir parlé avec mon tuteur de stage des principaux concepts du fonctionnement de l application, un cahier des charges général est alors établi pour la réalisation du projet Objectifs et fonctions : L objectif principal de ce stage est le développement d une application externe qui peut se connecter au site de Facebook pour récupérer et envoyer des informations des utilisateurs, afin d analyser leur mur Facebook chaque 15 minutes. Les 2 fonctionnalités principales sont : - L analyse d un Mur Facebook, et la programmation d alerte sur critère. - L écriture de message sur un mur Facebbok en fonction de critères (déclencheur). Les objectifs de second niveau, découlant des objectifs principaux, sont : L application devra permettre aux utilisateurs de : - Créer un compte et le lier à leur compte Facebook. - Ajouter, modifier et supprimer des déclencheurs. - Ajouter, modifier et supprimer des comptes Facebook. - Affecter les expressions d alertes (déclencheurs) à un compte Facebook. - Choisir le media d alerte (SMS / ) - Recevoir un SMS, ou les deux selon leurs choix. L application devra analyser un mur en : - Utilisant OAuth pour demander à Facebook d authentifier un utilisateur. - Interrogeant Facebook tous les 15 minutes pour accéder à certaines informations. - Vérifiant les expressions définies dans le déclencheur. - Envoyant sur le média choisi si le nombre d occurrence d une des expressions>0. A p p l i c a t i o n F a c e b o o k Page 14

15 L application devra également permettre à l administrateur de : - Visualiser, supprimer, modifier et ajouter un utilisateur via le compte administrateur. - Affecter pour chaque utilisateur un nombre de déclencheur, action et alerte. - Affecter une date de début et fin de validité du compte utilisateur. 2.3 Déroulement du projet : Planification : La réalisation de ce projet s est déroulée entre le 2 er Avril et le 30 Juin Le stage se déroulera en 4 parties dans cet ordre : - Une étude sur le Framework de développement Facebook permettant de réaliser l interaction entre l applicatif et Facebook afin de spécifier les interactions possible. - La spécification fonctionnelle décrivant l ensemble des fonctionnalités et des écrans de l applicatif. - Une spécification technique décrivant l architecture applicative de l application. - Développement de l application. A p p l i c a t i o n F a c e b o o k Page 15

16 3[Méthodes et Outils Utilisés] Cette section présente dans un premier temps les différents outils et langages utilisés dans ce projet en plus de HTML et CSS que sont des bases pour créer n'importe quelle page web. Et dans un deuxième temps elle expose les phases de développement et d implémentation du projet. 3.1 Outils et technologies de développement: Les outils sont divers et ont un rôle bien spécifique dans l application. Voici les différents outils et technologies dont je me suis servi pour mener à bien mon projet Langages et SGBD: A- PHP PHP (sigle de PHP: HyperText Preprocessor) est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP, mais pouvant également fonctionner comme n'importe quel langage interprété de façon locale, en exécutant les programmes en ligne de commande. PHP est un langage impératif disposant depuis la version 5 de fonctionnalités de modèle objet complètes. En raison de la richesse de sa bibliothèque, on désigne parfois PHP comme une plate-forme plus qu'un simple langage. Les versions actuelles de PHP (à partir de PHP 5) permettent de programmer orienté objet, en créant des classes contenant des attributs, des méthodes, et des instances de classes. L'héritage entre les classes existe aussi. J ai choisi ce langage car je possède quelques années d expérience d utilisation de PHP, de plus, le fait que le framework CakePhp utilise aussi ce langage justifie totalement ce choix. B- Java Script JavaScript est un langage de programmation de scripts principalement utilisé dans les pages web interactives mais aussi côté serveur. C'est un langage orienté objet à prototype, c'est-à-dire que les bases du langage et ses principales interfaces sont fournies par des objets qui ne sont pas des instances de classes, mais qui sont chacun équipés de constructeurs permettant de générer leurs propriétés, et notamment une propriété de prototypage qui permet d'en générer des objets héritiers personnalisés. A p p l i c a t i o n F a c e b o o k Page 16

17 C- HTML HTML (HyperText Markup Language) est le format de données conçu pour représenter les pages web. C est un langage de balisage qui permet d écrire de l'hypertexte, d où son nom. HTML permet aussi de structurer sémantiquement et de mettre en forme le contenu des pages, d inclure des ressources multimédia, des formulaires de saisie, etc... Il est souvent utilisé conjointement avec des langages de programmation (JavaScript, PHP ) et des formats de présentation (feuilles de style en cascade). D- CSS CSS (Cascading Style Sheet) est un langage permettant de décrire la présentation de documents HTML. Il permet de séparer la structuration d'une page web de la mise en forme de son contenu. E- MySql MySQL est un serveur de bases de données relationnelles SQL, développé dans un souci de performances élevées en lecture, ce qui signifie qu'il est davantage orienté vers le service de données déjà en place que vers celui de mises à jour fréquentes et fortement sécurisées. Il est multi-thread et multi-utilisateur. C'est un logiciel libre développé sous double licence en fonction de l'utilisation qui en est faite : dans un produit libre ou dans un produit propriétaire. Dans ce dernier cas, la licence est payante, sinon c'est la licence publique générale GNU (GPL) qui s'applique. La base de données MySQL est devenue la base de données open source la plus populaire au monde grâce à sa haute performance, sa fiabilité et sa simplicité d'utilisation. C est pour cela que j ai choisi d utiliser MySQL pour notre application Technologies : A- API Facebook Le stage a commencé par une période d étude sur le framework de développement Facebook sur le site web Ce célèbre framework permet d utiliser les modules de connexion et autres modules sociaux sur des sites web ou sur des applications mobiles, afin d'accéder aux informations des utilisateurs à travers l'open graph ou Facebook SDK en passant par le protocole Oauth2.0. Il permet aussi de créer des applications sur le réseau social Facebook. A p p l i c a t i o n F a c e b o o k Page 17

18 Open graph Le protocole Open Graph permet de transformer toute page du web en objet riche intégré dans le graph social. Au sein de l'écosystème Facebook, il permet à n'importe quelle page web d'avoir les mêmes fonctionnalités qu'une Page Officielle sur Facebook.com. La simplicité de développement est le but premier du protocole Open Graph ce qui a beaucoup influencé les décisions autour de sa conception technique. Facebook SDK Facebook met à disposition plusieurs SDK permettant d'utiliser leur API. J ai utilisé le SDK php pour ajouter l option connecté avec Facebook, et le SDK JavaScript pour accéder à toutes les fonctionnalités de l'api graphique et boîtes de dialogue via JavaScript. Il fournit un ensemble riche de fonctionnalités côté client pour l'authentification. Protocole Oauth2.0 C est un Protocole libre utilisé par les APIs de Facebook Google, Twitter Il permet de sécuriser l accès aux ressources via un token (clé permettant un accès avec une durée définie). La plate-forme Facebook utilise OAuth 2.0 pour l'authentification et l'autorisation. B- Framework CakePhp CakePHP est un framework web libre écrit en PHP suit le motif de conception MVC (Modèle-Vue-Contrôleur). En tant qu un framework, il facilite et accélère le développement des sites et d'applications Internet et Intranet. Voici un aperçu rapide des caractéristiques du CakePHP : Compatible avec les versions 4 et 5 de PHP. Fonctions CRUD (create, read, update, delete) intégrées pour les interactions avec la base de données. Génération de code. Architecture MVC pour une plus grande maintenabilité et évolutivité. Dispatcheur de requêtes avec des URLs propres et personnalisables grâce un système de routes. Validation intégrée des données. Système de template rapide et souple (syntaxe PHP avec des Helpers) Helpers (assistants) de vue pour AJAX, JavaScript, formulaires HTML. Components (composants) intégrés : , Cookie, Security, Session et Request Handling. Nettoyage des données. A p p l i c a t i o n F a c e b o o k Page 18

19 Système de cache souple. Localisation et internationalisation. Fonctionne sur n importe quelle arborescence de site web. Ces multiples qualités, ainsi qu'une documentation très riche, sa communauté très active et son utilisation de l'architecture MVC m'ont orienté vers cet outil. C- jquery jquery est une bibliothèque JavaScript libre qui porte sur l'interaction entre JavaScript (comprenant AJAX) et HTML, et a pour but de simplifier des commandes communes de JavaScript. La première version date de janvier De nos jours, il est compliqué de développer une application web rencontrant les critères de «beauté» en utilisant uniquement le (x)html/css bien que l'arrivée de CSS3 et HTML5 doit changer la donne. Il faut, dans la majorité des cas avoir recourt au javascript ou au flash afin d'avoir un site «vivant». Dans ce projet, le jquery a été choisi car il est plus souple et plus léger. Voici quelques exemples de l utilisation du code JavaScript dans notre application: ouvrir des pop-up (des petites fenêtres qui s'ouvrent devant la fenêtre principale). faire défiler un texte. insérer un menu dynamique (qui se développe au passage de la souris). afficher des alertes. Afficher des messages de confirmation. Contrôler la saisie de l utilisateur dans les formulaires. D- Twitter bootstrap : Twitter bootstrap est une feuille de style CSS proposant un ensemble de grille, style, typographies, messages etc. permettant de démarrer le webdesign d'un site web rapidement. Développé par Twitter. Pourquoi utiliser Twitter bootstrap? Cette librairie permettra de commencer une intégration de site web à partir d'une base solide et testée. La librairie a été développée avec Less. Elle comporte: Un système de Grid CSS en 940px Un système de layout (Avec colonne ou sans...) Les typographies initialisées pour les différents éléments de texte en HTML Des tableaux skinnés A p p l i c a t i o n F a c e b o o k Page 19

20 Des formulaires plus propres et design Des boutons design Un système de navigation: Barre fixe, onglets, pagination Des messages d'erreurs ou validation colorés... Des bulles de tooltips Etc. Côté compatibilité navigateurs: IE7+, FF4+, Chrome, Safari. En gros, tout ce dont j avais besoin pour la réalisation de notre projet Logiciels : A-WampServer : WampServer est une plate-forme de développement Web sous Windows. Il permet de développer des applications Web localement (sans se connecter à un serveur externe) à l'aide du serveur Apache2, du langage de scripts PHP et d'une base de données MySQL. Il possède également PHPMyAdmin pour gérer plus facilement les bases de données. WampServer s'installe facilement et son utilisation très intuitive permet de le configurer très rapidement (sans toucher aux fichiers de configuration). J ai utilisé ce logiciel pour tester mes scripts développés avant les mettre en ligne, pour tenir au courant le personnel de tout avancement. B- Sublime text: Sublime Text, un éditeur de code OpenSource complet et léger avec une interface totalement personnalisable en changeant la couleur du fond et les polices. Elle dispose de toutes les fonctions nécessaires pour créer et éditer du code en toute commodité et de façon pratique. L'interface personnalisable, la compatibilité pour les langages que j ai utilisés pour le développement PHP, Java Script, CSS, HTML, et la possibilité d ouvrir plusieurs documents en même temps m'ont orienté vers cet outil. 3.2 Méthodes d'analyse et de conception: J ai choisi pour la modélisation de la base de données de l application la méthodologie Merise qui est une méthode d'analyse et de conception de système d'information. Elle est conçue pour décrire la base de données en permettant de réfléchir aux optimisations à lui apporter. Elle est composée de plusieurs modèles : A p p l i c a t i o n F a c e b o o k Page 20

21 Le modèle conceptuel de communication Le modèle conceptuel de données Le modèle conceptuel de traitements Le modèle organisationnel de traitements Le modèle logique de données Le modèle physique de données Chacun de ses modèles a un rôle précis, il est représenté sous forme de schémas ou de tableaux. La méthode Merise abouti à une structure organisée des données afin de les insérer dans un SGBDR. J ai été amené à réaliser le MCD (Modèle Conceptuelle des Données) et le MPD (modèle physique de données) Le Modèle Conceptuel de Données (MCD) Le modèle conceptuel des données (MCD) a pour but d'écrire de façon formelle les données qui seront utilisées par le système d'information. Il s'agit donc d'une représentation des données, facilement compréhensible, permettant de décrire le système d'information à l'aide d'entités Le modèle logique de données (MPD) Dans la méthode Merise, le modèle physique des données consiste à implanter une base de données dans un SGBDR. Le langage utilisé pour ce type d'opération est le MySQL. On peut également faire usage d'un AGL (PowerAMC, WinDesign, etc.) qui permet de générer automatiquement la base de données Modèle-Vue-Contrôleur : J ai développé mon application avec le framework CakePhp qui suit l architecture MVC (Model- View-Controller ou Modèle-Vue-Contrôleur). Ce modèle de conception impose donc une séparation en 3 couches : Le modèle : Il représente les données de l'application. La vue : Elle représente l'interface utilisateur. Le contrôleur : Il gère l'interface entre le modèle et le client A p p l i c a t i o n F a c e b o o k Page 21

22 Pourquoi utiliser MVC? J ai choisi d utiliser le MVC parce que c'est un vrai motif de conception logiciel éprouvé, qui transforme une application en un ensemble maintenable, modulaire et rapidement développé. Façonner les tâches applicatives dans des modèles, vues et contrôleurs séparés, permet de faire des modifications sur une partie de l'application sans affecter les autres. Je n ai jamais développé une application de ce type, cela m'a pris plus de temps, mais une fois j'ai commencé à utiliser ce motif, je l ai apprécié, je ne voudrai jamais revenir en arrière. A p p l i c a t i o n F a c e b o o k Page 22

23 4[Spécification technique] 4.1 Développement de l application: Un des choix cruciaux lors de cette phase de programmation a été celui de l'architecture utilisée. En effet, un tel choix détermine le cadre de développement de tout le projet. Ce choix a également pour but de poser les bases de la version finale de l'interface, car le choix de l'architecture influence la structure de l'application, ainsi que la clarté du code source. Afin de développer l application d une manière rapide et structurelle, et ainsi fournir à mon prototype d'interface les bases d'une architecture répondant aux différents critères de maintenance, d'évolution et de clarté du code source, il m'est apparu nécessaire d'utiliser une architecture couramment utilisée dans la programmation web : l'architecture MVC Fonctionnnement de MVC dans l application L'architecture MVC (Modèle Vue Contrôleur) est une architecture et une méthode de conception qui organise l'interface utilisateur d'une application logicielle (en l'occurrence, Stanalyst). Elle offre donc un cadre de développement, qui permet de structurer l'application et de permettre au développeur de simplifier toute maintenance ou évolution de l'interface. Ce modèle permet la séparation de l'application en trois couches : (cf. Annexe1, page 38) Le Modèle représente le comportement de l'application : traitements des données, interactions avec les données persistances de l'application, etc. Il décrit ou contient les données manipulées par l'application. Il assure la gestion de ces données et garantit leur intégrité. Le modèle offre des méthodes pour mettre à jour ces données (insertion, suppression, changement de valeur). Il offre aussi des méthodes pour récupérer ces données. Les résultats renvoyés par le modèle sont dénués de toute présentation. Dans le cas de données importantes, le modèle peut autoriser plusieurs vues partielles des données. La Vue correspond à l'interface avec laquelle l'utilisateur interagit. Sa première tâche est de présenter les résultats renvoyés par le modèle. Sa seconde tâche est de recevoir toutes les actions de l'utilisateur (clic de souris, sélection d'une entrée, boutons, etc). Ces différents événements sont envoyés au contrôleur. La vue n'effectue aucun traitement, elle se contente d'afficher les résultats des traitements effectués par le modèle. Plusieurs vues, partielles ou non, peuvent afficher des informations d'un même modèle. La vue peut aussi offrir la possibilité à l'utilisateur de changer de vue. A p p l i c a t i o n F a c e b o o k Page 23

24 Le Contrôleur prend en charge la gestion des événements de synchronisation pour mettre à jour la vue ou le modèle et les synchroniser. Il reçoit tous les événements de l'utilisateur et enclenche les actions à effectuer. Si une action nécessite un changement des données, le contrôleur demande la modification des données au modèle, ce dernier avertit la vue que les données ont changée pour qu'elle se mette à jour. Certains événements de l'utilisateur ne concernent pas les données mais la vue. Dans ce cas, le contrôleur demande à la vue de se modifier. Le contrôleur n'effectue aucun traitement, ne modifie aucune donnée. Il analyse la requête du client et se contente d'appeler le modèle adéquat et de renvoyer la vue correspondant à la demande. Quand un même objet contrôleur reçoit les événements de tous les composants, il lui faut déterminer quelle est l'origine de chaque événement. Ce tri des événements peut s'avérer fastidieux et peut conduire à un code pas très élégant. C'est pourquoi le contrôleur est souvent scindé en plusieurs parties (modules) dont chacune reçoit les événements d'une partie des composants Mise en œuvre du CakePHP pour notre application Le framework CakePhp Une fois l'architecture MVC choisie, le choix du framework et donc du langage de programmation furent tout aussi importants. Parmi les différents langages de programmation appris lors de ma formation et utilisé durant mes précédents stages, le PHP me sembla le choix le plus naturel. En effet, ce langage de scripts, très utilisé pour la génération de pages web dynamiques, est une des solutions les plus utilisées dans le monde du Web. En outre il dispose d'une bibliothèque suffisamment complète et de fonctionnalités suffisantes pour apporter des solutions techniques lors du développement de l application. Disposant de connaissances assez poussées sur ce langage et largement suffisantes pour le développement de ce projet. Le choix de PHP comme langage de programmation m'orienta alors vers le choix d'un outil dépendant du langage de programmation utilisé et allant de pair avec une architecture MVC : le framework. En effet, un framework permet de réduire les temps de développement d'une application en répondant de façon efficace aux problèmes les plus courants rencontrés par les développeurs. Il inclut généralement de nombreuses fonctionnalités prêtes à l emploi dont les implémentations sont bien rodées et utilisent des modèles de conceptions standard et bien implémentés. Le temps ainsi gagné sur les questions génériques peut être mis à profit pour les parties spécifiques de l application. Le choix d'un tel outil s'est reposé sur une étude comparative des différents frameworks web PHP. J ai orienté mon choix vers le framework CakePhp qui est distribué sous la forme d une archive contenant le framework et la structure d un nouveau projet. Une seule action est donc nécessaire pour créer un nouveau projet utilisant CakePHP : décompresser l archive à l emplacement souhaité. Le framework en lui même ne demande que très peu de configuration. Les seuls impératifs sont les paramètres de connexion à la base de données. Il est également possible d activer des fonctionnalités de débogage qui permettent d afficher pour chaque écran les différentes requêtes SQL utilisées ainsi que les temps d exécution de chacune d elles. A p p l i c a t i o n F a c e b o o k Page 24

25 Organisation des répertoires de l application : Le dossier cake est l'endroit où les développeurs de CakePhp ont exercé leur propre magie. Je n ai pas modifié les fichiers dans ce dossier. C est le cœur du framework. Le dossier vendors est l'endroit où j ai placé mes librairies PHP tierces dont j ai besoin pour l application. Le répertoire app de CakePHP est l'endroit où j ai réalisé la majorité du développement de mon application. Le contenu de ce répertoire est : Config : Contient les fichiers de configuration utilisés par CakePHP. Informations de connexion à la base de données, démarrage, fichiers de configuration de base et fichier de configuration de fonction mail... controllers : Contient tous les contrôleurs et leurs composants. Lib : Contient le SDK PHP de Facebook. Locale : Stocke les fichiers pour l'internationalisation. models : Pour les modèles, comportements et sources de données de l application. Plugins : Contient les packages des Plugins (je n ai pas utilisé les plugins). Tmp : C'est ici que CakePHP enregistre les données temporaires. La manière dont sont stockées les données actuelles dépend de la configuration que vous avez effectuée, mais ce répertoire est habituellement utilisé pour déposer les descriptions de modèles, les logs et parfois les informations de session. Vendors : Toutes classes ou librairies tierces doivent être mises ici, de sorte qu'il sera facile d'y accéder par la fonction vendors(). Les observateurs avisés noteront que cela semble redondant avec le répertoire "vendors" à la racine de l'arborescence. Nous aborderons les différences entre les deux lorsque nous discuterons de la gestion multiapplications et des configurations systèmes plus complexes. Views : Les fichiers de présentation sont placés ici : éléments, pages d'erreur, assistants, mises en page et vues(user, Permissions, Alertes ). Webroot : Ce dossier contient les répertoires sont utilisés pour les feuilles de style CSS, les images et les fichiers Javascript. Conventions de nommage : Un des aspects de cakephp est qu il propose un système bien défini de convention de nommage pour les différentes classes de l application et la base de données. A p p l i c a t i o n F a c e b o o k Page 25

26 Exemple : si l on crée une classe modèle nommée "User", alors la table dans la base de données devra s appeler "users", la classe contrôleur associée à ce modèle sera nommée "UsersController", et les vues associées seront placées dans un sous dossier "Users" du dossier views. Ces conventions favorisent encore la lisibilité du code et sa réutilisation, le nom des fichiers uniquement permet de comprendre instantanément sa fonction au sein de l application. Mais surtout, et c est le plus intéressant, le framework utilise ces conventions pour établir une partie de la logique applicative. CakePHP propose également des conventions au niveau des attributs de la base de données : un entier auto-incrémenté nommé id est préconisé comme clef primaire pour toutes les tables, et les clefs étrangères se composent de la manière suivante : nomdelatable_id. Ceci implique donc souvent des modifications au niveau de la base de données si l on veut profiter des avantages apportés par ces conventions. Composition des modèles Afin d établir les relations de compositions entre les objets et assurer le "Mapping" des objets métiers vers la base de données, CakePHP offre quatre types de relations entres les classes modèles : belongsto : Relation de cardinalité 1,1 hasone : Relation de cardinalité 0,1 hasmany : Relation de cardinalité 0,n hasandbelongstomany : Relation de cardinalité 0,n - O,n Bien que limité, ce système permet néanmoins d établir très rapidement un modèle de données qui va bénéficier des possibilités de la super-classe Modèle de CakePHP. Celle-ci offre en effet de nombreuses méthodes d accès aux données qui vont pouvoir être utilisées dans les contrôleurs Mise en œuvre du framework Facebook pour l application : Facebook propose deux types d applications : celles qui sont intégrées sur le site de Facebook ("applications Facebook"), et les applications externes qui peuvent se connecter au site de Facebook pour récupérer et/ou envoyer des informations. Ce dernier type d application que j ai utilisé à notre projet. Afin de pouvoir utiliser l API Facebook au sein de notre application, il faut d abord créer une application Facebook. Pour se faire, le principe est le suivant : Créer l application dans Facebook afin d une part d obtenir une clé d API et une clé secrète, et d autre part, afin d indiquer à Facebook quelques règles sur le comportement (domaines acceptés, redirection suite à une déconnexion, etc...). télécharger l API Facebook. Cette dernière est une librairie php5 qui permettra de développer des applications pour Facebook. Décompresser et déplacer les fichiers dans le dossier lib de CakePhp pour pouvoir les utiliser pour accéder aux informations des utilisateurs. A p p l i c a t i o n F a c e b o o k Page 26

27 Système d'authentification oauth2 pour Facebook : L'accès aux données d utilisateur sur Facebook nécessite une authentification. Cette authentification se fait via le protocole Oauth2.0 utilisé par l API de Facebook. Demander un accès passe par la demande d'un token (jeton). Ce token permet d'accéder à des données d'un utilisateur Facebook ayant autorisé notre application. Cette autorisation passe par la demande de permissions, qui permettent de limiter les accès que souhaite donner l'utilisateur à notre application. (cf. Annexe2, page 38) Une fois le token en notre possession, il est alors possible d'accéder à tous les flux autorisés par l'utilisateur, en spécifiant le token dans l'url. Pour illustrer les échanges entre l'utilisateur, Facebook et l application, un schéma explicatif est fourni en annexe3, page 39. A p p l i c a t i o n F a c e b o o k Page 27

28 5[Architecture et implémentation] Cette section traite les phases d architecture MVC et d analyse de conception (MCD et MPD) qui sont les phases les plus critiques du cycle de développement. 5.1Architecture MVC : L'un des points intéressants du stage était l'utilisation du framework CakePhp qui suit l architecture MVC (Modèle-Vue-Contrôleur), qui est une architecture et une méthode de conception qui permet une meilleure lecture du code source. Il faut savoir que chaque fonctionnalité de l application sera appelé par la suite un«module» et que chaque module est composé, conformément à la méthode MVC, d un contrôleur, d un modèle et d une vue. Un avantage apporté par ce modèle est la clarté de l'architecture qu'il impose. Cela simplifie la tâche du développeur qui tenterait d'effectuer une maintenance ou une amélioration sur le projet. En effet, la modification des traitements ne change en rien la vue. Figure 5 : Schéma illustrant le fonctionnement de l application avec l architecture MVC A p p l i c a t i o n F a c e b o o k Page 28

29 Ces schémas symbolisent le fonctionnement et le parcours des données dans l application grâce à la méthode MVC. La première partie du schéma est applicable aux modules qui proposent des actions à l utilisateur (tous à l exception d un seul), la seconde, s applique aux modules entièrement automatisés qui ne nécessitent aucune intervention de la part de l utilisateur. 5.2 Conception : Le stage a commencé par une période d'installation et de prise en main du framework CakePhp. Une fois le framework est pris en main (Le «CookBook» du site officiel est particulièrement clair et précis), la phase de conception a débuté Modèle conceptuel de données : La création de la base de données, passe dans un premier temps par la réalisation du modèle conceptuel de donnée (MCD). Celui-ci est un schéma représentant la structure du système d'information, du point de vue des données, c'est-à-dire les dépendances ou relations entre les différentes données du système d'information. On distingue six principales entités, Users, Triggers, Fbaccounts, Alerts, Permissions et Themes. (cf. Annexe4, page 40) Users : La table contenant les utilisateurs de l'application. Fbaccounts : La table contenant l ensemble des comptes créé par un utilisateur. Triggers : les déclencheurs affectés pour chaque compte. Alerts : la table contenant les alertes reçues par les utilisateurs Permissions : la table contenant les permissions affectées pour chaque utilisateur. Themes : la table qui regroupe les thèmes pour les déclencheurs Modèle physique de données : Cette étape consiste à implémenter le modèle dans le SGBD, c'est-à-dire le traduire dans un langage de définition de données. (cf. Annexe5, page 41) Le langage utilisé pour ce type d'opération est le MySQL. A p p l i c a t i o n F a c e b o o k Page 29

30 5.3 Implémentation : CakePHP est parfaitement adapté à notre projet En effet ce framework dispose de fonctionnalités qui ont permis, de développer rapidement et d une manière sécurisée. Feature User : Un utilisateur est représenté via une classe PHP qui implémente une interface modèle existante. Cette classe va permettre de lier la table «users» au système de sécurité intégré au CakePhp qui rend la gestion de session d'utilisateur très simple. Dans un second temps, il convient d effectuer les opérations de bases CRUD (Create, Read, Update, Delete) qui permettent de créer, modifier (Pour les utilsateurs) ou lire, détruire un compte utilisateur (Pour les administrateurs). L utilisateur peut aussi se connecter en un seul clic avec son compte facebook via «Facebook Connect» (cf. Annexe6, page 42) Feature Fbaccounts : Un utilisateur peut lier son compte crée sur l application à son compte Facebook en acceptant de partager ses informations sur notre application via le protocole oauth2 afin de pouvoir analyser son mur à travers l open graph ou SDK php de Facebook en utilisant des Tokens. Feature Triggers : Après avoir créer un compte et autoriser l application au sein de facebook, l utilisateur peut affecter des déclencheurs à son compte pour pouvoir recevoir des SMS et/ou des s selon son choix, dès qu une personne écrit un message sur son mur Facebook qui contient un des déclencheurs définis. L application interroge Facebook chaque 15 minutes pour accéder aux informations de l utilisateur afin de vérifier les expressions d alertes définies dans le déclencheur et envoyer des alertes. (cf. Annexe7, page 42) Feature Alertes : Le modèle alerts permet d enregistrer les alertes reçues par les utilisateurs en passant par l action add() dans le Contrôleur «Alerts» qui utilise la méthode save() de CakePhp. Feature Permissions : A p p l i c a t i o n F a c e b o o k Page 30

31 Ce modèle permet d affecter pour chaque utilisateur un nombre de déclencheur, un nombre d alerte et un nombre d action afin de limiter les actions. 5.4 Autres projets : Durant mon stage et en parallèle de la réalisation de mon projet principal, j ai eu l'opportunité de travailler sur deux autres projets différents, tout les deux sont développés en PHP. Le premier portait sur la modification d un site web existant qui permet de créer de CV en ligne aux formats HTML et PDF. Le deuxième petit projet a consisté à la création d un script en PHP pour l administration de la base de données de la carte de France du site web « (cf. Annexe8, page 43). Ce travail a été fait en binôme avec un stagiaire graphiste. (cf. Annexe9, page 43) A p p l i c a t i o n F a c e b o o k Page 31

32 6[Spécification fonctionnelle] Je présenterai dans cette section les interfaces graphiques de l application. 6.1Présentation des interfaces : Espace utilisateur : Interface inscription: Cette interface permet de recueillir les informations concernant un utilisateur, en particulier son adresse et son mot de passe qui seront utilisés pour l'identifier lors de ses prochaines visites. (cf. Annexe10, page 44) Interface connexion: L interface de connexion permet d'ouvrir une session utilisateur. Pour des raisons de sécurité, chaque utilisateur doit fournir son ainsi que son mot de passe. (cf. Annexe11, page 44) Le lien «Connexion avec Facebook» permet aux utilisateurs de se connecter à l application en un clic avec leur compte Facebook. Le lien " Vous avez oublié votre mot de passe?" permet d'accéder à l interface mot de passe oublié. Cette page permet de récupérer facilement le mot de passe en saisissant l sur le champ indiqué. Interface profil: Cette interface permet de visualiser et modifier toutes les informations concernant un utilisateur. (cf. Annexe12, page 45) Interface compte Facebook : L interface compte Facebook permet aux utilisateurs inscrits de visualiser l ensemble de leurs comptes (profils et pages) et de les lier à leurs comptes Facebook en appuyant sur le bouton valider. (cf. Annexe13, page 45) Cette interface donne aussi la possibilité de supprimer ou modifier un compte. Interface déclencheur : Cette interface permet d affecter des déclencheurs à un compte facebook et de saisir une série de numéro de téléphone et une série d s afin d alerter l utilisateur dès qu une personne publié un message sur facebook qui contient un des mots définis lors de la création des déclencheurs. (cf. Annexe14, page 46) A p p l i c a t i o n F a c e b o o k Page 32

33 Interface alerte : L interface alerte permet d enregistrer, visualiser et de supprimer les alertes reçues par utilisateurs. Elle permet aussi de visualiser et supprimer le message sur Facebook. (cf. Annexe15, page 46) Espace administration : L espace d administration permet d accéder à la gestion détaillée des utilisateurs. L administrateur peut visualiser, modifier, supprimer et ajouter un utilisateur. Cette espace permet aussi à l administrateur d affecter un nombre d alerte, un nombre de déclencheur, et un nombre d action à un utilisateur ainsi qu ajouter une date de début et une date fin de validité d un compte utilisateur. (cf. Annexe16, page 47) A p p l i c a t i o n F a c e b o o k Page 33

34 7[Résultats et difficultés rencontrées] Durant ce stage, J'ai appris beaucoup de choses, mais cela n'a pas été sans difficultés, je vais vous présenter ici les plus grosses. 7.1 Résultats : Ce stage m'a permis de découvrir de nombreuses technologies web tel que le fonctionnement du l open graph Facebook, le protocole OAuth2.0 et à comprendre plus en détail le fonctionnement et la hiérarchie du framework CakePhp tout en renforçant mes connaissances en PHP5 et maitriser la méthode de conception MVC. En effet, tous les objectifs attendus ont été atteints. Il y a eu quelques modifications au niveau du cahier des charges pendant la réalisation, mais ils sont toutes été prises en compte. Quelques fonctionnalités ont été ajoutées à l application telle que l option de supprimer un message sur facebook depuis l application. Le cahier des charges a été donc complètement respecté. 7.2 Difficultés rencontrées et solutions apportées: J ai rencontré quelques difficultés pendant la réalisation de ce projet, la réalisation d une application de A à Z n'est parfois pas très aisée. J ai néanmoins réussi à obtenir l'aide nécessaire, soit de mon tuteur M. Ludovic Lenglet ou ailleurs en cherchant sur Internet. J ai trouvé des problèmes au début de l apprentissage concernant le fonctionnement de du framework CakePhp, l utilisation de la méthode MVC et la compréhension de la documentation de développement de Facebook qui était en anglais, mais avec patience et recherches j ai pu me familiariser avec ces technologies. Le deuxième problème rencontré a été que je n étais pas en contact permanent avec mon tuteur de projet, qui travaille au sein de la société ATOS ORIGIN, et nos rencontres s effectuaient lors de rendez-vous programmés. Afin de pouvoir lui présenter l avancé de mon travail lors de nos rencontres, j ai du me fixer des objectifs à atteindre en fonction de dates précises. Cette exigence m a permis d apprendre à gérer des contraintes liées au temps, en mettant en place une organisation et une planification de l ensemble de mon travail. A p p l i c a t i o n F a c e b o o k Page 34

35 [Conclusion] Ce stage m a été très bénéfique et fructueux, il m a permis d acquérir tant de connaissances qui je servirai dans mon avenir professionnel, ainsi il m a offert l occasion de découvrir le monde du travail, à savoir le sens de la ponctualité, la responsabilité ainsi que l esprit d équipe et le vrai sens de collaboration. Tout au long de ce rapport, j ai essayé de vous décrire et de retracer tous les détails de mon travail. Dans la première partie, j ai opté pour une présentation de la société en exposant toutes les informations essentielles pour mieux connaître ses activités, puis j ai consacré la deuxième partie pour les étapes de la description, conception et la réalisation de notre projet : application d automatisation avec Facebook. J ai donc, achevé cette expérience avec un bagage assez important, le fait de travailler avec un framework tel que cakephp a été bénéfique puisque j'ai pu développé mes connaissances des langages PhP, Jquery, HTML et CSS ainsi que maitriser la méthode de conception MVC. Du point de vue du travail réalisé, je suis très satisfait car j ai pu réaliser une application opérationnelle qui respecte le cahier des charges définis, et compte tenu des réactions des responsables, on peut dire que le projet répond tout à fait aux besoins de l entreprise. L un des atouts de mon stage a été la possibilité de mener plusieurs missions en parallèle. Pourtant, cela parfois devenait un défi. Ainsi, j ai appris à prioriser les tâches, à bien organiser mon temps tout en restant flexible et à m adapter aux rythmes de travail et aux exigences des personnes avec qui je travaillais. Au cours de ces douze semaines, je me suis sentie très bien accueillie par les personnes du secteur car il y a une ambiance de travail à la fois très professionnelle et très humaine. Je me suis rendu compte de l importance d être à l aise dans son environnement de travail et d apprécier la compagnie des collègues en dehors des contextes strictement professionnels. Ce stage m a permis de m épanouir aussi bien dans le plan professionnel que personnel. En effet, ce stage m a permis non seulement d approfondir mes connaissances mais aussi d acquérir une expérience bénéfique d un point de vue personnel, dans la mesure où il reflète parfaitement le domaine dans lequel j aimerai poursuivre mes études. A p p l i c a t i o n F a c e b o o k Page 35

36 [Glossaire] Abréviation API Framework PHP AFP XHTML CSS XML SDK MVC W3C Description Application Programming Interface kit de composants logiciels structurels, qui définissent les fondations, ainsi que les grandes lignes de l'organisation Hypertext Preprocessor est un langage de scripts libre4 principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP Agence France-Presse est l'une des plus anciennes des trois agences de presse mondiale et généraliste, dotées d'un réseau mondial de recherche de l'information. (extensible HyperText Markup Language) est un langage de balisage servant à écrire des pages web CSS (Cascading Style Sheets : feuilles de style en cascade) est un langage qui sert à décrire la présentation des documents XHTML et XML (extended Markup Language) Langage de description des documents qui utilise des balises, il permet l'utilisation de balises personnalisées et permet l'échange des données Software Development Kit : Un ensemble d'outils permettant aux développeurs de créer des applications de type défini ; Le modèle-vue-contrôleur (en abrégé MVC, de l'anglais Model-View-Controller) est un patron d'architecture et une méthode de conception qui organise l'interface homme-machine (IHM) d'une application logicielle. (World Wide Web Consortium), c est un organisme de standardisation à but non-lucratif chargé de promouvoir la compatibilité des technologies du World Wide Web telles que HTML, XHTML, CSS Less Système de grille CSS pour la conception de sites web adaptatifs. A p p l i c a t i o n F a c e b o o k Page 36

37 [Bibliographie] Ouvrages Concevez votre site web avec PHP et MySQL [MATHIEU NEBRA], 2010 MERISE Modélisation de Systèmes d Information [Pierre Gérard], Edition 2004 Ressources Internet (Site de cours de langages de développement) (Site de cours PHP) (Club des étudiants) (L'encyclopédie libre) (Forum de Tutoriel vidéo) (la documentation de CakePHP) (La documentation de la plateforme de développement Facebook) A p p l i c a t i o n F a c e b o o k Page 37

38 [Annexes] Annexe1 : Shéma explicatif de MVC Annexe2 : Fenêtres de demande des permissions Facebook A p p l i c a t i o n F a c e b o o k Page 38

39 Annexe3 : schéma explicatif d échanges Oauth2.0 A p p l i c a t i o n F a c e b o o k Page 39

40 Annexe 4 : Le modèle conceptuel de données A p p l i c a t i o n F a c e b o o k Page 40

41 id_permission id_user start_date is_illimited_start end_date is_illimited_end nbr_trigger is_illimited_trigger nbr_alert is_illimited_alert nbr_action is_illimited_action permissions integer bigint timestamp smallint timestamp timestamp integer smallint integer smallint integer smallint <pk> <fk> id_user id_user_fb title first_name last_name adress postal_code city contry phone phone_fix passeword is_admin last_login is_active created modified users bigint varchar varchar varchar varchar varchar int varchar varchar varchar varchar(255) varchar varchar smallint timestamp smallint timestamp timestamp <pk> id_account id_user id_account_fb name url access_token is_active type created modified fb_accounts bigint bigint varchar(255) varchar varchar varchar(255) smallint varchar(255) timestamp timestamp <pk> <fk> id_trigger fbaccount_id id_theme name expression sms is_sms is_ created modified triggers bigint bigint integer varchar varchar varchar smallint varchar(255) smallint timestamp timestamp <pk> <fk1> <fk3> id_alert id_user id_trigger id_fb message date_mailing from created modified trigger_id alerts bigint bigint bigint varchar varchar datetime varchar(255) timestamp timestamp integer <pk> <fk1> <fk2> id_theme name expression created modified themes integer varchar(255) varchar(255) timestamp timestamp <pk> Annexe 5 : Le modèle physique de données A p p l i c a t i o n F a c e b o o k Page 41

42 Annexe6 : principe de Facebook Connect Annexe7 : Shéma explicatif de l analyse de mur Facebook A p p l i c a t i o n F a c e b o o k Page 42

43 Annexe8 : Carte de France du site lepasseportgourmand.fr Annexe9 : Administration de la carte de France A p p l i c a t i o n F a c e b o o k Page 43

44 Annexe10 : Interface inscription Annexe11 : Interface connexion A p p l i c a t i o n F a c e b o o k Page 44

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

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

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

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013 Rapport de stage Création d un site web Stage du 20/01/2013 au 21/02/2013 Auteur : Antoine Luczak Tuteur professionnel : M. Tison Tuteur scolaire : Mme Girondon Année scolaire : 2013/2014 1 Table des matières

Plus en détail

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

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Présentation du Framework BootstrapTwitter

Présentation du Framework BootstrapTwitter COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...

Plus en détail

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

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

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

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 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Rapport de stage Clément MOYSAN

Rapport de stage Clément MOYSAN Clément MOYSAN Licence Professionnelle Réseaux et Télécommunications Option Web Développeur Tuteur en entreprise : Laurent DUBOIS Année universitaire : 2008/2009 Tuteur universitaire : Harold TRANOIS Sommaire

Plus en détail

PROJET DE PORTAIL INTRANET YNNA

PROJET DE PORTAIL INTRANET YNNA PROJET DE PORTAIL INTRANET YNNA PV sur l état d avancement du chantier Intranet Ynna Hicham BENJELLOUN h.benjelloun@ynna.ma Préambule Ce rapport a pour objet de proposer les grandes lignes de l état des

Plus en détail

Nouveautés joomla 3 1/14

Nouveautés joomla 3 1/14 Nouveautés joomla 3 1/14 Table des matières 1 Responsive... 1 2 Bootstrap... 1 3 LESS CSS intégré... 1 4. JUI (pour les développeurs d'extensions)... 1 5. Le Mambo days vs le Génial UX... 2 6. 7 étapes

Plus en détail

Webmaster / Webdesigner / Wordpress

Webmaster / Webdesigner / Wordpress Webmaster / Webdesigner / Wordpress Pré-requis : Projet professionnel. Bonne maîtrise de l'ordinateur. Bases en infographie et / ou traitement de texte fortement recommandées. Objectifs : Concevoir un

Plus en détail

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi

Plus en détail

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09 INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,

Plus en détail

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

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement Cursus Outils & Développement Vous êtes Consultant, Chef de Projets, Directeur des Systèmes d Information, Directeur Administratif et Financier, Optez pour les «formations Produits» Nous vous proposons

Plus en détail

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

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

Plus en détail

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL . THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL Mr MEZRED MOHAMED Ingénieur météorologue INTRODUCTION Il existe de nombreuses manières de construire une base de données. En effet,

Plus en détail

Note de synthèse. Développement web sur le CMS Prestashop. Stage du 17 mai au 25 juin 2010. Entreprise decoratzia.com 15 rue Erlanger 75016 - Paris

Note de synthèse. Développement web sur le CMS Prestashop. Stage du 17 mai au 25 juin 2010. Entreprise decoratzia.com 15 rue Erlanger 75016 - Paris BENCHETRIT Michaël BTS IG 2 ème année Brevet de Technicien Supérieur Informatique de Gestion Option : Développeur d applications Session 2011 Note de synthèse Développement web sur le CMS Prestashop Stage

Plus en détail

Sage CRM. 7.2 Guide de Portail Client

Sage CRM. 7.2 Guide de Portail Client Sage CRM 7.2 Guide de Portail Client Copyright 2013 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,

Plus en détail

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures 3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures Objectif global : A l issue de la formation, les stagiaires doivent être opérationnels dans la création d un site internet

Plus en détail

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales D 1.3.2 Rapport d analyse Auteurs: Johann Luethi, Laurent Opprecht, Patrick Roth

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

Qlik Sense Desktop. Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés.

Qlik Sense Desktop. Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Qlik Sense Desktop Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Qlik, QlikTech, Qlik Sense,

Plus en détail

RESUME DE CARRIERE. Alice JULIENNE. 23 ans Nationalité Française Développeur Web Front-End. Compétences

RESUME DE CARRIERE. Alice JULIENNE. 23 ans Nationalité Française Développeur Web Front-End. Compétences RESUME DE CARRIERE Alice JULIENNE 23 ans Nationalité Française Développeur Web Front-End Compétences Systèmes Langages Windows (XP, 98) Macintosh OS X HTML, XHTML, CSS, XML, PHP, SQL, Javascript, J-Querry

Plus en détail

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des

Plus en détail

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

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x WysiUpStudio CMS professionnel pour la création et la maintenance évolutive de sites et applications Internet V. 6.x UNE SOLUTION DE GESTION DE CONTENUS D UNE SOUPLESSE INÉGALÉE POUR CRÉER, MAINTENIR ET

Plus en détail

7.0 Guide de la solution Portable sans fil

7.0 Guide de la solution Portable sans fil 7.0 Guide de la solution Portable sans fil Copyright 2010 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur

Plus en détail

Assistance à distance sous Windows

Assistance à distance sous Windows Bureau à distance Assistance à distance sous Windows Le bureau à distance est la meilleure solution pour prendre le contrôle à distance de son PC à la maison depuis son PC au bureau, ou inversement. Mais

Plus en détail

Formation : WEbMaster

Formation : WEbMaster Formation : WEbMaster Objectif et Description : Centre Eclipse vous propose une formation complète WebMaster, vous permettant de : Utiliser dès maintenant les nouveautés du web2, ainsi alléger les besoins

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

Armand PY-PATINEC 2010

Armand PY-PATINEC 2010 Armand PY-PATINEC 2010 EPREUVE PRATIQUE : TABLEAU SYNOPTIQUE Activités Inventaire de bières et de leur lieu de fabrication Gestion des clients pour un programme de facturation Emploi du ruban de l interface

Plus en détail

Point sur les solutions de développement d apps pour les périphériques mobiles

Point sur les solutions de développement d apps pour les périphériques mobiles Point sur les solutions de développement d apps pour les périphériques mobiles Par Hugues MEUNIER 1. INTRODUCTION a. Une notion importante : le responsive web design Nous sommes en train de vivre une nouvelle

Plus en détail

Serveur de travail collaboratif Michaël Hoste -

Serveur de travail collaboratif Michaël Hoste - Serveur de travail collaboratif Michaël Hoste - Table des matières 1. Qu'est ce qu'un serveur de travail collaboratif?...2 2. Pourquoi ce projet?...2 3. Possibilités d'utilisation dans le cadre de l'université...3

Plus en détail

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com - 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................

Plus en détail

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

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 Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN

Plus en détail

Sybase PowerAMC 16. Guide des nouvelles fonctionnalités générales. www.sybase.fr/poweramc DOCUMENTATION

Sybase PowerAMC 16. Guide des nouvelles fonctionnalités générales. www.sybase.fr/poweramc DOCUMENTATION Sybase PowerAMC 16 Guide des nouvelles fonctionnalités générales DOCUMENTATION 2 2 www.sybase.fr/poweramc A propos de PowerAMC 16 PowerAMC est une solution de modélisation d'entreprise graphique qui prend

Plus en détail

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA I. Introduction Suite à une demande des étudiants, il m'est apparu intéressant de montrer, à travers un exemple concret, comment

Plus en détail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.

Plus en détail

PHP 5.4 Développez un site web dynamique et interactif

PHP 5.4 Développez un site web dynamique et interactif Editions ENI PHP 5.4 Développez un site web dynamique et interactif Collection Ressources Informatiques Table des matières Table des matières 1 Chapitre 1 Introduction 1. Objectif de l'ouvrage.............................................

Plus en détail

TAGREROUT Seyf Allah TMRIM

TAGREROUT Seyf Allah TMRIM TAGREROUT Seyf Allah TMRIM Projet Isa server 2006 Installation et configuration d Isa d server 2006 : Installation d Isa Isa server 2006 Activation des Pings Ping NAT Redirection DNS Proxy (cache, visualisation

Plus en détail

Qu'est-ce que le BPM?

Qu'est-ce que le BPM? Qu'est-ce que le BPM? Le BPM (Business Process Management) n'est pas seulement une technologie mais, dans les grandes lignes, une discipline de gestion d'entreprise qui s'occupe des procédures contribuant

Plus en détail

Installation locale de JOOMLA SEPIA

Installation locale de JOOMLA SEPIA FOAD TICE Installation locale de JOOMLA SEPIA Académie de Reims FRANÇOIS PALLUT Paternité - Pas d'utilisation Commerciale - Partage des Conditions Initiales à l'identique : http://creativecommons.org/licenses/by-nc-sa/2.0/fr/

Plus en détail

EXTENSION de Microsoft Dynamics CRM 2013. Réf FR 80452

EXTENSION de Microsoft Dynamics CRM 2013. Réf FR 80452 EXTENSION de Microsoft Dynamics CRM 2013 Réf FR 80452 Durée : 3 jours A propos de ce cours : Ce cours offre une information interactive et détaillée sur le développement d extensions pour Microsoft Dynamics

Plus en détail

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

Joomla! Création et administration d'un site web - Version numérique Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique

Plus en détail

Dans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Dans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur FORMATION FORFAIT WEB DEVELOPPEUR Qualification ISQ OPQF Formacode 46 125 Certification de titre professionnel Web Designer + modules optionnels : Développement PHP/MySQL avancé, Web App, CMS e-boutique

Plus en détail

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel. 25 mars Tutoriel sur Laravel Préparé par : Lydiane Beaulne-Bélisle Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel. Créé pour le cours de Projet de fin d étude Collège de

Plus en détail

Le stockage local de données en HTML5

Le stockage local de données en HTML5 Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,

Plus en détail

Espace numérique de travail collaboratif

Espace numérique de travail collaboratif Espace numérique de travail collaboratif 1/10 Présentation Agora Project est un espace de travail collaboratif complet et intuitif. Cette application est accessible partout et à tout moment, via un simple

Plus en détail

STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS. 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage

STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS. 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage m invite à faire une étude sur les outils qui seraient utilisés. Sites

Plus en détail

UserLock Guide de Démarrage rapide. Version 8.5

UserLock Guide de Démarrage rapide. Version 8.5 UserLock Guide de Démarrage rapide Version 8.5 Introduction UserLock est une solution logicielle d'entreprise unique sécurisant les accès utilisateur sur le réseau afin de réduire le risque d'une brèche

Plus en détail

Optimiser pour les appareils mobiles

Optimiser pour les appareils mobiles chapitre 6 Optimiser pour les appareils mobiles 6.1 Créer un site adapté aux terminaux mobiles avec jquery Mobile... 217 6.2 Transformer son site mobile en application native grâce à PhoneGap:Build...

Plus en détail

Mercredi 15 Janvier 2014

Mercredi 15 Janvier 2014 De la conception au site web Mercredi 15 Janvier 2014 Loïc THOMAS Géo-Hyd Responsable Informatique & Ingénierie des Systèmes d'information loic.thomas@anteagroup.com 02 38 64 26 41 Architecture Il est

Plus en détail

Bureautique Initiation Excel-Powerpoint

Bureautique Initiation Excel-Powerpoint Module de Formation Personnalisée : Bureautique Initiation Excel-Powerpoint Durée : jours ouvrables Prix : Formation personnalisée en vue d obtenir les notions de base indispensables pour : Excel Office

Plus en détail

Débuter avec OOo Base

Débuter avec OOo Base Open Office.org Cyril Beaussier Débuter avec OOo Base Version 1.0.7 Novembre 2005 COPYRIGHT ET DROIT DE REPRODUCTION Ce support est libre de droit pour une utilisation dans un cadre privé ou non commercial.

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

Préparer la synchronisation d'annuaires

Préparer la synchronisation d'annuaires 1 sur 6 16/02/2015 14:24 En utilisant ce site, vous autorisez les cookies à des fins d'analyse, de pertinence et de publicité En savoir plus France (Français) Se connecter Rechercher sur TechNet avec Bing

Plus en détail

Sessions en ligne - QuestionPoint

Sessions en ligne - QuestionPoint Sessions en ligne - QuestionPoint Configuration du navigateur Internet Explorer Dernière mise à jour : 12 mai 2012 Vous trouverez dans ce guide les procédures pour configurer votre navigateur Internet

Plus en détail

Le service de création de site Internet : Mode d emploi. La Création de Site Internet

Le service de création de site Internet : Mode d emploi. La Création de Site Internet Le service de création de site Internet : Mode d emploi Sommaire 1) Comment se connecter à votre interface client? 2) Comment démarrer la création de votre site Internet? 3) Comment gérer les pages de

Plus en détail

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées? Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites Quelles solutions peuvent être employées? Présentation d une des solutions Conclusion Aujourd hui le web est

Plus en détail

1. Considérations sur le développement rapide d'application et les méthodes agiles

1. Considérations sur le développement rapide d'application et les méthodes agiles Chapitre 1 Introduction 1. Considérations sur le développement rapide d'application et les méthodes agiles 1.1 Rappel Longtemps les méthodes en cascade ou en V ont été opposées aux démarches empiriques

Plus en détail

LES ACCES ODBC AVEC LE SYSTEME SAS

LES ACCES ODBC AVEC LE SYSTEME SAS LES ACCES ODBC AVEC LE SYSTEME SAS I. Présentation II. SAS/ACCESS to ODBC III. Driver ODBC SAS IV. Driver ODBC SAS Universel V. Version 8 VI. Références I. Présentation Introduction ODBC, qui signifie

Plus en détail

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

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Documentation de conception

Documentation de conception Documentation de conception La présente documentation précise les choix de modélisation, détaille les fonctionnalités (en sus de la documentation utilisateur), documente la conception de la base de donnes

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Les nouveautés d AppliDis Fusion 4 Service Pack 3

Les nouveautés d AppliDis Fusion 4 Service Pack 3 Les nouveautés d AppliDis Fusion 4 Service Pack 3 Systancia Publication : Novembre 2013 Résumé La nouvelle version AppliDis Fusion 4 Service Pack 3 ajoute des fonctionnalités nouvelles au produit AppliDis.

Plus en détail

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

Guide d installation de Gael

Guide d installation de Gael Guide d installation de Gael Outil web libre de gestion des élèves du premier degré, complément naturel d Iconito documentation version 1.2 juillet 2007 Gael version 0.5 Table des matières Objet... 3 Support...

Plus en détail

Comment utiliser mon compte alumni?

Comment utiliser mon compte alumni? Ce document dispose d une version PDF sur le site public du CI Comment utiliser mon compte alumni? Elena Fascilla, le 23/06/2010 Sommaire 1. Introduction... 2 2. Avant de commencer... 2 2.1 Connexion...

Plus en détail

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO) LDAP Mise en place Introduction Limitation et Sécurité Déclarer un serveur MySQL dans l annuaire LDAP Associer un utilisateur DiaClientSQL à son compte Windows (SSO) Créer les collaborateurs DiaClientSQL

Plus en détail

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009 «Web. De l intégration de pages statiques HTML à un CMS, à la dynamisation d un site grâce au Javascript et l utilisation de nouvelles technologies

Plus en détail

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv> Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee

Plus en détail

Formation Webmaster : Création de site Web Initiation + Approfondissement

Formation Webmaster : Création de site Web Initiation + Approfondissement Contactez notre équipe commerciale au 09.72.37.73.73 Aix en Provence - Bordeaux - Bruxelles - Geneve - Lille - Luxembourg - Lyon - Montpellier - Nantes - Nice - Paris - Rennes - Strasbourg - Toulouse Formation

Plus en détail

Bien architecturer une application REST

Bien architecturer une application REST Olivier Gutknecht Bien architecturer une application REST Avec la contribution de Jean Zundel Ce livre traite exactement du sujet suivant : comment faire pour que les services web et les programmes qui

Plus en détail

Créateur de sites Internet. Développeur de logiciels. www.logipro.com

Créateur de sites Internet. Développeur de logiciels. www.logipro.com Créateur de sites Internet Développeur de logiciels Logipro, partenaire de vos «e projets» depuis 1997 Fort d une dizaine d années d expériences dans le développement de solutions Internet globales, Logipro

Plus en détail

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven TRAVAIL RÉALISÉ PAR ABED ABDERRAHMANE Oracle Developer Suite 10g Guide de l installation 10g Release 2 (10.1.2) pour Windows Vista & Seven www.oraweb.ca Page 1 TABLE DES MATIÈRES : PARTIE 1 : CONCEPTS

Plus en détail

SITE WEB E-COMMERCE ET VENTE A DISTANCE

SITE WEB E-COMMERCE ET VENTE A DISTANCE Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme

Plus en détail

v7.1 SP2 Guide des Nouveautés

v7.1 SP2 Guide des Nouveautés v7.1 SP2 Guide des Nouveautés Copyright 2012 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,

Plus en détail

FileMaker Server 14. Aide FileMaker Server

FileMaker Server 14. Aide FileMaker Server FileMaker Server 14 Aide FileMaker Server 2007-2015 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et FileMaker Go sont des marques

Plus en détail

Introduction aux concepts d ez Publish

Introduction aux concepts d ez Publish Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de

Plus en détail

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 AISL - Architecture et Intégration des Systèmes Logiciels - 2011-2012 webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 Administrer un serveur et

Plus en détail

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL

Plus en détail

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision Page 1 de 7 Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision Table des matières Table des matières... 1 1. Premier

Plus en détail

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully Les grandes facettes du développement Web Qui sommes nous? Nicolas Thouvenin Stéphane Gully Projets Web depuis 2000 LAMP, NodeJS HTML, CSS, jquery

Plus en détail

Projet en nouvelles technologies de l information et de la communication

Projet en nouvelles technologies de l information et de la communication Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima

Plus en détail

Mes documents Sauvegardés

Mes documents Sauvegardés Mes documents Sauvegardés Guide d installation et Manuel d utilisation du logiciel Edition 13.12 Photos et illustrations : Copyright 2013 NordNet S.A. Tous droits réservés. Toutes les marques commerciales

Plus en détail

SIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

SIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault SIO-65291 Page 1 de 5 1- Objectifs généraux Applications Web dynamiques Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault acquérir les principes et concepts fondamentaux dans le domaine d'applications

Plus en détail

Sage CRM. Sage CRM 7.3 Guide du portable

Sage CRM. Sage CRM 7.3 Guide du portable Sage CRM Sage CRM 7.3 Guide du portable Copyright 2014 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur

Plus en détail

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude

Plus en détail

1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel

1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel Guide débuter avec WHM 1 / Introduction WHM signifie Web Host Manager (ou gestionnaire d'hébergement web). WHM va donc vous permettre de gérer des comptes d'hébergement pour vos clients. (création de compte,

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Survol des nouveautés

Survol des nouveautés Maîtrisez la conception de sites Web en toute simplicité WebExpert est un puissant logiciel d'édition Web qui vous permet de concevoir et de gérer des sites Web, de façon professionnelle en toute simplicité.

Plus en détail

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

Content Management System. bluecube. Blue Cube CMS V4.3 par Digitalcube Content Management System bluecube V4.3 1 SOMMAIRE Avant-propos Découvrir le CMS Blue Cube Les modules Les clients BLUE CUBE CMS V4.3 par Digitalcube 2 CMS sans bugs 3 Avant-propos Facile à prendre en

Plus en détail

MEDIAplus elearning. version 6.6

MEDIAplus elearning. version 6.6 MEDIAplus elearning version 6.6 L'interface d administration MEDIAplus Sommaire 1. L'interface d administration MEDIAplus... 5 2. Principes de l administration MEDIAplus... 8 2.1. Organisations et administrateurs...

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail