Développement du module Supervision pour le logiciel «K-Sup»
|
|
|
- Victorien Prudhomme
- il y a 10 ans
- Total affichages :
Transcription
1 Stage de fin d études, du 25 mars au 12 juillet 2013 Développement du module Supervision pour le logiciel «K-Sup» Rapport de stage, Licence Professionnelle SIL Christopher Machicoane-Hurtaud Professeur encadrant : Arnaud Lanoix Tuteur : Frédéric Bidet
2 1 Sommaire 1 Sommaire Remerciements Résumé (Abstract) Introduction Kosmos Quelques informations à propos de Kosmos Au sein de Kosmos Etude du marché K-Portal La naissance du projet K-Portal vs. K-Sup L équipe «R&D» Architecture et fonctionnement Autour du développement Travail réalisé Module «Supervision» Autres tâches réalisées Conclusion Annexes Découpage technique de «K-Portal» Aperçu de JIRA, l outil de gestion de projets Aperçu de Mantis Bug Tracker Références bibliographiques Notes et références Développement du module Supervision pour le logiciel «K-Sup»
3 2 Remerciements J aimerais remercier les personnes qui m ont accompagné du début à la fin de ce stage. Grâce à elles, ces seize semaines se sont écoulées dans les meilleurs conditions possibles, j ai pu acquérir de nouvelles connaissances dans de nombreux domaines, tant sur le plan professionnel que personnel. J aimerais citer plus particulièrement : - Frédéric Bidet, pour son accueil et ses conseils - Arnaud Lanoix, pour son encadrement et sa disponibilité - Romain Pelletier et Olivier Camon, pour leur disponibilité, et leur aide précieuse Je n oublie évidemment pas toutes les personnes que je n ai pas citées ici, qui m ont soutenu ou apporté de l aide, aussi, je tiens à les remercier également. 2 Développement du module Supervision pour le logiciel «K-Sup»
4 3 Résumé (Abstract) Ce rapport reprend le travail que j ai réalisé durant seize semaines au sein de la société Kosmos, à Nantes. Le produit sur lequel je suis intervenu est «K- Portal», un CMS 1 dédié aux entreprises, collectivités administratives, et entités scolaires supérieures (dans sa déclinaison «K-Sup»). Ce CMS utilise, outre les technologies du web (HTML, CSS, Javascript, etc.), la technologie J2E. Ce stage s inscrivait donc parfaitement dans la continuité de la Licence Professionnelle «Systèmes Informatiques et Logiciels», que j ai suivie cette année. Une fois le contexte présenté (l entreprise, et le produit), j évoquerai le travail que j ai réalisé durant mon stage, notamment sur l extension de Supervision qui était l objet principal de ces quatre mois. This report deals with the work I did during my sixteen-week internship in Kosmos, Nantes. The product on which I intervened is named K-Portal, a CMS dedicated to companies, administrative authorities, and higher education entities (in its K-Sup declination). This CMS uses, in addition to web technologies (HTML, CSS, Javascript, etc.), the J2E technology. Therefore, this internship fit perfectly in line with the Computer Science and Software professional degree I follow this year. Once the context introduced (the company and the product), I will talk about the work I did during my internship, especially about the Supervision plug-in which was the main subject of those last four months. 3 Développement du module Supervision pour le logiciel «K-Sup»
5 4 Introduction L a mise en place d un outil de supervision pour la version 6 du CMS «K- Portal», a été le sujet principal du stage de seize semaines, que j ai réalisé dans les locaux de Kosmos, à Nantes. S étendant du 25 mars au 12 juillet 2013, ce stage de fin d études s inscrit dans la continuité de la Licence Professionnelle «Systèmes Informatiques et Logiciels» que j ai suivie cette année, puisque les technologies utilisées dans «K- Portal» sont principalement J2E, JSP, HTML, CSS, et Javascript (jquery), des technologies étudiées durant cette licence. Le développement de l outil de supervision n a pas été la seule tâche sur laquelle j ai travaillé, j ai également intervenu sur d autres composants du back-office 2 comme la page d accueil par exemple. Travailler au sein de Kosmos a vraiment été une expérience enrichissante, d autant plus que ce stage représentait pour moi un stage de pré-embauche. J ai donc pu utiliser ces seize semaines comme temps d adaptation au milieu de l entreprise et au produit «K-Portal». Le présent rapport résume le travail que j ai réalisé durant ces quatre mois. Son but n est pas seulement d effectuer une présentation exhaustive de tous les aspects techniques du projet que j ai pu approfondir ou apprendre, mais également des aspects humains auxquels j ai été confronté. Ce rapport de stage présente donc l entreprise qui m a accueilli, quatre mois durant, mais aussi le projet «K-Portal» et les développements que j ai réalisé. Je conclurai par un résumé des acquis personnels et des apports de ce stage. 4 Développement du module Supervision pour le logiciel «K-Sup»
6
7 Jean Planet (direction) 5 Kosmos 5.1 Quelques informations à propos de Kosmos 3 Kosmos est une PME 4 en plein développement, au capital de , comptant à l heure actuelle plus de 45 employés, avec un chiffre d affaire d environ 3,2 millions d euros en 2011 (un chiffre en augmentation). Située à Nantes, mais également implantée à Toulouse, la société Kosmos est présidée par Jean Planet depuis 2004, et compte actuellement plus de 120 références clients. Depuis 1998, année de sa création, la principale vocation de Kosmos est de fournir un service de qualité à leurs clients. Ce service se divise en quatre métiers : le conseil et l accompagnement auprès des clients, l édition de logiciels, le développement et l intégration des solutions, et l infogérance (tierce maintenance applicative 5 ). Plus précisément, Kosmos édite deux CMS. Un premier spécialement dédié aux entreprises et aux collectivités administratives nommé «K-Portal». Ce CMS possède une déclinaison «K-Sup», également vendue par Kosmos aux entités scolaires supérieures. Le second logiciel proposé par Kosmos est «K-d école», une solution ENT 6 dédiée aux collèges et lycées. 5.2 Au sein de Kosmos Ci-contre, quelques informations sur le personnel de Kosmos, sous forme d une hiérarchie succincte présentant les directeurs de chaque pôle : Guillaume Michel (commercial) Gwennig Duigou (communication et marketing) Nathalie Avron (Administration finances - RH) François Boutin (Pôle Web et mobilité) Sylvain Thomas (Pôle ENT Scolaires) Gaël Guimbretiere (Centre de support technique) 6 Développement du module Supervision pour le logiciel «K-Sup»
8 5.3 Etude du marché Les clients 7 Comme évoqué précédemment, les solutions proposées par Kosmos visent tous les secteurs professionnels (alimentaire, électronique, secteur public, transports, santé, environnement, etc.), mais majoritairement la formation (l enseignement secondaire, l enseignement supérieur et la formation continue) ; par ailleurs, l envergure de Kosmos est nationale. Parmi les clients du secteur de la formation, qui représentent environ 50% des clients, on retrouve l Université de Nantes, l École Centrale de Nantes, le CNAM, ou encore le «Webclasseur» de l ONISEP. Du côté de l enseignement secondaire, on compte 4 clients : le Conseil Général de Haute Garonne, le Conseil Général Loire en Rhône-Alpes, l ENTmip et e-lyco. Parmi les entreprises du secteur publique, qui représentent 26 références, on retrouve le CHU de Nantes, la Tan, Nantes Métropole, ou encore le Prao, qui sont, eux aussi, des clients de Kosmos. Enfin, 5 entreprises font appel aux services de Kosmos : Spectra Precision, Rémy Cointreau, le Groupe Tollens, Mitsubishi Electric, et Sodebo. 7 Développement du module Supervision pour le logiciel «K-Sup»
9 5.3.2 La concurrence Le monde des CMS est un terrain relativement vaste qui regroupe plusieurs solutions web tantôt généralistes, tantôt spécifiques à des besoins précis. S il est difficile d établir des statistiques précises sur les utilisations des différents systèmes, les plus populaires restent avant tout Drupal (généraliste), Wordpress (plutôt axé blog), ou Joomla! (généraliste). Cependant ces trois solutions sont développées en PHP, contrairement à «K-Portal» et «K-d école» qui sont, tous les deux, des CMS développés avec la technologie J2E (au même titre que Jahia par exemple) Les atouts de Kosmos Ce qui caractérise les solutions proposées par Kosmos, c est l adaptation naturelle de «K-Portal» aux structures d enseignement, grâce à sa déclinaison «K- Sup». Kosmos est réputée auprès de ses clients, pour la qualité de ses prestations (notamment la tierce maintenance applicative). Par ailleurs, les équipes techniques effectuent une veille régulière afin de suivre l état de l art. 8 Développement du module Supervision pour le logiciel «K-Sup»
10
11 6 K-Portal 6.1 La naissance du projet Le CMS «K-Portal» n a pas vu le jour immédiatement après la création de Kosmos en Au départ, Pascal Gaillard et Philippe Roux, pères fondateurs de l entreprise, avaient simplement ouvert une microstructure de consulting 8. Après avoir passé quelques années à proposer leurs conseils à leurs clients, l activité d édition logicielle est venue naturellement se greffer à l entreprise qui, par la suite, a vu son nombre de collaborateurs et de clients augmenter. «K-Portal» a été mis au point par la suite. 6.2 K-Portal vs. K-Sup Un CMS ou système de gestion de contenus, et une application destinée à aider une ou plusieurs personnes à mettre un site web facilement en place, sans se soucier des détails techniques. L un des avantages principaux des CMS est d effectuer automatiquement une séparation du fond et de la forme, ce qui permet aux développeurs de pouvoir mettre à jour le thème de leur site web et les informations qui y apparaissent, sans toucher au contenu. Si l on entre dans les détails, on peut voir que «K-Portal» dispose de toutes les fonctionnalités d un CMS traditionnel parmi lesquelles : - L édition d articles et de contenus structurés personnalisables. Par exemple, il est possible d ajouter un calendrier d événement, l événement lui-même formant un contenu à part entière ; - La répartition de ces contenus dans des rubriques, afin de créer une arborescence de navigation au sein du site web ; - La possibilité de différer la publication des contenus ; - La possibilité de réviser le contenu des articles ; - Le référencement automatique (interne et externe) du site web et de ses contenus ; 10 Développement du module Supervision pour le logiciel «K-Sup»
12 - La gestion d une galerie de médias (photos, vidéos, fichiers audio, et autres téléchargements) ; - La possibilité de publier les contenus dans des newsletters, des flux RSS, et autres fils d information ; - Le contrôle des utilisateurs et de leurs droits. Le webmaster du site pourra ainsi attribuer les droits de rédaction, de consultation et de contrôle des contenus du site web, en fonction de leur type, et du groupe auquel appartient chaque utilisateur. Ces contrôles s appliquent également aux fonctions administratives du site web ; - La possibilité de synchroniser la liste des utilisateurs avec un annuaire externe ; - La possibilité d ajouter et de contrôler des extensions pour enrichir les fonctionnalités du back-office ou du site web en lui-même ; - La mise à disposition d outils de configuration du site et le contrôle de la santé de l application. Cette liste n est évidemment pas exhaustive. La principale spécificité de «K-Sup» se situe au niveau des types de contenus. Kosmos propose une solution métier avec des types de contenus préconfigurés. Plus concrètement, un client disposant de «K-Sup» bénéficiera de types de contenus lui permettant d ajouter des éléments pertinents au site web de son établissement. Il s agit ici d ajouter la description des cours et formations enseignées, tenir un annuaire d anciens élèves ou de contacts d entreprises pour des stages, etc. 6.3 L équipe «R&D» L équipe «R&D» que j ai rejoint durant mon stage, se trouve au cœur du développement de «K-Portal». Agissant principalement sur le back-office, elle se concentre actuellement sur la version 6 de l application. Au début de mon stage, l équipe n était composée que de trois membres : Olivier Camon, Romain Pelletier et Frédéric Bidet (chef du pôle R&D). Cette équipe s est progressivement agrandie, en accueillant 2 nouveaux membres. 11 Développement du module Supervision pour le logiciel «K-Sup»
13 6.4 Architecture et fonctionnement «K-Portal» est prévu pour être adapté aux projets des clients c est pourquoi son architecture est découpée en plusieurs couches permettant ainsi une meilleure maintenance. Voici un schéma résumant le découpage applicatif de «K-Portal» : Le CMS «K-Portal» utilise Maven, un outil libre permettant de contrôler automatiquement les dépendances 9. Grâce à Maven, la modularisation 10 de l application, un des objectifs principaux de la nouvelle version, a été grandement facilitée. «K-Portal» fait également appel aux services de Spring, un framework 11 de développement Java, qui facilite notamment la définition de la structure de l application. Cela a pour conséquence de faciliter le développement et les tests. Spring est également un excellent outil pour contrôler les injections de dépendance Autour du développement Pour travailler sur «K-Portal», l équipe «R&D» utilise l IDE Eclipse adapté aux projets J2E. Avec cela elle dispose d une installation d Apache Tomcat (un serveur web pour les projets en Java) sur chaque ordinateur pour faciliter les tests. 12 Développement du module Supervision pour le logiciel «K-Sup»
14 Chaque développeur possède un accès au dépôt 13 SVN de Kosmos. Ce dépôt renferme les dernières sources de «K-Portal». SVN s avère être une solution très efficace pour gérer une équipe de développeurs qui travaillent tous sur le même projet (voire sur les mêmes sources), mais actuellement, Kosmos réfléchit à la mise à disposition des sources sur un dépôt Git 14 (le but étant de faciliter la mise à disposition de «K-Portal» en Open Source). Deux gestionnaires de demandes sont utilisés. Actuellement, Mantis est utilisé par les clients pour informer Kosmos des bugs et autres problèmes survenus sur leur site. Du côté des développeurs, l outil Jira a été récemment mis en place. Jira intègre également la notion du temps et un système de statistiques afin d offrir une interface plus complète. L interface Jira sera prochainement ouverte aux clients. Quelques illustrations sont à retrouver en annexe concernant ces outils. Pour faciliter l intégration continue, l outil Jenkins est utilisé. Le but de cet outil est de vérifier qu il ne se produit pas de régression, au fur et à mesure des modifications effectuées sur le produit. L avantage de Jenkins est qu il peut s interfacer avec des gestionnaires de versions comme SVN, et qu il peut exécuter des projets basés sur Maven, ce qui correspond tout à fait à «K-Portal». Enfin, pour le moment aucun système de tests unitaires n est mis en place. Cependant, c est l un des objectifs futurs de «K-Portal», notamment grâce aux outils Jenkins et junit qui travailleraient de pair pour effectuer les tests. 13 Développement du module Supervision pour le logiciel «K-Sup»
15
16 7 Travail réalisé 7.1 Extension «Supervision» Besoin et existant Dans la version 5.1, actuellement en production chez tous les clients de Kosmos, «K-Portal» ne dispose d aucun outil permettant de configurer facilement l application, et de contrôler son état de santé. Kosmos se devait d en mettre un au point, non seulement pour s aligner sur la concurrence, mais avant tout pour améliorer l ergonomie 15 et le confort des webmasters (notamment quand ils font appel aux services de TMA), et faciliter le travail des équipes techniques. Ainsi, l extension «Supervision» verra progressivement le jour durant mon stage, avec cinq fonctionnalités principales (représentant cinq modules basés sur cinq processus 16 ), détaillées ci-après : - Paramétrage de l application : son but est de pouvoir récupérer la valeur d une propriété de l application (contenues dans les fichiers de paramétrage Java). A l avenir ce module pourra permettre la modification des valeurs de ces paramètres depuis le back-office ; - Internationalisation des messages : similaire au paramétrage de l application, ce module permet de récupérer la valeur d un message qui apparait dans le back-office dans différentes langues. A l avenir ce module devra permettre la traduction manuelle de l interface, et l installation de packages de langues ; - Scripts automatisés : ce module permet d effectuer des tâches récurrentes sans intervention du webmaster. Ce dernier se contentera de programmer le script afin qu il s exécute à intervalles donnés. Les tâches peuvent également être exécutées manuellement ; - Fichiers journaux : l objectif de ce module est de permettre la consultation des fichiers journaux du site web qui peuvent s avérer très précieux pour la maintenance ; - Etat du système : ce module permet de contrôler divers critères du système : état de la mémoire, état de Tomcat, état des caches 17, etc. A l avenir ce module permettra d avoir un résumé de l état de 15 Développement du module Supervision pour le logiciel «K-Sup»
17 l installation précisant si certains composants de l application sont mal installés, si certaines anomalies sont présentes, etc Paramétrage de l application et internationalisation de l interface Je ne traite pas ces deux parties séparément, puisque le développement est sensiblement identique entre les deux modules. Dans la première version de ce module, l objectif était de proposer un moteur de recherche avec une auto-complétion 18 afin de faciliter la saisie d un paramètre. Le moteur de recherche doit ensuite afficher le résultat au sein d un tableau proposant quelques détails supplémentaires. Prototypes d écrans : Les résultats sont sur la page suivante. 16 Développement du module Supervision pour le logiciel «K-Sup»
18 17 Développement du module Supervision pour le logiciel «K-Sup»
19 Pour parvenir à mes fins, j ai utilisé le plugin jquery «autocomplete», après avoir testé plusieurs solutions. L avantage de «autocomplete» est qu il propose un comportement par défaut qui correspondait exactement au cahier des charges, et qu il propose un mode de complétion en AJAX 19. Les suggestions de recherches peuvent ainsi être calculées par le serveur comme l illustre le schéma suivant : Client Serveur Saisie Résultat Résultat Résultat Résultat Calculs de résultats Etant donné que «K-Portal» propose déjà une architecture complète axée sur l affichage de pages via le protocole HTTP, j ai dû développer moi-même la servlet 20 de traitement. Heureusement, «K-Portal» propose quand même une interface et une classe abstraite donnant accès à diverses variables de contexte comme la session de l utilisateur par exemple. Le schéma suivant explique la structure du système de traitement en AJAX : 18 Développement du module Supervision pour le logiciel «K-Sup»
20 Grâce à cette première approche, j ai pu constater à quel point le modèle MVC 21 pouvait être exploité et pratique dans un projet web J2E (ce qui est le cas de «K-Portal»). Deux autres actions sont possibles sur ces écrans. La première permet le rechargement à chaud des paramètres et des messages. Pour mettre au point cette action, il m a simplement suffit de faire appel à la méthode d une classe proposant déjà cette fonctionnalité. Le rechargement à chaud évite au webmaster de devoir redémarrer le serveur de son site web s il effectue un petit changement dans ses fichiers de configuration. La seconde action (uniquement sur l écran de paramétrage) permet de télécharger les fichiers de propriétés au sein d une archive. Une fois de plus, la procédure était relativement simple : après avoir généré l archive en question, l utilisateur est redirigé vers une page où l on lui propose de télécharger le fichier compressé Scripts automatisés Le développement de ce module n a pas été le plus simple puisqu il alliait beaucoup de notions et de subtilités de «K-Portal» qu il fallait encore que j apprenne. L objectif de ce module était de proposer trois écrans : - Un premier écran pour la liste des traitements automatisés. Ces traitements correspondent à des tâches de fond comme l indexation du site web ou la suppression des éléments temporaires. Ce sont généralement des tâches qui peuvent s avérer très rébarbatives si elles sont effectuées par un webmaster. Depuis cet écran, si l utilisateur en a les droits, il doit pouvoir exécuter manuellement le traitement, et une petite fenêtre de paramétrage doit apparaître si l exécution de la tâche nécessite quelques configurations ; - Le deuxième écran correspond à la liste des déclencheurs. Un déclencheur correspond à une liste de traitements automatisés qui vont être exécutés à intervalles donnés (exemple : toutes les nuits à 1h59). Depuis cet écran, il doit être possible de modifier ou supprimer 19 Développement du module Supervision pour le logiciel «K-Sup»
21 un déclencheur (si l utilisateur en a les droits), et activer ou désactiver le déclencheur ; - Enfin, le troisième écran propose la configuration d un déclencheur. Il s agit d un simple formulaire de saisie d un déclencheur proposant : o La saisie d un libellé pour le déclencheur o La saisie ordonnée des tâches qu il doit effectuer (avec une petite fenêtre de paramétrage si nécessaire) o La saisie d une expression cron 22. Voici le prototype de la page principale des scripts automatisés. Notez la différence principale entre le prototype et le résultat : les deux tableaux se trouvant sur la page principale sont désormais séparés sur deux écrans distincts : Les résultats se trouvent à partir de la page suivante. 20 Développement du module Supervision pour le logiciel «K-Sup»
22 21 Développement du module Supervision pour le logiciel «K-Sup»
23 Le développement de ces écrans n a pas nécessité de conception très avancée en amont, le but étant vraiment de proposer une interface de configuration. Cependant, «K-Portal» utilise la librairie «Quartz Scheduler», développée par Terracotta, une librairie qui met à disposition toute une API 23 afin de mettre un système de déclencheurs/traitements en place. Pour parvenir à mes fins, j ai également dû me familiariser avec le système d exécution de requêtes proposé par «K-Portal». Enfin, j ai également développé un petit plugin jquery dont le but était d afficher des éléments HTML «iframe» sous forme de pop-in 24. Ici mon objectif était également de développer un plugin réutilisable dans la totalité du système, il fallait donc que la conception soit le plus généraliste possible. Malgré les difficultés d adaptation rencontrées sur cette partie du développement de «Supervision», cela s est avéré très formateur et m a permis de me familiariser avec beaucoup de notions de «K-Portal». 22 Développement du module Supervision pour le logiciel «K-Sup»
24 7.1.4 Gestion des fichiers journaux La gestion des fichiers journaux (autrement appelés «fichiers de logs») m a permis de me familiariser avec les notions de «clustering» et «load balancing» 25. Le but de ce module est de recenser tous les fichiers de logs présent sur la (ou les) machines mettant une installation de «K-Portal» à disposition des utilisateurs. Ces fichiers de logs sont très utiles puisqu ils recueillent les rapports d exécutions des tâches automatisées évoquées précédemment, mais aussi du site web en lui-même, et de ses extensions. Voici le prototype de l écran que j avais à développer : Le résultat se trouve sur la page suivante. 23 Développement du module Supervision pour le logiciel «K-Sup»
25 Comme on peut l observer dans l écran, il doit être possible de télécharger les fichiers journaux. Pour cela, j ai mis en place une nouvelle servlet dont l objectif est de gérer le téléchargement d un fichier. A l heure actuelle, les navigateurs Internet sont relativement puissants et peuvent afficher, à l intérieur-même de leur interface, beaucoup de fichiers (textes, documents, vidéos, fichiers audio, photos, etc.) Ergonomiquement parlant, ce n était pas le comportement souhaité pour le téléchargement des fichiers journaux. Le but était de «forcer» le téléchargement pour que l utilisateur obtienne le fichier directement sur son disque dur sans passer par l étape d affichage, et également pour des raisons de poids de fichiers. Pour cela, il fallait que j intervienne sur l entête de la réponse à la requête HTTP, d où la création nécessaire d une nouvelle servlet. Une fois de plus, le développement de cet écran n a pas demandé de conception très avancée, cependant j ai pu me familiariser avec divers composants de «K-Portal», notamment, lors de la conception du petit moteur de recherche en haut de l écran. Le but de ce moteur étant de proposer quelques filtrages (par date, par logger 26, et par serveur si le load balancing est actif). 24 Développement du module Supervision pour le logiciel «K-Sup»
26 7.1.5 Contrôle de l état du système Par manque de temps avant la sortie de la version 6 de «K-Portal», j ai dû me concentrer sur les éléments prioritaires de la conception de module : l état des caches, et l adaptation de quelques écrans de la version précédente. J aborderai tout même la conception de la vérification de l installation. L objectif de ce module est de proposer des informations et des statistiques sur l état du système au moment où le webmaster consulte les données. Le premier écran de ce module propose un tableau récapitulatif des caches de l application. Cet écran est une adaptation directe de celui présent sur «K- d école». En effet, «K-Portal», dans sa version 6, intègre la librairie «ehcache» proposée par Terracotta, et «K-d école» intégrait déjà cette solution dans sa version actuelle. Le deuxième écran de ce module propose, pour le moment, une liste de liens permettant de consulter différentes pages. Ces pages proposent des informations techniques utiles pour connaître l état de Tomcat (utilisation de la mémoire, nombre de threads, etc.) Voici le prototype de base : Le résultat obtenu se trouve sur la page suivante. 25 Développement du module Supervision pour le logiciel «K-Sup»
27 En plus de ces informations très techniques, un écran verra le jour dans une prochaine version, dont le but est de recenser les problèmes et les messages d information du site web. Ces messages peuvent par exemple indiquer au webmaster que son serveur SMTP n est plus joignable, ou qu un module n est pas installé correctement. A ce stade, un problème de conception s est posé : - Soit l on effectue tous les tests au chargement de la page, ce qui peut s avérer très long si l on tient compte des temps de réponses de certains systèmes (exemple : un serveur SMTP indisponible peut monopoliser l exécution du script pendant un certain temps) ; - Soit l on affiche la page, et les résultats des tests sont affichés progressivement grâce à l AJAX. Si, dans cette solution, la page est affichée directement, et prouve à l utilisateur que le site web exécute bien des requêtes, l attente de leur résultat peut s avérer aussi longue ; - La solution finalement retenue est la suivante : le but est de créer une tâche automatisée qui va interroger toutes les extensions du site web et le site lui-même, afin de collecter toutes les informations nécessaires, et les stocker en base de données, jusqu à les afficher. Si 26 Développement du module Supervision pour le logiciel «K-Sup»
28 Interrogations - Réponses Interrogations - Réponses Enregistrement Déclenchement l on perd un peu la notion de résultats instantanés, l utilisateur n a pas à patienter, l ergonomie, point essentiel du développement d une application, s en trouve donc grandement améliorée. Voici un schéma de conception à propos de ce système d interrogation : Script de vérifications Extension Extension Module Module Module Extension Module Base de données 7.2 Autres tâches réalisées Contrôle des actions par rôle Lors du développement des différents modules de Supervision, je me suis rendu compte que certaines parties du code des processus, notamment le traitement des différentes actions en fonction des droits de l utilisateur (une action correspondant à la modification d un élément, l affichage d une liste, la recherche d un élément, etc.) Ainsi, on pouvait facilement se retrouver avec un code structuré comme celui-ci (en pseudocode) : si (action = «Afficher») alors: si (utilisateur.peut(«afficherpage»)) alors: prepareraffichage() sinon: remontererreur(«action interdite!») fin si. sinon si (action = «Modifier») alors: si (utilisateur.peut(«modifierelément»)) alors: preparermodifications() sinon: remontererreur(«action interdite!») fin si. sinon si -- etc. 27 Développement du module Supervision pour le logiciel «K-Sup»
29 J ai donc eu l idée d exploiter la réflexivité 27 de Java afin de clarifier le code, faciliter le développement et la maintenance. Désormais, le code des processus est nettement factorisé : ControleurDActions ctl = nouveau ControleurDActions() ctl.enregistreraction(«afficher», «Action interdite»).enregistreraction(«modifier», «Action interdite») ctl.controler(action) Les exemples cités sont évidemment simplifiés. On remarque ici que le traitement s effectue en deux temps : la création d un contrôleur et l enregistrement des actions, et l appel à ce contrôleur. Automatiquement, de son côté, le contrôleur effectue les vérifications sur les droits de l utilisateur, et décidée s il faut appeler la méthode passée en paramètre ou soulever l erreur. Cela évite ainsi d avoir un code très répétitif Refonte de la page d accueil Durant mon stage, je suis également intervenu sur la refonte de la page d accueil, celle du back-office, en l occurrence. Avant la refonte, les utilisateurs du site web ayant un accès au back-office se retrouvaient face à un formulaire de recherche de fiches après s être connecté. La version 6 apportera désormais un écran divisé en plusieurs zones : une liste des dernières fiches rédigées par l utilisateur (avec un lien pour toutes les afficher), un moteur de recherche simplifié, une liste des dernières fiches à valider (avec un lien pour toutes les afficher) et un lecteur du flux RSS des dernières mises à jours de «K-Portal». La page d accueil ainsi «modularisée» 28, pourra accueillir, par exemple, un module affichant les derniers messages d erreur de l installation (se rapportant au module «État du Système» évoqué précédemment). Un aperçu de la page d accueil se trouve sur la page suivante. 28 Développement du module Supervision pour le logiciel «K-Sup»
30
31
32 8 Conclusion J ai beaucoup appris de ces quatre mois passés à Kosmos, et ce, dans plusieurs domaines. Tout d abord, ce deuxième stage de mon parcours étudiant, dans le milieu professionnel, m a permis de découvrir un autre type d entreprise. Par rapport à mon stage précédent, j ai travaillé dans une petite entreprise, dont les métiers vont de l édition logicielle, au conseil, et à l intégration de ses solutions. Ce qui m a beaucoup plu au sein de Kosmos, c est que le cahier des charges du produit est créé par l entreprise elle-même (même si les clients formulent des demandes). En d autres termes, toutes les initiatives sont les bienvenues, et certaines voient le jour après délibérations. De plus l équipe de Kosmos s informe régulièrement sur les dernières technologies du web (notamment sur les solutions open source), afin d être toujours à la page. Une qualité que j apprécie tout particulièrement. Ensuite, ce stage aura permis de mettre mes acquis de la licence professionnelle en action, dans un contexte concret. Si la phase d apprentissage a été rapide, c est notamment parce que les technologies et les méthodes de développement employées correspondent tout à fait à ce que j ai appris pendant mon cursus d enseignement supérieur, et par mes expériences personnelles. Enfin, ce stage aura également été un excellent enrichissement sur le plan personnel. Le fait d'avoir travaillé au sein d'une équipe sympathique, et le fait de se sentir réellement impliqué dans un vrai projet m'ont vraiment donné goût au travail, et goût au monde de l entreprise. Passer ces quatre mois chez Kosmos m a conforté dans le choix de travailler dans le monde du web, et en l occurrence, dans une entreprise jeune et dynamique. 31 Développement du module Supervision pour le logiciel «K-Sup»
33 9 Annexes 9.1 Découpage technique de «K-Portal» Ce découpage n est pas exhaustif. 32 Développement du module Supervision pour le logiciel «K-Sup»
34 9.2 Aperçu de JIRA, l outil de gestion de projets Cette vue correspond à un tableau de bord. JIRA propose des outils très puissants afin de personnaliser l aperçu des statistiques concernant le projet. Aperçu d une tâche. On aperçoit, à droite, le suivi temporel. 33 Développement du module Supervision pour le logiciel «K-Sup»
35 9.3 Aperçu de Mantis Bug Tracker Un outil très utilisé pour rapporter des bugs, également adapté aux smartphones. 34 Développement du module Supervision pour le logiciel «K-Sup»
36 9.4 Aperçu de Jenkins L outil Jenkins propose des statistiques sur l intégration continue. 35 Développement du module Supervision pour le logiciel «K-Sup»
37 10 Références bibliographiques La plupart des documents qui m ont permis de comprendre et développer le projet étaient fournis sur le serveur de fichiers de l entreprise (la plupart étant classés confidentiels). Le web m a également été d une grande utilité, notamment les forums tels que une ressource relativement fiable lorsqu il s agit de questions de développement informatique. La «Javadoc» a également été utile occasionnellement ( Enfin, les cours et mes propres expériences personnelles m ont également beaucoup aidé dans la réalisation de ce stage. 36 Développement du module Supervision pour le logiciel «K-Sup»
38
39 11 Notes et références 1 CMS : Content Management System (en français, SGC : système de gestion de contenus). Il s agit d un socle logiciel sur lequel il est possible de bâtir des sites web. Ces socles se veulent généralement souples, afin de permettre aux webmasters de réaliser un site web à leur image, avec des contenus personnalisés, sans se soucier des détails techniques. Le CMS se démarque du framework qui, lui, se veut comme étant un ensemble de librairies et de fonctionnalités, et une aide à la structuration du code, venant à l aide du développeur. Le monde du web étant très vaste et en perpétuelle évolution, il est difficile de réaliser un classement des SGC les plus utilisés, cependant on peut tout de même citer des exemples très connus tels que WordPress, Drupal, ou Joomla!. 2 Le back-office est un outil d administration des sites web. Grâce au back-office, les contributeurs peuvent publier des articles, gérer les utilisateurs inscrits sur le site web, leurs droits, installer des extensions, contrôler l état du site web, et bien d autres choses encore. 3 Ces chiffres sont susceptibles d avoir évolué. 4 Abréviation pour «Petites et Moyennes Entreprises» 5 La Tierce Maintenance Applicative (aussi abrégée TMA) correspond au service de maintenance proposée par un prestataire à son client. Cette maintenance consiste à une aide à la compréhension du produit, à son amélioration, à son adaptation et à la résolution de problèmes. 6 Abréviation pour «Environnement Numérique de Travail» 7 Voir note (3). 8 Les entreprises de consulting proposent leurs services en donnant des conseils professionnels à leurs clients, dans un ou plusieurs domaines précis. Dans le cas de Kosmos, le consulting s effectue dans le domaine de la mise en place d un site web. 9 Maven est un outil permettant de contrôler les dépendances. Il arrive souvent qu un développeur ait besoin de librairies externes pour étendre les fonctionnalités de Java (exemple : une librairie pour décoder et encoder les objets JSON). Ainsi Maven se charge tout seul de télécharger les librairies nécessaires au 38 Développement du module Supervision pour le logiciel «K-Sup»
40 fonctionnement d un projet. Maven permet également d effectuer des tâches récurrentes très facilement, comme la compilation d un projet, l exécution des tests unitaires, la création de la documentation, etc. 10 La modularisation consiste à diviser une application en différentes parties afin d étendre les fonctionnalités d un système. L avantage de cette solution est qu un développeur peut facilement développer de nouveaux greffons pour son programme, sans toucher au cœur de l application, et effectuer des mises à jour de ces extensions, indépendamment du reste. 11 Voir note (1). 12 L injection de dépendance propose un modèle de programmation dynamique, dans lequel les dépendances entre les classes sont gérées à l exécution du programme et non à la compilation. Plus concrètement, le développeur devra préférer l utilisation d une interface pour qu un objet de type A puisse effectuer des appels à un objet de type B. 13 Un dépôt SVN correspond à un serveur sur lequel des développeurs mettent leurs sources à disposition des autres de leur équipe. 14 La différence fondamentale entre GIT et SVN est que GIT propose une architecture distribuée. C est-à-dire qu il n y aura pas un serveur central comprenant toutes les sources, mais que chaque machine utilisant GIT est son propre dépôt. GIT propose également d autres avantages face à SVN comme le stockage des données complémentaires dans un seul dossier, contrairement à SVN qui en stocke dans chaque dossier de sources. GIT propose également un contrôle de l intégrité des sources. 15 La notion d ergonomie est une notion relativement vaste, décrivant notamment la facilité qu a un utilisateur à trouver l information qu il cherche, au sein d une interface graphique. L ergonomie englobe également la notion d accessibilité qui correspond à la possibilité de naviguer dans une interface graphique par tous les moyens possibles (clavier, souris et autres dispositifs accessibles aux personnes handicapées). 16 Un processus, au sein de «K-Portal» correspond à une classe ou un ensemble de classes Java se rapportant à une fonctionnalité précise du SGC. 39 Développement du module Supervision pour le logiciel «K-Sup»
41 17 Un cache est une zone de mémoire dans laquelle un système va stocker des informations pour y avoir accès plus rapidement, au lieu de requêter systématiquement une source de données plus lente. 18 L auto-complétion est un mécanisme très utilisé en informatique. Son principe est simple : suggérer des données en fonction de ce qu a saisi l utilisateur. L avantage de ce mécanisme est qu il peut proposer plusieurs suggestions et apporter des précisions sur chaque suggestion qu il effectue. 19 AJAX est l acronyme de Asynchronous JavaScript and XML. Il s agit d une architecture permettant de rendre des sites web dynamiques, notamment en y ajoutant des requêtes HTTP asynchrones. 20 Une servlet, dans un projet en Java correspond à une classe qui sera appelée suite à une requête HTTP. 21 Le modèle MVC est un modèle de développement basé sur les 3 entités suivantes : Modèle Contrôleur Vue. Le modèle correspond à la représentation programmatique des données, la vue correspond à la présentation (l interface graphique de manière générale), et le contrôleur effectue le lien entre les deux (il traite les actions que l utilisateur a demandées via la vue, en exploitant le modèle). 22 Une expression cron est une expression qui a été proposée par le programme cron disponible sur les systèmes Unix. Ces expressions peuvent permettre de définir la granularité d exécution de tâches automatisées. Avec de telles expressions il est tout à fait possible de programmer un script qui va s exécuter tous les jours, entre midi et 13h, toutes les cinq minutes, sauf le mercredi, ce qui se traduirait par l expression suivante : */5 12 * * 1,2,4,5,6,0 (ici */5 signifie littéralement «toutes les 5 minutes», 12 signifie «à 12h» (implicitement on comprend qu à 13h, l exécution ne se fera plus), les deux étoiles suivantes correspondent à «tous les jours et tous les mois», et enfin la liste 1,2,4,5,6,0 correspond à tous les jours de la semaine, en excluant le mercredi (portant le numéro 3), et en considérant que le dimanche porte le numéro 0). 23 API est l abréviation de «Application Programming Interface». Une API correspond à un ensemble de classes, méthodes et fonctions ayant un objectif particulier. Le plus souvent l API facilite la programmation de notions avancées. 40 Développement du module Supervision pour le logiciel «K-Sup»
42 24 Le mécanisme de pop-in est légèrement différent des pop-up (ou pop-out). Ces noms un peu arbitraires désignent tous de petites fenêtres qui s affichent pardessus la fenêtre principale, afin d afficher un message, ou proposer une saisie obligatoire avant de poursuivre un traitement. La différence entre pop-in et popout réside dans l affichage. Une fenêtre pop-in, qui a été entièrement programmée par le développeur web apparait moins intrusive pour le développeur puisqu elle se fond dans l interface du site web, contrairement aux pop-outs qui sont des fenêtres du système. Un autre avantage de la pop-in est que le développeur possède complètement la main sur son comportement et peut ainsi plus facilement interagir avec. 25 Le load balancing (répartition de charge) est une des architectures possibles du clustering. Le but du clustering est d associer le travail de plusieurs machines afin d offrir une disponibilité et une puissance de calculs plus importantes. Le principe du load balancing repose sur la redirection d un client vers une des machines du système, à son insu. Chaque machine de cette configuration travaille avec les mêmes ressources. 26 Un logger correspond à un composant de l application ayant la capacité de générer des fichiers journaux. 27 La réflexivité est une notion en programmation. Cela signifie la capacité que peut posséder un langage de programmation à examiner et modifier la structure de ses propres programmes. 28 Voir note (11) 41 Développement du module Supervision pour le logiciel «K-Sup»
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
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
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,
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
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
Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage
Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site
K-Portal et K-Sup 5.1 des nouveautés. Détails
K-Portal et K-Sup 5.1 des nouveautés Détails 5.1 Découvrez comment cette nouvelle version vous aidera à : " élargir considérablement votre offre de contenu, " proposer de nouveaux services à vos publics,
Cursus 2013 Déployer un Content Management System
Cursus 2013 Déployer un Content Management System Les critères d évaluation d un CMS Les utilisateurs, après examen de la taille de la base d utilisateurs en France. La communauté, selon son dynamisme
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
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
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
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
Expert technique J2EE
EHRET Guillaume 25, rue de la Richelandiere 42100 SAINT ETIENNE 32 ans - Célibataire Expert technique J2EE Domaines de compétences Environnement et langages Expertise en programmation Java et en architecture
Création d'un site Internet dynamique avec HTML-CSS ou un CMS Formation à distance sur le réseau Pyramide
Création d'un site Internet dynamique avec HTML-CSS ou un CMS Formation à distance sur le réseau Pyramide Du 19 octobre 2015 au 08 avril 2016* Date limite de dépôt des candidatures : 1 semaine avant le
Projet de Java Enterprise Edition
Projet de Java Enterprise Edition Cours de Master 2 Informatique Boutique en ligne L objectif du projet de JEE est de réaliser une application de boutique en ligne. Cette boutique en ligne va permettre
WordPress : principes et fonctionnement
CHAPITRE 1 WordPress : principes et fonctionnement WordPress est à l origine un outil conçu pour tenir un blog, c est-à-dire un journal ou carnet de bord en ligne. Mais il a évolué pour devenir un système
Rapport de stage. Développement d un logiciel de vidéoconférence : Enjeux 3. Guillaume DOTT 2009
Rapport de stage Développement d un logiciel de vidéoconférence : Enjeux 3 Guillaume DOTT 2009 Maître de stage : Louis Poulette Tutrice : Marie-Paule Muller Remerciements Je tiens à remercier toute l équipe
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,
INTEGRATEUR WEB/WEBDESIGNER
Ludovic LOUBET 37 ans Célibataire 3 rue James Watt F 93200 Saint Denis Permis B 06 63 67 67 25 Email : [email protected] INTEGRATEUR WEB/WEBDESIGNER Portfolio : http://ludovic-loubet-portfolio.com/
Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA
Comparatif CMS Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Sommaire Introduction : Dans le cadre de notre projet de master première année, il nous a été demandé de développer un moteur de recherche
Paul FLYE SAINTE MARIE
Paul FLYE SAINTE MARIE ASSISTANT CHEF DE PROJET DANS LE DÉVELOPPEMENT INFORMATIQUE Domaines de compétences Conduite de projet (échange avec la maitrise d ouvrage, maitrise d œuvre, rédaction des spécifications
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
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
Tour d horizon des CMS. Content Management System
Tour d horizon des CMS Content Management System Qu est ce qu un CMS? C est un Sytème de gestion de contenus Gestion dynamique de contenus en ligne Contenus suivant les standards du web Séparation du contenu,
LEA.C5. Développement de sites Web transactionnels
LEA.C5 Développement de sites Web transactionnels LEA.C5 Développement de sites Web transactionnels Toutes les entreprises et les organisations utilisent le réseau Internet comme outil de promotion, de
D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.
PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue
Profil. Formations Certifications. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience.
Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience Profil Expert SYMFONY 2 / ZEND Etude et modélisation UML Montée en charge / Compétence Sécurité / Authentification
Toute personne souhaitant maîtriser les techniques liées à la conception de produits multimédia et à la création de sites Web.
Web Designer Durée 90 jours (630 h) Public Toute personne souhaitant maîtriser les techniques liées à la conception de produits multimédia et à la création de sites Web. Objectifs La formation Web designer
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
Parlez-vous chinois? Allumer l appareil. Commencer. Le premier écran de l application
Parlez-vous chinois? SOMMAIRE Allumer l appareil... 1 Lancer l application... 1 Commencer... 1 Créer un compte... 1 Se connecter... 2 Consulter les messages... 2 Rédiger un message... 3 Juger un message...
Manuel d utilisation du site web de l ONRN
Manuel d utilisation du site web de l ONRN Introduction Le but premier de ce document est d expliquer comment contribuer sur le site ONRN. Le site ONRN est un site dont le contenu est géré par un outil
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
SOMMAIRE 1. NOTRE AGENCE... 3 2. NOS PRESTATIONS... 6 3. NOTRE MÉTHODOLOGIE PROJET... 11 4. NOS OFFRES...12 5. LES ATOUTS DE NOS OFFRES...
CONCEPTION WEB SOMMAIRE 1. NOTRE AGENCE... 3 1.1 Nos valeurs... 4 1.2 Notre expertise... 5 1.3 Notre équipe... 5 2. NOS PRESTATIONS... 6 2.1 Site institutionnel / vitrine... 7 2.2 Site e-commerce... 8
Un site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012
Un site web collaboratif avec Drupal Judith Hannoun - Journées INSHS 16 Octobre 2012 Site web Ensemble de pages en html Des liens hypertextes Une base de données si site dynamique Une interface graphique
De EnvOLE 1.5 à EnvOLE 2. Document pour l administrateur
De EnvOLE 1.5 à EnvOLE 2 Document pour l administrateur 1 INDEX 1/ Introduction :... 3 2/ Contenu du CEL 2.0 à l issue de la migration... 4 Votre CEL est-il migré?... 4 Accès aux deux versions du CEL...
Refonte front-office / back-office - Architecture & Conception -
Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table
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
Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement
Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement distribué Éric Leclercq Département IEM / Laboratoire LE2i Septembre 2014
10 points clés pour bien démarrer votre projet web
10 points clés pour bien démarrer votre projet web Un cahier des charges pour cerner votre projet Afin de vous aider dans la réflexion de votre futur site Internet, ADVEO a conçu une check-list avec les
CAHIER DES CHARGES DU SITE WEB POUR LA RÉALISATION. Nom du commanditaire : Dossier suivi par : Date de réalisation : Date de mise à jour :
CAHIER DES CHARGES POUR LA RÉALISATION DU SITE WEB Nom du commanditaire :... Dossier suivi par :......... Date de réalisation : Date de mise à jour : Référence du dossier :......... Ce document est distribué
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
Webinar. Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL. avec la participation de
En partenariat avec Webinar Découvrez Rubedo, la première solution CMS open-source tirant profit des atouts de Zend Framework et du NoSQL avec la participation de 19 mars 2013 Qui sommes-nous? INTRODUCTION
FICHE PRODUIT COREYE CACHE Architecture technique En bref Plateforme Clients Web Coreye Cache applicative Références Principe de fonctionnement
COREYE CACHE Solution d absorption de charge pour une disponibilité et une performance optimales des applications Web En bref Architecture technique La plateforme Coreye Cache délivre la majeure partie
Cahier des charges - Refonte du site internet www.sciencespo- rennes.fr
Cahier des charges Refonte du site internet www.sciencesporennes.fr Procédure d achat conformément à l article 28 alinéa I du Code des marchés publics 1. Présentation de la structure Reconnu pour son excellence
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
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 [email protected] 02 38 64 26 41 Architecture Il est
7 villa de la citadelle Né le 13 mai 1983 94110 Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES
Philippe Crépin 7 villa de la citadelle Né le 13 mai 1983 94110 Arcueil Nationalité : Française : 06.17.46.12.09 : [email protected] Disponibilité : En poste chez Soft Computing Développeur Web JEE
Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie
1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser
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
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
WordPress, thèmes et plugins : mode d'emploi
WordPress, thèmes et plugins : mode d'emploi Sommaire 01 Faisons connaissance 1.1 Qui suis-je? 1.2 WordPress en 2 mots 1.3 Thème et plugin 02 Si je veux 03 Quelques extensions utiles 04 Comment chercher
Catalogue Formations Jalios
Catalogue Formations Jalios Offre de services Jalios 23/04/2015-6.0 1 / 19 Sommaire Sommaire... 2 1. Introduction... 3 2. Jalios, organisme de formation... 4 3. Formations fonctionnelles... 5 3.1. Formation
Découvrir Drupal au travers d un cas client
Découvrir Drupal au travers d un cas client Vos conférenciers Dorian Marchand Directeur associé David Wilgenbus Responsable projet LAMAP Edouard Fajnzilberg Directeur technique Au programme -> Qu est ce
d un site web universitas friburgensis Objectifs de l atelier
Conception d un site web Objectifs de l atelier 1. 2. 3. 4. Analyser ses besoins et créer un cahier des charges Structurer un site pour optimiser sa navigation Rédiger pour le web Optimiser pour les moteurs
VOLUME 1 CRÉATION D UN SITE WEB
VOLUME 1 CRÉATION D UN SITE WEB Comprendre les principales étapes TABLE DES MATIÈRES PARTIE 1 - RENCONTRE DE DÉMARRAGE 03 PARTIE 2 - ANALYSE FONCTIONNELLE 03 PARTIE 3 - ARBORESCENCE 04 PARTIE 4 - MAQUETTES
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
Questionnaire GTA - Analyse des re ponses
Questionnaire GTA - Analyse des re ponses Novembre 2012 Table des matières Taux de réponse au questionnaire... 2 Actualité de l expertise : AccessiWeb 1 versus 2... 2 Profil métier... 3 Compétences...
Soyez accessible. Manuel d utilisation du CMS
Soyez accessible. Manuel d utilisation du CMS Nameo : mode d emploi Nameo est une agence web basée en Alsace, à Strasbourg. Son champ d action : création ou refonte de sites internet, stratégie et mise
Création d un module complet de sondage en ligne
Sté KOTAO StillinContact.com 6 Avenue du Tregor 190 PLERIN Création d un module complet de sondage en ligne Mini Rapport de stage TANGUY Arnaud Département Informatique I.U.T de Lannion 6 Juin 005 INTRODUCTION
Agence Web innovatrice
QUI SOMMES NOUS? 02 n o v a t i s La théorie c est quand on comprend tout et que rien ne marche La pratique c est quand tout marche mais on ne sait pas pourquoi! Chez Novatis, nous avons réussi les deux...
Partner Entreprise. Modules de cours pour la formation continue Offre IFAPME Verviers
Partner Entreprise Modules de cours pour la formation continue Offre IFAPME Verviers Module Business Intelligence avec PowerPivot d Excel 2013 Il n est pas nécessaire de travailler avec des logiciels onéreux
Rapport De Stage 28 mai au 27 juin 2013. Intégration Web Création de site vitrine (SGC)
Rapport De Stage 28 mai au 27 juin 2013 Intégration Web Création de site vitrine (SGC) LOGANATHAN Teboral Etudiante en 2ème 20 rue de Jaigny 95160 Montmorency année de BTS SIO PASTOR Pascal Gérant 200
CAHIER DES CHARGES DE REALISATION DE SITE INTERNET
CAHIER DES CHARGES DE REALISATION DE SITE INTERNET Nom de l entreprise : Adresse : Tel : Fax : Email : Personne à contacter dans l entreprise : 1 SOMMAIRE 1 PRESENTATION DE L ENTREPRISE...3 2 PRESENTATION
Spip 2. Premiers pas pour créer son site web. Anne-Laure Quatravaux Dominique Quatravaux. Avec la contribution de Sandrine Burriel
Anne-Laure Quatravaux Dominique Quatravaux Spip 2 Premiers pas pour créer son site web Avec la contribution de Sandrine Burriel Groupe Eyrolles, 2009, ISBN : 978-2-212-12502-3 Pourquoi choisir Spip? Vous
CAHIER DES CLAUSES TECHNIQUES PARTICULIÈRES (CCTP) MISE EN PLACE ET MAINTENANCE D UN MOTEUR DE RECHERCHE
PREMIER MINISTRE SECRÉTARIAT GÉNÉRAL DU GOUVERNEMENT CAHIER DES CLAUSES TECHNIQUES PARTICULIÈRES (CCTP) MISE EN PLACE ET MAINTENANCE D UN MOTEUR DE RECHERCHE SUR LES SITES INTERNET GÉRÉS PAR LA DOCUMENTATION
CCI DE SAÔNE-ET-LOIRE - ATELIER ENP 18 MAI 2011. La création de sites internet
CCI DE SAÔNE-ET-LOIRE - ATELIER ENP 18 MAI 2011 La création de sites internet Le référencement de sites internet Je veux créer mon site internet Objectifs et démarche Les objectifs Définition Un site internet
Content Management System V.3.0. BlackOffice CMS V3.0 by ultranoir 1
Content Management System V.3.0 BlackOffice CMS V3.0 by ultranoir 1 SOMMAIRE Introduction Grands principes de fonctionnement Description des modules Références principales BlackOffice CMS V3.0 by ultranoir
Créer et partager des fichiers
Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation
Portfolio Sites internet :
Portfolio Sites internet : 2010 ARA architecture www.ara-architecture.com Type : Portfolio d architecte Fonctionnalités principales : Galerie de projet d architecture, Actualités, Textes sur l agence,
SEO On-page. Avez-vous mis toutes les chances de votre côté pour le référencement de votre site?
SEO On-page Avez-vous mis toutes les chances de votre côté pour le référencement de votre site? I. Introduction... p.2 II. Optimisation on-page vs off-page... p.3 III. Les éléments importants de vos pages...
Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement
Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.
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
Utiliser le site learningapps.org pour créer des activités interactives
Utiliser le site learningapps.org pour créer des activités interactives I. Créer un compte - Pour pouvoir utiliser le site learningapps.org à des fins de création, il faut commencer par créer un compte
Présentation de la gamme de produits et manuels numériques
Présentation de la gamme de produits et manuels numériques Rennes le 14 Sept 2012 08/10/2012 1 Agenda Présentation de JOUVE L offre numérique Jouve Présentation de la solution LETO La gamme de produit
Refonte des sites internet du SIEDS
Refonte des sites internet du SIEDS Formation à la rédaction de contenu 31 juin 2005 09 h 00 Salle du CA, rue Notre Dame, à NIORT Déroulement Un CMS à quoi çà sert? La gestion de contenu selon SPIP Agora
CONNEXION. Une interface de connexion sécurisée, simple et accessible même depuis un appareil mobile. CONNEXION /
CONNEXION Une interface de connexion sécurisée, simple et accessible même depuis un appareil mobile. CONNEXION / HOMPAGE Un menu natif avec des options utiles et indispensables. Sauvegarde de la base de
Présentation des nouveaux services de l ENT Second degré Rentrée scolaire 2015 et fin du 1 er trimestre de l année scolaire 2015-2016
Important - Période de fermeture estivale 2015 L installation de la version 8.0 et la réalisation du traitement de bascule d année auront lieu du 10 juillet au soir jusqu à la fin du mois de juillet. Durant
claroline classroom online
de la plate-forme libre d'apprentissage en ligne Claroline 1.4 Manuel Révision du manuel: 06/2003 Créé le 07/09/2003 12:02 Page 1 Table des matières 1) INTRODUCTION...3 2) AFFICHER LA PAGE DE DEMARRAGE...3
Travail collaboratif. Glossaire
Glossaire Ajax Traduction anglaise : Ajax (Asynchronous JavaScript And XML) AJAX est un combiné de différents langages de développement Web comme XHTML, JavaScript ou XML, il est fréquemment utilisé pour
Programmation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
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
Magento. Pratique du e-commerce avec Magento. Christophe Le Bot avec la contribution technique de Bruno Sebarte
Magento Pratique du e-commerce avec Magento Christophe Le Bot avec la contribution technique de Bruno Sebarte Pearson Education France a apporté le plus grand soin à la réalisation de ce livre afin de
LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS
LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS Contenu détaillé de la spécialité : SIMO : SYSTEMES D'INFORMATION, METHODES ET OUTILS (ASSISTANT CHEF DE PROJET INFORMATIQUE) Contenu détaillé
Marché à Procédure adaptée. Tierce maintenance applicative pour le portail web www.debatpublic.fr
Marché à Procédure adaptée Passé en application de l article 28 du code des marchés publics Tierce maintenance applicative pour le portail web www.debatpublic.fr CNDP/ 03 /2015 Cahier des clauses techniques
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
Formation en Logiciels Libres. Fiche d inscription
République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)
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
FileMaker Server 14. Guide de démarrage
FileMaker Server 14 Guide de démarrage 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
Présentation de SOFI 2.0
Présentation de SOFI 2.0 Version 2.0.3 Présentation SOFI 2.0 1 Agenda Historique Utilisation de SOFI Pourquoi SOFI? 3 Grands Axes Développement Accompagnement et formation Communauté Architecture Les nouveautés
Un serveur d'archivage
Un serveur d'archivage destiné au Service Commun de Documentation de l'université de la Méditerranée Encadrement : Noël Novelli Représentants client (S.C.D.) : Axelle Clarisse Ronan Lagadic Equipe Projet
WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu
Daniel Roch Optimiser son référencement WordPress Référencement naturel (SEO) Préface d Olivier Andrieu Groupe Eyrolles, 2013, ISBN : 978-2-212-13714-9 Table des matières AVANT-PROPOS... 1 Pourquoi ce
Competence Management System (Système de Gestion de Compétences)
Dispositif :... 3 Qu est-ce qu un CMS?... 3 Quels sont les dispositifs intégrés à un CMS... 3 Comment envoyer des emails?... 3 Puis-je envoyer des emails seulement à un groupe de personnes?... 4 Comment
Utiliser un CMS: Wordpress
Utiliser un CMS: Wordpress Annie Danzart [email protected] Wordpress Concevoir un site web statique Concevoir un site web dynamique Choisir un hébergement Choix du CMS Wordpress: installation
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
RAPPORT DE STAGE. Terrasse Hugo 1/12
RAPPORT DE STAGE Terrasse Hugo 1/12 Sommaire Introduction Les CMS Présentation CMSMS CMS Made Simple Prestashop Les Travaux VAMO Moulin du Calanquet Le Responsive Design La Refonte graphique Le Reférencement
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
CMS Open Source : état de l'art et méthodologie de choix
CMS Open Source : état de l'art et méthodologie de choix Définition d'un CMS (wikipedia) Les CMS sont une famille de logiciel de conception et de mise à jour dynamique de sites web partageant les fonctionnalités
Les 10 étapes incontournables pour réaliser un site internet performant et accessible
COMITÉ DE COMMUNICATION DE L AOMF FICHE-CONSEIL N 2 Les 10 étapes incontournables pour réaliser un site internet performant et accessible Les 10 étapes que vous retrouvez ci-dessous peuvent faire partie
