Développement de Dexem Pagecreator. Rapport de stage

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

Download "Développement de Dexem Pagecreator. Rapport de stage"

Transcription

1 Immeuble Delta 40, rue du Bignon CHANTEPIE Tél : +33 (0) Fax : +33 (0) Développement de Dexem Pagecreator Rapport de stage Damien Le Berrigaud Master STS - mention INFORMATIQUE 2ème année - professionnel - spécialité Mitic Sous la responsabilité de Eric Ravelomanantsoa, Dexem SA Ewa Kijak, Ifsic - Irisa Université de Rennes 1 Septembre 2007 IFSIC - UNIVERSITÉ de RENNES 1 - Campus de Beaulieu RENNES CEDEX - FRANCE Tél. : Fax : Page 1 / 28

2 Remerciements Je voudrais remercier avant tout Eric Ravelomanantsoa qui m'a accompagné et conseillé pendant ce stage. Je voudrais également remercier Alain Jaouen et Philippe Simon ainsi que tous les employés de Dexem pour m'avoir accueilli et soutenu tout au long de ce stage. Page 2 / 28

3 Résumé Ce rapport a pour but de vous exposer un bilan du stage que j'ai effectué chez Dexem pour cette fin d'année de Master 2 Professionnel au sein de la formation Mitic de l'ifsic. L'objectif de ce stage était de développer les versions 2.4 et 2.5 de Dexem Pagecreator. Il s'agit d'une application utilisée dans un premier temps par des développeurs, ensuite par des clients de Dexem pour créer et mettre en production des Services Vocaux Interactifs (SVI). Les SVI sont les sites Webs du monde de la téléphonie. Dexem Pagecreator étant réalisé avec le cadre de développement (framework) Ruby on Rails ainsi qu'en PHP et VoiceXML, il m'a fallu m'adapter aux technologies que je ne connaissais pas encore. Il a également fallu m'adapter aux méthodes de travail de Dexem et participer à toutes les phases du développement d'une application : de la spécification aux tests d'intégration et de validation, en passant par la conception, le codage, les tests unitaires... Ce stage m'a finalement permis de découvrir de nouvelles technologies et méthodes développement que je ne connaissais pas. La formation du Master 2 Mitic m'a beaucoup aidé pour aborder plus facilement les différentes facettes de ces deux projets. Abstract The goal of this report is to share with you what I have done during my internship at Dexem. This internship concludes my Master's degree of Information technologies in MITIC. The goal of this internship was to develop version 2.4 and 2.5 of Dexem Pagecreator. It is a Web application mainly used by developers but it ought to be used by Dexem's clients in a very near future. This application is used to create Interactive Voice Responses (IVR). Those are «vocal Web sites» browsed by simple phones. Dexem Pagecreator being developed using the Ruby on Rails framework, PHP and VoiceXML, I had to adapt myself to these technologies I did not know yet. I also had to adpat myself to the working methods used at Dexem and take part in all phases of application development; including : software specification, validation tests, unit testing, design, coding... This internship finally permitted me to discover new technologies and development methods I did not know. The training during this year helped me a lot to treat easier these projects. Page 3 / 28

4 Sommaire 1. Introduction L entreprise...5 a) Les fondateurs...5 b) Le nom «Dexem»...6 c) Activité Présentation du stage...7 a) Intégration de l équipe R&D de Dexem...7 b) Développement du logiciel Dexem Pagecreator Travail Proposé Services Vocaux Interactifs Dexem Pagecreator...8 a) Présentation fonctionnelle...9 b) Architecture Méthodes et technologies...11 a) Méthodes de travail...11 b) Technologies pour le développement...12 c) Applications pour la gestion de projet Travail réalisé Travail introductif : amélioration d'un type de page Amélioration du système de droits Amélioration de l'ergonomie...20 a) La navigation...20 b) Simplification pour Pagecreator c) Adaptation à la charte Orange de France Télécom Ajout de «Services Web Vocaux» Support du navigateur vocal NIVR...24 a) Adaptation pour navigateur multi-langues b) Traitement des transferts Conclusion Page 4 / 28

5 1. Introduction Aujourd hui la téléphonie connaît une forte croissance. Que ce soit grâce au développement de la téléphonie mobile ou par l utilisation de plus en plus courante de la Voix sur IP (VoIP). La demande de nouveaux services vocaux suit ce courant, et les services déjà existant connaissent également une forte demande. Le Web est également un canal majeur de la communication entre les entreprises. L association du Web et de la téléphonie est donc parfaitement naturelle. C est dans ce cadre que Dexem s inscrit. L application principale de Dexem, Dexem Voice Publisher se décompose en deux autres applications : Dexem Pagecreator permet aux utilisateurs de créer et administrer des services vocaux. Dexem Analytics permet de visualiser des statistiques concernant la fréquentation des sites vocaux créés par Pagecreator. Dans ce rapport je présenterai un peu plus en détail la société Dexem. Ensuite je vous présenterai le travail qui m a été proposé sur Dexem Pagecreator. Puis je rentrerai plus dans les détails de mon travail tout au long de ce stage. Enfin je ferai un bilan de ces 5 mois passés chez Dexem et du travail que j ai pu y accomplir L entreprise a) Les fondateurs Dexem a été fondée en juillet 2000 par trois anciens des Bell Labs de Lucent Technologies et d'avaya Communication qui ont acquis chez ces géants des télécommunications une expérience à la fois managériale et technique. Alain Jaouen est le président de Dexem. Il a travaillé durant 15 ans dans le secteur des télécommunications en Europe et aux Etats-Unis. Au sein de Bell Labs, il a exercé différentes missions de direction technique et projets dans le domaine de la téléphonie et des transmissions. Il a travaillé auparavant chez Matra Communications et OST. Alain est titulaire d'un diplôme d'ingénieur de l'insa-lyon et un MBA d'audencia. Eric Ravelomanantsoa a passé toute sa carrière dans le domaine du logiciel appliqué aux télécoms (Ingenico, OST, AT&T puis Lucent Technologies). Toujours curieux des nouvelles tendances, il a développé une expertise dans les technologies à objets et les architectures de logiciel de téléphonie, en exerçant Page 5 / 28

6 différentes positions d'architecte logiciel en France et aux Etats-Unis. Eric est diplômé ingénieur de l'eseo. Philippe Simon a exercé tant en France qu'aux Etats-Unis des postes d'encadrement d'équipes R&D sur les plates-formes de téléphonie de Lucent Technologies. Précédemment, il a travaillé au sein de la société OST (leader européen dans le domaine X25) dans le domaine de l'administration de réseaux. Philippe détient un DEA en informatique avancée. b) Le nom «Dexem» Le choix du nom Dexem a pour origine l'association de deux mots : «digital» et «eskem». «Eskem» voulant dire échange en breton. La contraction de ces deux mots donne «Deskem», trop proche du mot anglais «desk» (bureau). Il fut alors suggéré de remplacer les lettres «sk» par un «x», symbole d'échange dans le mot anglais «exchange». Ce qui donne «Dexem». L'idée de marier un nom anglais à un nom breton s'est imposée. Un nom d'origine bretonne démontre la fierté et l'attachement aux racines celtes des fondateurs. La consonance américaine est une autre histoire de culture... d'entreprise, celle dont sont également imprégnés les fondateurs. c) Activité Dexem est une société de service qui travaille à la convergence du monde du Web et de la téléphonie. Elle utilise pour cela le langage VoiceXML. VoiceXML permet de rendre le contenu et les services du Web accessibles à tous sans passer par un ordinateur et par une connexion Internet, mais à partir d'un simple téléphone. De nombreuses applications sont alors imaginables : des services de portails qui combinent le Web et le VoiceXML pour permette à l'utilisateur de configurer les services qui l'intéressent par un site Web, puis de les consulter périodiquement par téléphone (météo, bourse, horoscope, actualité, infos trafic, des services de messagerie et de commerce électronique...), des services d'annuaires, des applications mains-libres ainsi que de multiples applications sectorielles... Dexem offre aux entreprises des prestations de consulting (missions d'expertise), d'intégration (intégration de solutions complexes) et d'ingénierie pour une nouvelle génération de services vocaux et d'applications de couplage téléphonie-informatique, exploitant la puissance d'internet et de ses standards. Ses domaines d'intervention sont : les centres d'appels. la gestion de la relation client (CRM). Page 6 / 28

7 les applications de Web-téléphonie. Ce sont l'ensemble des applications reposant sur un inter-fonctionnement d'applications informatiques et d'applications téléphoniques. les services vocaux pour téléphones mobiles ou couplés au Web (Portails Vocaux, Messageries) Dexem compte parmi ses clients la SNCF, Alcatel, Bouygues Telecom, Cegetel, Discofone, SFR ou encore France Télécom. L'effectif de l'entreprise est inférieur à dix personnes. Cette société est située à Rennes et s'adresse dans un premier temps à l'ensemble de l'europe francophone mais internationalise également son offre notamment par le biais d Equant (France Télécom) Présentation du stage a) Intégration de l équipe R&D de Dexem Pour toute la durée de mon stage, j'ai intégré l'équipe R&D de Dexem. C'est à dire que j'ai participé au développement de leur produit phare actuel: Dexem Pagecreator. Les évolutions de l'application que j'ai produite durant mon stage sont passées en production et sont aujourd'hui utilisées par les clients de Dexem. Il s'agit pour moi d'un des principaux avantages de ce stage. On ne me demande pas de développer une application qui ne sera peut-être jamais utilisée par l'entreprise, on me demande au contraire de développer des évolutions pour une application afin de l'améliorer et de mettre ces améliorations en production. b) Développement du logiciel Dexem Pagecreator Le logiciel que j'ai participé à améliorer s'appelle Dexem Pagecreator. Il s'agit d'une application Web faites avec le cadre de développement Ruby on Rails. Cette application permet aux utilisateurs de créer des Services Vocaux Interactifs (SVI). Les SVI de Pagecreator sont des applications faites en VoiceXML et permettant de proposer des services accessibles depuis n'importe quel téléphone. J'ai développé durant mon stage deux grandes évolutions de Dexem Pagecreator : les versions 2.4 et 2.5. Page 7 / 28

8 2. Travail Proposé Dexem propose à ses clients de créer des services vocaux interactifs (SVI) ou de leur donner accès à leur application permettant de les créer. Je vais dans cette partie décrire un peu plus en détail ce qu'est un SVI puis je décrirai les applications de Dexem Voice Publisher et plus particulièrement Dexem Pagecreator que j'ai développé pendant ce stage Services Vocaux Interactifs Les services vocaux interactifs (SVI) peuvent être comparés aux services Web classiques. Un service Web utilisera essentiellement le langage XHTML pour se présenter à l'utilisateur alors que le SVI utilise le langage VoiceXML. Un service Web est accessible depuis un ordinateur connecté à Internet alors que le SVI est accessible depuis un simple téléphone. Enfin, le service Web est accessible (en général) en utilisant un navigateur Web (tel que Firefox, Internet Explorer...) alors que le SVI utilise un navigateur vocal pour interpréter le VoiceXML de manière totalement transparente pour l'utilisateur. Figure 1 Comparaison VXML / HTML Dexem Pagecreator est l'application qui va permettre aux clients et aux développeurs de Dexem de générer le code VoiceXML nécessaire à la création du SVI Dexem Pagecreator Pour créer et publier des SVI, Dexem a développé sa propre application nommée Dexem Voice Publisher. Cette application se découpe en deux applications Web différentes. Page 8 / 28

9 Dexem Analytics qui sert à obtenir et visualiser des statistiques de fréquentation des SVI. Dexem Pagecreator quant à lui permet de créer des SVI, il va générer le VoiceXML qui peut être interprété par un navigateur vocal et qui fait appel à des fonctionnalités d'analytics pour enregistrer les infos de passages au sein de l'application. Lorsque Dexem Voice Publisher était en version 1.8, il n'y avait pas de séparation entre Pagecreator et Analytics, il s'agissait d'une unique application. C'est au passage en version 2.0 que l'environnement de développement est passé du langage Java à Ruby: Pagecreator et Analytics sont nés à ce moment. a) Présentation fonctionnelle Dans sa version 2.3 (version en production à mon arrivée chez Dexem), Pagecreator représente un service vocal comme étant un arbre. La racine de cet arbre est la première page du site, ensuite elle peut bifurquer vers différentes pages selon les choix de l'utilisateur ou d'autre critères. En réalité, il ne s'agit pas d'un arbre mais plutôt d'un graphe. En effet il est possible de revenir sur ses pas et de créer des cycles au sein de l'application. Figure 2 Vue d'ensemble de Pagcreator 2.5, arbre représentant le site Page 9 / 28

10 Chaque noeud de l'arbre est une page. La page a l'un des types suivants : L'Annonce joue un fichier audio ou lit un texte (par synthèse vocale) à l'appelant et enchaîne vers une page suivante. Le Menu à reconnaissance vocale joue une annonce puis redirige l'appelant en fonction de ce que le moteur de reconnaissance vocale a reconnu. Le Menu DTMF (Dual-tone multi-frequency : nom donné au son que produit une touche de téléphone lorsqu'elle est enfoncée) joue une annonce puis redirige l'appelant selon le code tapé sur la clavier du téléphone. Le Transfert transfert l'appelant vers un numéro de téléphone donné. L'Aiguillage calendaire redirige l'appelant vers une page donnée. Hors jours fériés et dans les plages horaires indiquées, l'appelant est redirigé vers une page, sinon vers une autre. Et c... Un système de compte permet de gérer les utilisateurs et leurs sites. Les utilisateurs d'un compte peuvent avoir des droits d'écriture et/ou de lectures sur les sites d'un compte. Les premiers travaux que j'ai effectué sur Pagecreator sont : L'amélioration de la page Aiguillage calendaire pour supporter deux plages horaires par jour et l'activation individuelle des jours de la semaine. L'amélioration du système de droits dans le but de mieux séparer la création de sites de la gestion de contenu de sites. b) Architecture L'architecture de Pagecreator est divisée en trois parties : Le serveur Web contient le coeur de l'application, du métier à l'interface utilisateur, tout se trouve ici. C'est ce serveur Web qui va générer les fichiers VoiceXML d'une application vocale. Le serveur vocal contient les fichiers VoiceXML générés par le serveur Web. Une fois qu'un fichier est généré il est stocké dans l'arborescence de ce serveur. Le serveur de base de données contient l'ensemble des données de tous les sites et de tous les comptes Pagecreator. Les technologies utilisées sur ces différents serveurs sont décrites dans la partie suivante (2.3 b). Page 10 / 28

11 Figure 3 Architecture de Dexem Pagecreator 2.3. Méthodes et technologies Je vais maintenant vous décrire les méthodes de travail de la société Dexem ainsi que les différentes technologies utilisées pour l'application Dexem Pagecreator. a) Méthodes de travail La chose la plus importante chez Dexem est le partage des connaissances. La première chose que j'ai faite en arrivant chez Dexem en tant que stagiaire, c'est configurer mon poste de travail pour avoir accès au serveur de fichiers de l'entreprise. Celui-ci contient toutes les informations nécessaires au développement d'une application ou d'une autre. Cela va des spécifications des anciennes versions d'un logiciel aux détails de conceptions des dernières évolutions en passant par la documentation des technologies utilisées pour travailler... Le suivi du projet est également très important, il est fait de manière hebdomadaire. Ainsi j'avais au moins une réunion par semaine avec Eric Ravelo pour faire le point sur les avancées du projet et sur ce qu'il reste à faire. On discutait également pendant ces réunions de la spécification du besoin ou de certains points de conception. Cela permet d'améliorer sans cesse l'application en y intégrant le meilleur des points de vue de chacun. Page 11 / 28

12 Dans le but d'avoir un produit facile à développer et à comprendre quelques étapes du développement de projet sont indispensables : La spécification détaillée des lignes directrices de développement. Ainsi pour chaque nouvelle version, un document de spécification est réalisé et indique les nouvelles fonctionnalités apportées, les fonctionnalités qui sont modifiées... Ce document est relu par plusieurs développeurs dans le but de le rendre le plus concis possible. La documentation de la conception doit être faite soigneusement dans le but d'expliquer les décisions prises lors du développement de l'application. On y explique ainsi les modèles statiques mis en place pour la réalisation d'une foncitonnalité ainsi que le fonctionnement dynamique de cette fonctionnalité (par le biais de diagrammes de séquences UML par exemple). Des séances de relecture de code sont organisées régulièrement. Cela m'a permis de profiter de l'expérience d'eric mais aussi des autres employés de Dexem qui ont également participé à ces réunions. Ainsi les autres développeurs comprennent mieux le fonctionnement de l'application et apportent leur expérience pour améliorer son implémentation. Ces étapes sont indispensables pour bien comprendre l'application. Il faut également savoir que la spécification n'est pas close avant de passer à la conception... il se peut que des points s'éclaircissent lors de la conception et amènent à faire une itération supplémentaire sur la spécification du besoin... le travail est itératif. Lorsque le développement de l'application semble terminé (codage et tests unitaires de chaque fonctionnalité de la nouvelle version), une série de tests de validation et d'intégration est réalisée par un groupe de personnes. Ce groupe est toujours plus important que l'équipe de développement du projet (pour gagner du temps et rendre ce travail moins fastidieux pour chacun). Il a pour rôle de suivre une liste de scénarios, définie par l'équipe de développement, et de trouver les bugs qui peuvent persister dans l'application. Ces tests sont effectués de manière itérative jusqu'à ce qu'il ne reste plus aucun bug relatif à ces scénarios. De cette manière nous sommes sûrs de répondre aux besoins du client et si les scénarios de tests sont exhaustifs, nous sommes sûrs de minimiser le nombre de bugs qui peuvent passer au travers des mailles du filet au moment de la mise en production. b) Technologies pour le développement L'application Dexem Pagecreator utilise plusieurs technologies différentes pour arriver à ses fins. Page 12 / 28

13 1) Ruby on Rails Le coeur de l'application qui se trouve sur le serveur Web est développé avec le cadre d'applications Ruby on Rails (également appelé «RoR» ou encore «Rails»). Rails est issu d'un outil de gestion de projet nommé Basecamp développé par David Heinemeier Hansson. La première version de Rails date de 2004 et sa première version stable de décembre 2005, il est très récent et peu utilisé en France. Comme son nom l'indique, Ruby on Rails utilise le langage Ruby. C'est un langage de programmation interprété orienté objet. Il est à l'intersection de Perl (pour le traitement des chaînes de caractère), Eiffel (pour la syntaxe), Python et Smalltalk (pour les notions de programmation objet). Tout est objet en Ruby mais cela n'empêche pas pour autant de l'utiliser comme langage procédural. La philosophie principale de Rails est de préférer la convention plutôt que la configuration. Ainsi les comportements par dégaut de Ruby on Rails permettent de gagner beaucoup de temps, que ce soit pour l'utilisation du pluriel pour le nommage des tables de la base de données ou bien le nommage des attributs qui servent de clef étrangère... Rails est un environnement très structuré. Il utilise le modèle MVC (Modèle Vue Contrôleur) pour la séparation du coeur du métier de l'interface utilisateur : Le modèle est un ensemble de classes qui vont gérer les données présentes dans la base de données. Les vues vont présenter à l'utilisateur les données du modèle et permettre éventuellement d'interagir avec celles-ci. Dans notre cas, les vues sont en XHTML avec du Ruby embarqué : RHTML. Les vues peuvent également être des réponses à des requêtes Ajax (Javascript Asynchrone et XML), dans ce cas le code d'une vue est en Ruby et génère du Javascript. Les contrôleurs quant à eux sont les actions accessibles à l'utilisateur. En général, l'utilisateur accède à une action d'un contrôleur en tappant une adresse URL dans son navigateur ou en cliquant sur un lien. Le contrôleur va alors accéder au modèle pour mettre en place ce qui est nécessaire à l'affichage d'une ou plusieurs vues. Page 13 / 28

14 Figure 4 le patron de conception Modèle Vue Contrôleur La liaison avec la base de données dans le cadre du développement Ruby on Rails se fait par une bibliothèque nommée Active Record. Il s'agit d'un ORM (Object-Relational Mapping) qui se base sur la structure des tables de la base de données pour créer les objets du modèle de l'application. Comme tout ce qui se trouve dans Rails, il se base essentiellement sur des conventions : le nom de la table est au pluriel, la classe est au singulier, une clef étrangère prend le nom de la classe cible suivi du suffixe «_id»... bien entendu il est possible de personnaliser ce comportement qui rend l'utilisation de la base de données on ne peut plus simple. L'objectif principal de l'application Rails de Pagecreator est de pouvoir générer du code VoiceXML qui sera accessible depuis un téléphone. 2) Voice XML Avant la naissance du langage VoiceXML les solutions offertes pour développer des applications vocales étaient propriétaires. VoiceXML essaye donc de standardiser le monde des applications vocales en offrant un langage de balisage «simple» qui permet de développer un grand nombre d'applications vocales différentes. L'intérêt majeur de VoiceXML est son héritage du langage XML qui permet à des services Web classiques de devenir des services vocaux. Cela permet de gagner beaucoup de temps dans le développement d'une application vocale étant donné qu'un simple serveur Apache peut servir des pages en VoiceXML. Page 14 / 28

15 Ce langage comme d'autres langages de balisage doit être interprété. Dans le cas de VoiceXML, c'est un navigateur vocal qui va l'interprêter. Il va ainsi pouvoir transformer les balises des fichiers VXML en annonces, transferts, menu à reconnaissance vocale, etc... L'utilisation de ce mécanisme entre VoiceXML et le navigateur vocal permet un découplage parfait entre la description du service (faite en VoiceXML) et l'application de celui-ci (faite par le navigateur vocal). La mise en place des pages VXML par l'application Pagecreator permet une grande souplesse, cependant on aimerait parfois un peu plus de dynamisme que de simples fichiers VoiceXML statiques générés. C'est pour cela qu'on utilise également le langage PHP. 3) PHP Les évolutions récentes de Dexem Pagecreator que j'ai développées nécessitent parfois d'accèder à la base de données. J'ai par exemple développé une page VoiceXML qui permet d'aiguiller l'utilisateur vers un numéro de téléphone faisant parti d'une liste. Chaque numéro de cette liste est associé à un pourcentage de transfert à atteindre. La mise en oeuvre de ce type de transfert nécessite de mémoriser les transferts qui ont été effectués vers chaque numéro. Cela nécessite donc l'utilisation d'un langage du côté du serveur qui va générer le VoiceXML en fonction du contenu de la base de données. Le langage PHP est parfait pour ce genre de petits travaux. Une architecture MVC (Modèle Vue Contrôleur) est mise en place pour chaque petit programme PHP qui retourne du VoiceXML. 4) MySQL La base de données utilisée par Pagecreator est MySQL. C'est le standard utilisé par la majorité des applications Ruby on Rails développées aujourd'hui. Le choix se fait assez simplement : c'est une base de données rapide, et Ruby on Rails ne nécessite pas de contrôle au sein même de la base, c'est le modèle qui se charge de l'intégrité des données. Il n'y a donc pas besoin de la puissance du PL/SQL d'oracle, de plus cela épargne le coût d'une licence. c) Applications pour la gestion de projet 1) Subversion Le partage des fichiers et les accès concurrents aux fichiers du projet sont gérés par un serveur Subversion. C'est bien évidemment indispensable pour gérer n'importe quel projet. Page 15 / 28

16 2) Trac Trac est une application Web qui permet de gérer un projet. Il s'installe en parallèle du serveur subversion et permet d'explorer son contenu. Il contient également un Wiki dans lequel nous documentons certains points de conception de l'application Pagecreator. Trac nous permet également de répertorier les bugs existants dans l'application. Il est possible de poster des tickets de rapports de bug en spécifiant la sévérité, la priorité... il est également possible d'affecter un bug à une personne pour sa correction. Lorsqu'on corrige un ticket, on spécifie le numéro du ticket corrigé dans le commentaire du «commit» sur le serveur subversion. Ainsi il est possible de suivre la ligne de vie des bugs de Pagecreator. 3) Capistrano Capistrano quant à lui est un outil utilisé pour le déploiement d'applications Ruby on Rails depuis un serveur Subversion. Il suffit de configurer le serveur cible et divers paramètres comme la connexion à la base de données, le «tag» du serveur subversion à mettre en production... Il peut ensuite déployer une nouvelle version de l'application en moins de cinq minutes. Le processus de mise en production par capistrano est testé avant chaque déploiement sur le serveur de tests utilisé lors de la phase de la validation de la version. Page 16 / 28

17 3. Travail réalisé A mon arrivée chez Dexem, j'ai d'abord appris les bases du développement avec Ruby on Rails. J'ai donc passé une première semaine exclusivement à me former sur le sujet : apprentissage du langage Ruby par le biais de divers tutoriaux sur Internet apprentissage du cadre de développement Rails. Pour cela j'ai essentiellement utilisé le livre «Agile Web Development with Rails 2 nd Edition» de Dave Thomas et David Heinemeier (le créateur de Ruby on Rails). Suite à cette semaine de «formation» j'ai directement commencé à essayer de comprendre le fonctionnement de l'application Pagecreator. Pour cela j'ai effectué un des travaux inclus dans le développement de Pagecreator 2.4 : l'amélioration d'un type de page disponible, l'aiguillage calendaire Travail introductif : amélioration d'un type de page Ce premier travail a été particulièrement important car les pages au sein de Pagecreator sont centrales. Chaque type de page est représenté par un modèle dont les données sont stockées en base de données. Les pages lorsqu'elles sont créées ou modifiées sont générées au format VoiceXML, elles sont en général en un unique fichier VoiceXML. L'application, pour bien séparer ces tâches de maintenance du modèle et de génération VoiceXML, est divisée en deux parties. En effet le générateur VoiceXML est en fait une bibliothèque représentée par un objet Ruby qui, une fois instancié, permet de générer le ou les fichiers VoiceXML correspondants à une page, ou même à un site complet. Les contrôleurs de l'application qui permettent de gérer les modèles correspondant aux sites, pages, utilisateurs... appellent le générateur de VoiceXML quand cela est nécessaire. De cette manière le serveur vocal (qui stocke les sites au format VXML) est constamment synchronisé avec le contenu de la base de données. Ce premier travail qui m'a été demandé n'était pas particulièrement complexe ni très long à effectuer. Cependant il m'a permis de comprendre une partie essentielle du fonctionnement de Pagecreator : la création, la maintenance et la génération des Pages. Page 17 / 28

18 Figure 5 Aiguillage calendaire sous Pagecreator 2.3 : plages horaires Figure 6 Aiguillage Calendaire sous Pagecreator 2.4 : plages horaires Suite à cela, le travail que j'ai effectué était beaucoup plus volumineux et plus complexe Amélioration du système de droits La spécification des besoins du client pour Dexem Pagecreator 2.4 a fait ressortir essentiellement deux lignes directrices. Dans un premier temps, l'une d'elles incluait l'amélioration du système de droits. La conception de cette première amélioration de Pagecreator n'a pas été simple. Je n'étais alors pas encore accomodé à l'application du modèle MVC. L'objectif de ce système de droits est de permettre à certains utilisateurs de modifier le contenu des pages d'un site vocal sans avoir la connaissance de l'architecture du site vocal, et sans avoir la connaissance des pages elles-mêmes. Par exemple : dans un site, on utilise diverses annonces, on peut également utiliser des pages pour transférer l'utilisateur vers des numéros de téléphones, on peut aussi avoir des pages aiguillage calendaire... Un utilisateur qui pourra gérer le contenu pourra gérer : les messages de certaines annonces, les numéros de destinations de certains transferts, ou les calendriers de certains aiguillages calendaires. Page 18 / 28

19 Lorsqu'on développe une nouvelle fonctionnalité, il est important de savoir ce qu'on veut en terme d'interface utilisateur pour cette fonctionnalité. C'est un des côtés intéressant chez Dexem, on ne laisse pas de côté l'interface utilisateur. Au contraire on y pense dès la spécification dans le but d'avoir un logiciel aussi clair que possible. Dans notre cas, on voulait ajouter des onglets à l'application existante : un onglet pour gérer les messages, un onglet pour gérer les destinations de transferts et un onglet pour gérer les calendriers. Chacun de ces onglets présenterait une liste cliquable des objets administrables et cliquer sur un objet mènerait sur une page d'édition. Figure 7 onglets de gestion de contenu, liste des messages administrables En face de chaque message de la liste, un lien «edit» permet d'obtenir le forumlaire d'édition du message (visible ci-dessous). On ne sait pas quelle page contient le message on ne connaît que le nom du message, il n'y a donc pas besoin de connaître l'architecture exacte du site vocal. Figure 8 onglets de gestion de contenu, édition d'un message Page 19 / 28

20 Au final, le résultat a été «simplement» mis en place par la création de contrôleurs supplémentaires qui réutilisent des vues et des modèles déjà existants. Seulement les accès en lecture et/ou en écriture sont mis en place par le contrôleur. Il suffit donc de modifier les vues pour qu'elles s'affichent correctement selon le contrôleur qui les utilise. Le modèle MVC apporte beaucoup de libertés dans ce sens : si les vues sont bien faites, on peut facilement les réutiliser avec différents contrôleurs pour effectuer des actions spécifiques à ces contrôleurs Amélioration de l'ergonomie Un des travaux importants qui m'ont été confiés dans le développement de Pagecreator est l'amélioration de l'ergonomie aussi bien pour la version 2.4 que la version 2.5. Pour la version 2.4, c'est essentiellement le système de navigation entre différents sites sur un même compte qui voulait être revu. a) La navigation Dans Dexem Pagecreator 2.3, pour éditer un site, on devait cliquer sur l'onglet «sites» ensuite on devait cliquer sur la version du site à éditer et enfin on devait cliquer sur «editer les pages». Si on se déplaçait dans un autre onglet et qu'on revenait, on devait refaire la même manipulation. C'était une perte de temps pour les développeurs de sites vocaux dès qu'ils voulaient vérifier l'onglet des fichiers audios par exemple. Dans Dexem Pagecreator 2.4 nous avons pris la décision de créer un onglet «pages» et d'ajouter un «sélecteur de site» à l'application. Ce sélecteur de site indiquerait le site utilisé en ce moment et permettrait d'en changer depuis les onglets «sites», «pages», «messages», «destinations» et «calendriers». Le site sélectionné est mémorisé en session et même dans le compte de l'utilisateur (en base de données). Cela permet quand on navigue d'un onglet à un autre ou quand on se déconnecte et qu'on se reconnecte, d'arriver directement sur le bon site et la bonne version. Ce travail a été long et ne s'est pas fait en une seule étape. En effet lorsqu'on travaille sur l'ergonomie de l'application, il est important de communiquer avec les autres personnes qui travaillent sur le projet ou qui utilisent l'application. De cette manière on regroupe différents avis pour réussir à obtenir la meilleure interface utilisateur possible. Page 20 / 28

21 Figure 9 Interface de Pagcreator 2.3, pas de sélecteur de site, pas d'onglet pages... Figure 10 Sélecteur de site de Pagecreator 2.4 (sur la gauche). Les lignes directrices de l'ergonomie de Pagecreator 2.5 étaient la simplification pour des clients non informaticiens. b) Simplification pour Pagecreator 2.5 Pour simplifier l'interface utilisateur pour des non informaticiens, nous avons en premier lieu décidé d'améliorer l'arbre des pages et son utilisation. En effet sous Pagecreator 2.4, l'abre des pages n'est pas très pratique à utiliser. Quand on édite une page on a aucune idée de sa position dans le site car on ne peut pas à la fois éditer la page et visualiser l'arbre sous Pagecreator 2.4. Nous avons donc décidé d'afficher le nouvel arbre sur la gauche et le formulaire d'édition de la page Page 21 / 28

22 sélectionnée sur la droite. Dans le but de ne pas recharger constamment la page, nous avons décidé d'utiliser Ajax. L'utilisation d'ajax par le biais de Ruby on Rails est assez simple, on a pas besoin d'écrire de javascript, c'est Rails qui transcrit du code Ruby en Javascript. La difficulté d'ajax vient plutôt de la complexité des pages que nous affichons et les compatibilités différentes selon les navigateurs. En effet Internet Explorer par exemple est beaucoup plus sensible à l'arbre XHTML qui représente la page au moment d'effectuer une mise à jour de celle-ci. Ainsi dans certains cas on peut avoir des requêtes Ajax qui fonctionnent sur Internet Explorer et pas sous Firefox ou bien Opera. Mais le plus souvent c'est le contraire qui se produit. Il m'a donc fallu apprendre au fur et à mesure quelles étaient les limites de chacun pour réussir à éviter les bugs ou bien même contourner certaines limites. Figure 11 L'arbre de Pagecreator 2.5, édition d'un menu DTMF Le travail sur les icônes de l'abre a également été assez long. On voulait que l'icône d'une page dans l'arbre permette d'un seul coup d'oeil de déterminer son type et quel est son rôle par rapport à la page parente. Par exemple on veut pouvoir déterminer qu'une page est une annonce et que cette annonce est atteinte dans le cas où le transfert de la page parente a abouti à un cas d'occupation. Racine de l'arbre Aiguillage Annonce sur Erreur Transfert sur DTMF 1 Figure 12 Quelques exemples d'icônes Page 22 / 28

23 c) Adaptation à la charte Orange de France Télécom En tant que client de Dexem, Equant (France Télécom) a le droit à son propre thème pour les comptes de ses clients. J'ai donc travaillé sur l'application de la charte Orange pour un thème applicable aux comptes de Pagecreator. Figure 13 Aperçu de l'apparence de Pagecreator pour la marque Orange Ainsi tous les utilsateurs d'un compte de la marque Orange auront une apparence propre à la charte de la marque. Pour cela il a fallu modifier les couleurs utilisées, modifier les onglets, le sélecteur de site, le pied de page... Un document officiel de la marque m'a été fourni pour savoir en détail ce qui devait être modifié. J'ai ensuite adapté en fonction de ce qui était faisable en un temps limité. Heureusement pour moi, ce n'était pas mon premier travail avec des feuilles de style en cascade (CSS) et je connais plutôt bien le comportement des différents navigateurs pour l'application de styles Ajout de «Services Web Vocaux» Pagecreator 2.4 et 2.5 apportent trois nouveaux types de pages que nous appelons des «Services Web Vocaux» Le premier service Web vocal sert à transférer l'appelant vers un numéro figurant dans une liste. Le numéro utilisé est défini selon une stratégie de distribution cyclique. Ainsi le premier appelant est transféré vers le premier numéro, le deuxième vers le deuxième numéro... et lorsque le dernier numéro est atteint on revient au premier numéro. Le deuxième service Web vocal quant à lui est une table de routage. L'utilisateur de Pagecreator peut paramètrer une variable VoiceXML à tester. Il indique ensuite une liste de valeurs et leurs destinations. Ces destinations peuvent être des pages du site vocal Page 23 / 28

Sommaire. Présentation de Dexem Services Vocaux Interactifs et VoiceXML Dexem Pagecreator Travail proposé par Dexem Travail réalisé Conclusion

Sommaire. Présentation de Dexem Services Vocaux Interactifs et VoiceXML Dexem Pagecreator Travail proposé par Dexem Travail réalisé Conclusion Développement de Dexem Page Creator Stagiaire: Damien Le Berrigaud Responsables de stage: Eric Ravelomanantsoa (Dexem SA), Ewa Kijak (Ifsic - Irisa) 1 Sommaire Présentation de Dexem 2 Présentation de Dexem

Plus en détail

Applications orientées données (NSY135)

Applications orientées données (NSY135) Applications orientées données (NSY135) 2 Applications Web Dynamiques Auteurs: Raphaël Fournier-S niehotta et Philippe Rigaux (philippe.rigaux@cnam.fr,fournier@cnam.fr) Département d informatique Conservatoire

Plus en détail

Serveur d intégration continue Jenkins et d analyse de code Sonar couplés à la forge logiciel SourceSup

Serveur d intégration continue Jenkins et d analyse de code Sonar couplés à la forge logiciel SourceSup Serveur d intégration continue Jenkins et d analyse de code Sonar couplés à la forge logiciel SourceSup Sébastien MEDARD GIP RENATER 263 avenue du Général Leclerc CS 74205 35042 Rennes Cedex Résumé L intégration

Plus en détail

CORRECTION D UN BUG (INTERACTION DEVELOPPEUR/TESTEUR)

CORRECTION D UN BUG (INTERACTION DEVELOPPEUR/TESTEUR) CORRECTION D UN BUG (INTERACTION DEVELOPPEUR/TESTEUR) 1 Correction d un bug (interaction développeur/testeur) Sommaire Avertissement...2 Aperçu...3 1. Résolution du problème...4 Triage et affectation de

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

Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe

Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe Tony Galmiche le 28 février 2011 (modifiée alb) Sommaire 1 - Accès au portail de l'application GED...3

Plus en détail

WSS Windows Sharepoint Services Guide pratique. Section Technopédagogie

WSS Windows Sharepoint Services Guide pratique. Section Technopédagogie WSS Windows Sharepoint Services Guide pratique Section Technopédagogie Août 2007 1. QU EST CE QUE WSS? «Un site WSS SharePoint est un site Web représentant un espace de collaboration et un lieu de stockage

Plus en détail

Introduction à la programmation web

Introduction à la programmation web Introduction à la programmation web Nouvelles Technologies Dr. Thé Van LUONG The-Van.Luong@heig-vd.ch HEIG-VD Switzerland 8 octobre 2015 1/34 8 octobre 2015 1 / 34 Plan 1 État de l art des langages orientés

Plus en détail

WordPress : Guide à l édition

WordPress : Guide à l édition WordPress : Guide à l édition WordPress : Guide à l édition... 1 Présentation... 2 1. Accès au site... 2 2. Le tableau de bord... 2 3. Editez les contenus... 4 Quelle est la différence entre les pages

Plus en détail

Mettre en place sa plateforme de veille avec Netvibes

Mettre en place sa plateforme de veille avec Netvibes Mettre en place sa plateforme de veille avec Netvibes Karine Pasquier 6 mai 2011 HEG, Genève 1 Sommaire 1. Introduction... 3 1.1 Qu est-ce que c est... 3 1.2 A quoi ça sert pour la veille?... 3 1.3 Netvibes

Plus en détail

Rapport individuel Génie logiciel

Rapport individuel Génie logiciel 2012 Rapport individuel Génie logiciel Dans ce rapport sera présenté l ensemble des activités effectuées au cours du projet de création de site de covoiturage «Etucovoiturage» (http://etucovoiturage.free.fr)

Plus en détail

Plateforme AnaXagora. Guide d utilisation

Plateforme AnaXagora. Guide d utilisation Table des matières 1. PRESENTATION DE LA PLATE-FORME D APPRENTISSAGE ANAXAGORA... 3 2. ARCHITECTURE FONCTIONNELLE... 4 3. L APPRENTISSAGE... 5 3.1. L ESPACE DE TRAVAIL... 5 3.1.1. Le calendrier... 5 4.

Plus en détail

Alfresco Mobile pour Android

Alfresco Mobile pour Android Alfresco Mobile pour Android Guide d'utilisation de l'application Android version 1.1 Commencer avec Alfresco Mobile Ce guide offre une présentation rapide vous permettant de configurer Alfresco Mobile

Plus en détail

Contexte PPE GSB CR. Analyse. Projet réalisé :

Contexte PPE GSB CR. Analyse. Projet réalisé : Contexte PPE GSB CR Le laboratoire est issu de la fusion entre le géant américain Galaxy et le conglomérat Swiss Bourdin. Cette fusion a eu pour but de moderniser l activité de visite médicale et de réaliser

Plus en détail

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web.

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web. Document 1 : client et serveur Les ordinateurs sur lesquels sont stockés les sites web sont appelés des serveurs. Ce sont des machines qui sont dédiées à cet effet : elles sont souvent sans écran et sans

Plus en détail

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm LES COURS ONLINE P ar des étudiants our des étudiants Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm CAHIER DES CHARGES I - Préface...4 II - Introduction...5 III - Glossaire...6

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

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

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

StockMalin l application pour les brocanteurs!

StockMalin l application pour les brocanteurs! StockMalin l application pour les brocanteurs! Conçue en intégralité par Quentin Comte-Gaz StockMalin Gestion de stock/clients/fournisseurs en ligne (2014) 1/15 Sommaire Introduction...3 PARTIE 1 : DESCRIPTION

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

Systèmes de Gestion de Contenu

Systèmes de Gestion de Contenu Introduction aux de site Web Master 1 CAWEB Page 1/7 Introduction Définition CMS Content Management Systems : logiciels de conception et de mise à jour dynamique de site web ou d'application multimédia

Plus en détail

Rapport de stages BTS SIO première et seconde années

Rapport de stages BTS SIO première et seconde années Rapport de stages BTS SIO première et seconde années Stage 1 : du 10 juin 2013 au 28 juillet 2013 (7 semaines) Stage 2 : du 02 septembre 2013 au 04 octobre 2013 (5 semaines) Organisme d'accueil : CNRM

Plus en détail

Guide Reseller Onbile

Guide Reseller Onbile Guide Reseller Onbile Cher Revendeur, Avez-vous un doute en ce qui concerne le fonctionnement du Panneau d Administration du Plan Reseller de Onbile? Le guide Reseller Onbile est ce dont vous avez besoin!

Plus en détail

TD1. Installation de Symfony 2 et Netbeans

TD1. Installation de Symfony 2 et Netbeans I - Introduction : TD1 Installation de Symfony 2 et Netbeans L objet de ce TP est d installer l environnement de travail. Nous commençons par définir des notions de base nécessaires pour comprendre la

Plus en détail

Initiation au mail. Sommaire : 1. Qu'est-ce qu'un mail?...3 2. Deux types d'outils pour consulter ses mails...4

Initiation au mail. Sommaire : 1. Qu'est-ce qu'un mail?...3 2. Deux types d'outils pour consulter ses mails...4 Initiation au mail Sommaire : 1. Qu'est-ce qu'un mail?...3 2. Deux types d'outils pour consulter ses mails...4 2.1. Les logiciels de gestion de mail...4 2.2. Les webmails...5 3. Se connecter au webmail...6

Plus en détail

MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE

MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE MODELE D UN RAPPORT DE STAGE DE BAC PRO ELECTROTECHNIQUE [Prénom Nom] Rapport sur le stage effectué du [date] au [date] Dans la Société : [NOM DE LA SOCIETE : Logo de la société] à [Ville] [Intitulé du

Plus en détail

Tobii Communicator 4. Guide de démarrage

Tobii Communicator 4. Guide de démarrage Tobii Communicator 4 Guide de démarrage BIENVENUE DANS TOBII COMMUNICATOR 4 Tobii Communicator 4 permet aux personnes souffrant de handicaps physiques ou de communication d'utiliser un ordinateur ou un

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

Introduction MOSS 2007

Introduction MOSS 2007 Introduction MOSS 2007 Z 2 Chapitre 01 Introduction à MOSS 2007 v. 1.0 Sommaire 1 SharePoint : Découverte... 3 1.1 Introduction... 3 1.2 Ce que vous gagnez à utiliser SharePoint... 3 1.3 Dans quel cas

Plus en détail

Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe

Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe Simon Benjamin BTS SIO Rapport de stage : Création d un site web pour la Communauté des communes du pays vernois et du terroir de la truffe Entreprises : 2014/2015-1 - - 2 - Remerciements Je tiens tout

Plus en détail

Utilisation de Sarbacane 3 Sarbacane Software

Utilisation de Sarbacane 3 Sarbacane Software Tutorial par Anthony Da Cruz Utilisation de Sarbacane 3 Sarbacane Software Ambiance Soleil 17 Rue Royale 74000, Annecy Sommaire 1. Présentation générale 2. Guide étape par étape 3. Astuces de l éditeur

Plus en détail

Pourquoi créer un site Web?

Pourquoi créer un site Web? Créer mon site Web Vous avez une passion, un centre d'intérêt, un "hobbie", et vous souhaitez en parler, partager autour de ce sujet. Vous avez bien pensé à utiliser l'espace web pour faire connaître votre

Plus en détail

Conception et Implémentation

Conception et Implémentation I. INTRODUCTION Dans ce chapitre on va définir la conception de notre site web dynamique et nous expliquons les étapes de réalisation, les outils utilisés et l interface principale ainsi que les différentes

Plus en détail

Manuel utilisateur. des. listes de diffusion. Sympa. l'université Lille 3

Manuel utilisateur. des. listes de diffusion. Sympa. l'université Lille 3 Manuel utilisateur des listes de diffusion Sympa à l'université Lille 3 1 Table des matières Table des matières...2 I. Introduction...3 II. Principe général de fonctionnement de «Sympa»...3 1. Les principaux

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

SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT. V 1.0 27 janvier 2011

SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT. V 1.0 27 janvier 2011 SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT V 1.0 27 janvier 2011 Ce document présente l'utilisation des plugins dans Tourism System Client. Dans le Client, un plugin

Plus en détail

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013 Introduction 1. Présentation du cas d étude 13 1.1 Présentation générale 13 1.2 Présentation des applications 13 2. Déroulement du projet 14 3. Pré-requis et fondamentaux techniques à connaître 15 3.1

Plus en détail

SchoolPoint Manuel utilisateur

SchoolPoint Manuel utilisateur SchoolPoint Manuel utilisateur SchoolPoint - manuel d utilisation 1 Table des matières Présentation de SchoolPoint... 3 Accès au serveur...3 Interface de travail...4 Profil... 4 Echange de news... 4 SkyDrive...

Plus en détail

Installation de TeamLab sur un serveur local Ce guide est destiné aux utilisateurs ayant des connaissances de base en administration Windows

Installation de TeamLab sur un serveur local Ce guide est destiné aux utilisateurs ayant des connaissances de base en administration Windows Information sur la version serveur TeamLab Serveur TeamLab est une version du portail destinée à ceux qui ont décidé d'installer et de configurer TeamLab sur leur propre serveur. A partir de la version

Plus en détail

A. Se connecter au LCS : taper l'adresse du collège dans la barre d'adresse :

A. Se connecter au LCS : taper l'adresse du collège dans la barre d'adresse : 1. COMMENT SE CONNECTER AU LCS Pour travailler au collège sur un ordinateur vous devez vous identifier comme utilisateur du réseau informatique. Le réseau informatique du collège vous permet de travailler

Plus en détail

Projet ISN - dossier réalisé par Randrianarimanana Stéphanie. Titre du projet : Site de rencontre. le nom de notre site de rencontre : Linkymeet

Projet ISN - dossier réalisé par Randrianarimanana Stéphanie. Titre du projet : Site de rencontre. le nom de notre site de rencontre : Linkymeet Projet ISN - dossier réalisé par Randrianarimanana Stéphanie Titre du projet : Site de rencontre le nom de notre site de rencontre : Linkymeet ( tout astérisque* signifie voir annexe) l'équipe : Randrianariamanana

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

Mémento professeur du réseau pédagogique

Mémento professeur du réseau pédagogique Mémento professeur du réseau pédagogique 1. Accéder au réseau pédagogique Il suffit quand on vous demande votre nom d utilisateur et votre mot de passe de renseigner ceux-ci. Votre nom d utilisateur est

Plus en détail

Compte rendu de stage de première année de BTS Services Informatiques Aux organisations

Compte rendu de stage de première année de BTS Services Informatiques Aux organisations Compte rendu de stage de première année de BTS Services Informatiques Aux organisations LORIVEL Thomas Année 2014/2015 Page 1 Sommaire Présentation de l entreprise Mes missions Conclusion de mon expérience

Plus en détail

domovea accès distant tebis

domovea accès distant tebis domovea accès distant tebis SOMMAIRE SOMMAIRE Page 1. INTRODUCTION... 2 1.1 OBJET DU DOCUMENT... 2 1.2 PRELIMINAIRES... 2 2.... 3 2.1 CONNEXION AU PORTAIL DOMOVEA.COM... 3 2.2 CREATION D'UN COMPTE PERSONNEL...

Plus en détail

Utilisation d'un Serveur SambaEdu pour un enseignant

Utilisation d'un Serveur SambaEdu pour un enseignant CRDP de l Académie de Versailles Mission TICE Médiapôles Mediapoles @crdp.acversailles.fr Utilisation d'un Serveur SambaEdu pour un enseignant 2, rue Pierre Bourdan 78160 MarlyleRoi Février 2013 http://www.tice.acversailles.fr

Plus en détail

Une fois la page chargée, vous devriez vous trouvez sur cette interface :

Une fois la page chargée, vous devriez vous trouvez sur cette interface : 1. Introduction Moodle est une plate-forme d enseignement collaborative en ligne déployée à l Université de Biskra. Elle permet de créer des espaces de cours accessibles depuis Internet où l enseignant

Plus en détail

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13 ACCUEIL...2 LA COMMANDE...3 ONGLET "NATURE DES TRAVAUX"...3 ONGLET INFORMATIONS...8 ONGLET RECAPITULATIF...9 LA COMMANDE SIMPLE A VALIDER PAR LES ACHETEURS...10 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12

Plus en détail

Plateforme d'évaluation professionnelle. Manuel d utilisation de l interface de test d EvaLog

Plateforme d'évaluation professionnelle. Manuel d utilisation de l interface de test d EvaLog Plateforme d'évaluation professionnelle Manuel d utilisation de l interface de test d EvaLog Un produit de la société AlgoWin http://www.algowin.fr Version 1.0.1 du 18/01/2015 Table des matières Présentation

Plus en détail

Mode d emploi d artishoc mobile

Mode d emploi d artishoc mobile Mode d emploi d artishoc mobile Version gratuite Version 4 Mise à jour le 05/01/2011 Ce mode d emploi est à l usage exclusif des utilisateurs de l offre mobile gratuite d artishoc mobile. Il n a pas de

Plus en détail

SOMMAIRE. I. Introduction 02. II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04

SOMMAIRE. I. Introduction 02. II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04 SOMMAIRE I. Introduction 02 II. Glossaire 03 a. Glossaire technique 03 b. Glossaire fonctionnel 04 III. Présentation de l'association 05 a. Présentation juridique et géographique 05 b. Présentation de

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

Plus en détail

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

Plus en détail

Configurer le navigateur

Configurer le navigateur Configurer le navigateur Vous utilisez internet tous les jours pour vérifier votre messagerie ou encore pour y faire vos achats. Êtes-vous sûr d'avoir sécurisé votre navigateur? Voici en détail quelques

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

Initiation au Web et à l HTML

Initiation au Web et à l HTML Initiation au Web et à l HTML Mathieu LACROIX, François RÉVERET, Antoine VACAVANT mathieu.lacroix@isima.fr françois.reveret@univ-bpclermont.fr antoine.vacavant@liris.cnrs.fr 2 et 3 Avril 2007 /40 Mathieu

Plus en détail

Publier des données sur le Web

Publier des données sur le Web Publier des données sur le Web Introduction Microsoft Excel fournit les outils dont vous avez besoin pour créer et enregistrer votre classeur sous forme d une page web et le publier sur le Web. La commande

Plus en détail

Content Manager System

Content Manager System Content Manager System Système de Gestion de Contenu GNU Free Documentation License Version 1.2, November 2002 Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor,

Plus en détail

//////////////////////////////////////////////////////////////////// Développement Web

//////////////////////////////////////////////////////////////////// Développement Web ////////////////////// Développement Web / INTRODUCTION Développement Web Le développement, également appelé programmation, désigne l'action de composer des programmes sous forme d'algorithme (codage).

Plus en détail

Administration du site (Back Office)

Administration du site (Back Office) Administration du site (Back Office) A quoi sert une interface d'administration? Une interface d'administration est une composante essentielle de l'infrastructure d'un site internet. Il s'agit d'une interface

Plus en détail

GUIDE DE L UTILISATEUR

GUIDE DE L UTILISATEUR FEI 2007-2013 GUIDE DE L UTILISATEUR du logiciel pour l établissement des statistiques sur les projets et leurs utilisateurs à l usage des bénéficiaires finaux (BF) d un cofinancement communautaire au

Plus en détail

CROSS PLATEFORM MOBILE DEVELOPMENT (Phonegap, RhoMobile)

CROSS PLATEFORM MOBILE DEVELOPMENT (Phonegap, RhoMobile) INGENIEUR EN SCIENCES INFORMATIQUES RAPPORT D ETUDE TECHNOLOGIQUE SUR LES SOLUTIONS WEB CROSS PLATEFORM MOBILE DEVELOPMENT (Phonegap, ) Student : Jiachen NIE Parcours: IHM Subject : Adaptation des Interfaces

Plus en détail

PROexo 2.01a : Guide de démarrage rapide. PROexo. V2.01a. Guide de Démarrage rapide. Auteur Sylvain LE GOFF : www.leprogiciel.

PROexo 2.01a : Guide de démarrage rapide. PROexo. V2.01a. Guide de Démarrage rapide. Auteur Sylvain LE GOFF : www.leprogiciel. PROexo V2.01a Guide de Démarrage rapide 1 Sommaire 1 Présentation a) Objectif du guide de démarrage rapide b) Présentation de PROexo 2 Partie administrateur a) Gestion des utilisateurs b) Gestion des exercices

Plus en détail

Prise en main du cartable en ligne professeur

Prise en main du cartable en ligne professeur Prise en main du cartable en ligne professeur V1 1 Accéder au «Cartable en Ligne» de l établissement L accès au «Cartable en Ligne» se fait en mode sécurisé avec le lien situé sur le site du collège (http://ent.clb.free.fr

Plus en détail

Portail Client Sigma Informatique

Portail Client Sigma Informatique Portail Client Sigma Informatique Edité le 19 févr. 2013 Sommaire Présentation du portail client 3 La page d accueil 8 Vie d une demande (Création et suivi) 11 La consultation d une demande. 18 La gestion

Plus en détail

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret. Bien programmer en Java 7 Avec plus de 50 études de cas et des comparaisons avec C++ et C# Plus de 10 000 ex. vendus! Édition en couleur Emmanuel Puybaret, ISBN : 978-2-212-12974-8 chapitre1 Présentation

Plus en détail

OUTIL de GESTION ADMINISTRATIVE des UE CAHIER DES CHARGES

OUTIL de GESTION ADMINISTRATIVE des UE CAHIER DES CHARGES OUTIL de GESTION ADMINISTRATIVE des UE CAHIER DES CHARGES ELIAS Éric POUZANCRE Sébastien SOULIE Guillaume ROGER Rémy Encadrants : Mme LIBOUREL Master Informatique Professionnel Année 2006 2007 Université

Plus en détail

progecad NLM Guide de l'utilisateur

progecad NLM Guide de l'utilisateur progecad NLM Guide de l'utilisateur Rev. 11.1 Table des matières Table des matières...2 Introduction...3 Comment démarrer...3 Installation de progecad NLM server...3 Enregistrement de progecad NLM server...3

Plus en détail

Maîtriser son clavier et apprivoiser sa souris

Maîtriser son clavier et apprivoiser sa souris Maîtriser son clavier et sa souris - 13 janvier 2014 p 1 Maîtriser son clavier et apprivoiser sa souris Le but de ce petit tutoriel est de vous aider à mieux connaître votre clavier, à insérer tous les

Plus en détail

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm LES COURS ONLINE P ar des étudiants our des étudiants Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm C AHIER DES CHARGES I - Préface...4 II - Introduction...5 III - Glossaire...6

Plus en détail

Gestion de stock facturation : openstock 1.02 juin 2006

Gestion de stock facturation : openstock 1.02 juin 2006 Introduction Gestion de stock facturation : openstock 1.02 juin 2006 Le rapport de stage de Laurent POUCHOULOU décrivant son travail sur la période d Avril à Juin 2006 a été transformé en documentation

Plus en détail

Utilisation de VLC et de l interface Web Enigma pour visualiser un programme satellite sur PC

Utilisation de VLC et de l interface Web Enigma pour visualiser un programme satellite sur PC www.sandbox-team.be Utilisation de VLC et de l interface Web Enigma pour visualiser un programme satellite sur PC 1/8 Objectif... 2 Solution retenue... 2 Etape n 1 : Installation de VLC... 2 Etape n 2

Plus en détail

KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04

KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04 KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04 Environnement : Ce projet a été réalisé en deuxième année de BTS, il s'agit d'un travail de groupe

Plus en détail

Initiation au Web et à l HTML

Initiation au Web et à l HTML Initiation au Web et à l HTML Thibault MARZAIS, Mathieu LACROIX, Antoine VACAVANT marzais@llaic3.u-clermont1.fr mathieu.lacroix@isima.fr antoine.vacavant@liris.cnrs.fr 24 et 25 Avril 2006 /39 Thibault

Plus en détail

Initiation au Web et à l'html

Initiation au Web et à l'html Initiation au Web et à l'html Mathieu LACROIX, François RÉVERET, Antoine VACAVANT mathieu.lacroix@isima.fr françois.reveret@univ-bpclermont.fr antoine.vacavant@liris.cnrs.fr 2 et 3 Avril 2007 /1 Mathieu

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

Recueil des Fiches Concepteurs : Mise en œuvre d un site SharePoint 2013 Juin 2015

Recueil des Fiches Concepteurs : Mise en œuvre d un site SharePoint 2013 Juin 2015 Recueil des s s : Mise en œuvre d un site SharePoint 2013 Juin 2015 Ce document décrit le paramétrage pour la mise en œuvre des fonctionnalités standard de Microsoft SharePoint 2013. NADAP et SharePoint

Plus en détail

Créer un nouveau site internet Lions e-clubhouse

Créer un nouveau site internet Lions e-clubhouse Créer un nouveau site internet Lions e-clubhouse L application Lions e-clubhouse www.e-clubhouse.org/application.php Nous sommes très heureux de pouvoir diffuser une nouvelle image du Lions Club International

Plus en détail

RÉSUMÉ DU TRAVAIL DE DIPLÔME

RÉSUMÉ DU TRAVAIL DE DIPLÔME Filière d'informatique de gestion Travail de diplôme ÉTUDE ORACLE XE & APEX RÉSUMÉ DU TRAVAIL DE DIPLÔME AUTEUR: BRUNO DA COSTA RESPONSABLE DU PROJET: FABRICE CAMUS MANDANT: LABORATOIRE DE GÉNIE LOGICIEL

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

Plus en détail

Module Article. Plate-forme de gestion de contenu. PubliShare utilise la librairie javascript (AJAX - Web 2.0)

Module Article. Plate-forme de gestion de contenu. PubliShare utilise la librairie javascript (AJAX - Web 2.0) G U I D E D U T I L I S AT I O N Publishare Plate-forme de gestion de contenu Module Article PubliShare utilise la librairie javascript (AJAX - Web.0) Sommaire Généralités Schéma de navigation Identification

Plus en détail

14 Le langage Java : concepts et pratique

14 Le langage Java : concepts et pratique Avant-propos Le langage Java, né en janvier 1995 chez Sun, est un langage à objets qui permet d écrire de façon simple et claire des programmes portables sur la majorité des plateformes. Lié à l essor

Plus en détail

Plateforme de capture et d analyse de sites Web AspirWeb

Plateforme de capture et d analyse de sites Web AspirWeb Projet Java ESIAL 2A 2009-2010 Plateforme de capture et d analyse de sites Web AspirWeb 1. Contexte Ce projet de deuxième année permet d approfondir par la pratique les méthodes et techniques acquises

Plus en détail

Guide Utilisateur Particuliers. Sommaire

Guide Utilisateur Particuliers. Sommaire Sommaire 1.Installation...3 1.1.Configuration...3 1.2.Sous Internet Explorer...4 1.3.Sous Mozilla Firefox...5 1.4.Sous Google Chrome...6 1.5.Aller sur le site...7 2.Identification...8 2.1.Inscription...8

Plus en détail

Manuel d utilisation de Form@Greta

Manuel d utilisation de Form@Greta Manuel d utilisation de Form@Greta Février 2014 Version apprenant Auriane Busson Greta-numerique@ac-caen.fr Sommaire 1. Qu est-ce que Form@Greta?... 2 2. S identifier sur la plateforme... 3 3. Espace d

Plus en détail

Architecture applicative de l application Web

Architecture applicative de l application Web Architecture applicative de l application Web Principes d organisation de l application PHP Gsb-AppliFrais Les principes d'organisation de l'application s'inspirent des travaux réalisés autour du contexte

Plus en détail

Remerciements. Je tiens à remercier tous ceux qui m'ont aidé et soutenu dans ce projet. Merci à tous! Cédric KEIFLIN

Remerciements. Je tiens à remercier tous ceux qui m'ont aidé et soutenu dans ce projet. Merci à tous! Cédric KEIFLIN KEIFLIN Cédric 1 Janvier KEIFLIN Cédric 2 Janvier Remerciements Je tiens à remercier tous ceux qui m'ont aidé et soutenu dans ce projet. Merci à tous! Cédric KEIFLIN KEIFLIN Cédric 3 Janvier Mes sites

Plus en détail

MINI-MÉMOIRE DE PPP - S4

MINI-MÉMOIRE DE PPP - S4 MINI-MÉMOIRE DE PPP - S4 Par [OUAZAR ARIS-ARAB] [S4-G2] [AYME OLIVIA] TABLE DES MATIÈRES ANALYSE DE L ENTREPRISE # PRESENTATION DE L ENTREPRISE # LISTE ET DESCRIPTION DES DIFFERENTS METIERS REPRESENTES

Plus en détail

Envoyez de vraies cartes postales personnalisées

Envoyez de vraies cartes postales personnalisées La Poste, http://www.laposte.fr/, aime les nouvelles technologies et offre de plus en plus de nouveaux services en ligne afin de faciliter les démarches de ses clients. C est ainsi que la lettre recommandée

Plus en détail

Gérer un site internet simple

Gérer un site internet simple TUTORIEL Gérer un site internet simple Pourquoi avoir un site internet? Table of Contents Table of Contents... 2 Étape 1 : créer un compte Google (Gmail)... 3 Etape 2 : créer un site internet Google...

Plus en détail

Active Directory Sommaire :

Active Directory Sommaire : Active Directory Sommaire : Définition Ce qu'il permet A quoi sert-il? Principe de fonctionnement Structure Hiérarchie Schéma Qu'est ce qu'un service d'annuaire? Qu'elle est son intérêt? L'installation

Plus en détail

Activation et personnalisation de votre site mobile

Activation et personnalisation de votre site mobile Activation et personnalisation de votre site mobile Page 1 / 1 Table des matières 1. Activation de la version mobile 3 2. Personnalisation de la version mobile : premiers pas 2.1. Apparence générale et

Plus en détail

UNIVERSITE BORDEAUX - MONTAIGNE. Projet HK_Lime

UNIVERSITE BORDEAUX - MONTAIGNE. Projet HK_Lime UNIVERSITE BORDEAUX - MONTAIGNE INSTITUT UNIVERSITAIRE DE TECHNOLOGIE Département MMI (Métier du Multimédia et de l Internet) Projet Tuteuré Deuxième Année Projet HK_Lime Etudiants: Alexandre Lacombe Jimmy

Plus en détail

Sauvegarde automatique des données de l ordinateur. Manuel d utilisation

Sauvegarde automatique des données de l ordinateur. Manuel d utilisation Sauvegarde automatique des données de l ordinateur Manuel d utilisation Sommaire 1- Présentation de la Sauvegarde automatique des données... 3 2- Interface de l'application Sauvegarde automatique des données...

Plus en détail

Emmanuel CROMBEZ 30 mai 2015

Emmanuel CROMBEZ 30 mai 2015 Je valide, Page 1 Historique La #TeamMaternelle sur Twitter cherchait une application de type cahier de progression que les enfants rempliraient eux-mêmes à la rentrée 2014. ABC-Applications a essayé de

Plus en détail

CAHIER DES CHARGES. -Solution applicatives de gestion de ressources humaines. -Site intranet de notation de repas et d hôtels

CAHIER DES CHARGES. -Solution applicatives de gestion de ressources humaines. -Site intranet de notation de repas et d hôtels CAHIER DES CHARGES -Solution applicatives de gestion de ressources humaines -Site intranet de notation de repas et d hôtels Sommaire Contexte... 4 Maitrise d ouvrage... 4 Maitre d œuvre... 4 Présentation...

Plus en détail

Adrian Gaudebert. Machine de Turing. Rapport de projet

Adrian Gaudebert. Machine de Turing. Rapport de projet Grégory Barbier Adrian Gaudebert Langages Formels Machine de Turing Rapport de projet Université de Bourgogne Licence 3 Informatique - 2008/2009 Sommaire 1 Présentation du sujet...3 2 Manuel technique...3

Plus en détail

Sujet 17 : Exploitation de données financières de Google Finance en C#

Sujet 17 : Exploitation de données financières de Google Finance en C# Amsellem Ari Pour le 01/06/11 Ohayon Alexandre Gueguen Tristan Sujet 17 : Exploitation de données financières de Google Finance en C# Introduction : Il convient tout d abord de signaler que le titre de

Plus en détail