SlideShare a Scribd company logo
1 of 112
Download to read offline
Mohamed OUALI 1 Projet de fin d’étude 2009/2010
Mohamed OUALI 2 Projet de fin d’étude 2009/2010
Dédicace
A mes très chers parents,
Aucun mot, aucune dédicace ne peut exprimer mon respect, ma considération et
l’amour éternel pour les sacrifices que vous avez consentis pour mon instruction
et mon bien être.
Votre générosité et votre bonneté ont toujours été un exemple pour nous tous.
Trouvez en ce travail le fruit de votre dévouement, de votre patience et
l’expression de ma gratitude et mon Profond amour.
Je t’aime papa ; je t’aime maman et sachez que je vous suis très reconnaissant.
A mes très chères sœurs,
Vous m’avez toujours soutenu durant toutes mes études, je vous souhaite une vie
pleine de joie de bonheur et de réussite.
A toute ma chère famille,
A mes professeurs,
A mes chers amis,
A tous ceux qui m’aiment,
A tous ceux que j’aime,
A tous ceux qui m’ont aidé de près ou de loin,
Je dédie ce travail avec hommage.
Mohamed OUALI
Mohamed OUALI 3 Projet de fin d’étude 2009/2010
Remerciement
Merci à toute personne qui m’a aidé à acheminer à bon port le présent
Projet de Fin d’Études.
Je tiens aussi à remercier mon encadrant externe du projet, Monsieur
Abderrahmane ELKAFIL le Directeur de la société NEXTMA, pour son accueil
chaleureux, sa disponibilité, sa patience et ses conseils précieux qu'il m’a
prodigués tout au long de ce stage.
Mes remerciements sont également adressés, avec tout le respect, au
personnel de la société NEXTMA pour leur aide et leur soutien.
Je voudrais également exprimer mes remerciements et mes profondes
gratitudes à mon encadrant interne, M. Abdlekbir AFRAITES pour sa
sympathie, sa compréhension, ses conseils et son aides pour mener à bien mon
travail.
Que messieurs les membres de jury trouvent ici l’expression de mes
reconnaissances pour avoir accepté de juger mon travail.
Enfin, mes sincères remerciements, avec tout le respect, à M. Ahmed
DERJA le directeur de L’Ecole Nationale des Sciences Appliquées de Safi, à
l’ensemble du corps professoral du département Génie informatiques pour
m’avoir communiqué leur savoir et leur savoir faire et à tous mes enseignants
qui ont assuré ma formation tout au long de ma période d’études.
Mohamed OUALI 4 Projet de fin d’étude 2009/2010
Résumé
PloneGov est l’extension internationale du projet CommunesPlone qui
est un projet à l'initiative de communes wallonnes désireuses de diminuer leur
dépendance aux fournisseurs informatiques et de retrouver une plus grande
indépendance technologique. Pour cela, elles ont choisi de développer un
ensemble des outils informatiques et sites internet véritablement adaptés à leurs
besoins en ayant recours à des technologies open source.
Les outils actuellement proposés dans le cadre du projet CommunesPlone
s'appuient sur un logiciel de gestion de contenu (CMS) appelé Plone.
Plone est un CMS Open Source, convivial et puissant qui vous permet de
facilement ajouter et éditer tout type de contenu via le web, de produire de
navigation et de recherche de ce contenu et appliquer la sécurité et de workflow
à ce contenu.
NEXTMA, société dans laquelle j’ai effectué mon stage de fin d’études
est une des nouvelles SSLL (Société de Services en Logiciels Libres). Elle
propose à ses clients plusieurs solutions Open Source pour les intranets
d’entreprise et les gestions de contenu (CMS).
Ma mission au cours de ce stage était, tout d’abord, de prendre en main le
CMS Plone et d’adapter la plateforme offerte par le projet " PloneGov " au
contexte marocain. Cette adaptation consiste à réaliser un site web communal et
à intégrer quelques outils ou produits développés dans le cadre de ce projet.
En effet, ce projet de fin d’études m’a permis de capitaliser un savoir
faire en matière de CMS, de mieux comprendre comment fonctionne une société
de services et comment une SSLL peut vivre du logiciel libre.
Mots clés :
 PloneGov : l’extension internationale du projet CommunesPlone
 CMS : Content Management System
 Site communal
 Outils CommunesPlone
Mohamed OUALI 5 Projet de fin d’étude 2009/2010
INTRODUCTION……………………………………………………………………….
Chapitre I : CONTEXTE GENERAL DU PROJET : …………………...
I.1 PRESENTATION DE NEXTMA : …………………………………………
1.1 NEXTMA en Bref : ………………………………………………….
1.2 Prestations et services : ……………………………………………….
1.3 Secteurs d’activités : …………………………………………………
I.2 DEFINITION DES OBJECTIFS DU PROJET : ……………………………
I.3 PLANIFICATION DU PROJET : ………………………………………….
Chapitre II : PRESENTATION DU CMS PLONE :………………….
II.1 CONTENT MANAGEMENT SYSTEM (CMS) : …………………………
1.1Qu'est ce qu'un CMS ? : ……………………………………………….
1.2 Pourquoi les CMS ? : …………………………………………………
1.3 Principe et fonctionnement : ………………………………………..
1.3.1 Séparation de la forme et du contenu : …………………….
1.3.2 Structuration des contenus : ……………………………….
1.3.3 Fonctionnement : ………………………………………….
II.2 ZOPE ET CMF : …………………………………………………………….
2.1 ZOPE : ……………………………………………………………….
2.2 CMF : ………………………………………………………………..
II.3 PLONE : ………………………………………………………
3.1 Définition : ……………………………………………..
3.2 Installation : …………………………………………….
3.3 Premiers pas avec Plone : …………………………………….
Chapitre III : LE PROJET PLONEGOV
III.1. PRESENTATION & OBJECTIFS DU PROJET : ……………………..
III.2. HISTORIQUE DU PROJET : ………………………………………….
III.3 LE CHOIX DE L’OPEN SOURCE : …………………………………...
3.1 Définition : ………………………………………………………...
3.2 La valeur ajoutée des projets open source : ……………………….
III.4 UN PROJET AU CŒUR DE L’EUROPE : ……………………………
III.5 ASPECTS TECHNIQUES : ……………………………………………
5.1 Site web : ………………………………………………………….
5.2 Applications métiers : ……………………………………………..
Chapitre IV : REALISATION DU SITE COMMUNAL : ………….
Mohamed OUALI 6 Projet de fin d’étude 2009/2010
IV.1 SITE COMMUNAL : ………………………………………………
1.1 Obstacles : ……………………………………………………
1.2 Objectifs d’un projet site communal : ……………………….
IV.2 ANALYSE ET CAHIER DES CHARGES : ……………………..
2.1 Analyse de l’existant : ………………………………………….
2.2 Le cahier des charges : …………………………………………
IV.3 CONCEPTION ET REALISATION : ………………………………
3.1 Rassembler les informations à publier : ………………………..
3.2 Organiser l'information collectée : ……………………………..
3.3 Planifier la future vie du site de la commune : ………………...
3.4 L'aspect présentation : …………………………………………
3.5 Les portlets : annuaire, infos pratique : ……………………….
Chapitre V : LES OUTILS INTEGRES DANS LE SITE : ………
V.1 APPLICATION DE GESTION DES ORGANES DELIBERATOIRES : …
1.1 Description fonctionnelle : …………………………………………
1.2 Caractéristiques de l'application : …………………………………..
1.2.1 Organisation en groupes : ………………………………….
1.2.2 Rôles prédéfinis : …………………………………………..
1.2.3 Interface générale : …………………………………………
1.2.4 Ecrans de gestion d’un point : ……………………………..
1.2.5 Ecrans de gestion d'une séance : …………………………..
1.2.6 Ecrans de gestion d'un procès­verbal : …………………….
1.3 Installation et configuration de l'application : ……………………
1.3.1 Installation : ……………………………………………….
1.3.2 Panneau de configuration général : ……………………….
1.3.3 Gestion des configurations de séance : …………………...
V.2 CONTACT : ……………………………………………………………
V.3. AUTRES MODULES : ………………………………………………..
3.1 Système de géolocalisation : …………………………………….
3.2 Versionning : ……………………………………………………
3.3 Forum : ………………………………………………………….
CONCLUSION …………………………………………………………....
Mohamed OUALI 7 Projet de fin d’étude 2009/2010
Introduction générale
Le Maroc vient de franchir un pas décisif dans le domaine des
technologies d’information et de communication (TIC). Conscient des défis de
la société de l’information et des enjeux de l’économie du savoir, le Royaume
mise beaucoup plus sur le génie et la richesse de son potentiel humain. En effet,
sous l’impulsion Royale, le Maroc vient d’élaborer une stratégie nationale pour
la société de l'information et l'économie numérique baptisée "Maroc Numeric
2013". Présentée le 10 Octobre 2009 à Rabat devant Sa Majesté le Roi
Mohammed VI, "Maroc Numeric" ambitionne de faire des technologies de
l'information (TI) un véritable vecteur de développement humain.
Cette stratégie s’assigne également comme objectifs d’augmenter l’accessibilité
de l'Internet haut débit aux citoyens, de faciliter l'accès à la connaissance et de
rapprocher l'administration des besoins des citoyens en termes d'efficacité, de
qualité et de transparence à travers le programme « e­gouvernement ».
D’autre part, le projet PloneGov, l’extension du projet CommunesPlone,
est un projet né d'un groupe de communes wallonnes qui ont choisi d'avancer
ensemble pour développer des outils informatiques répondant à leurs besoins
spécifiques. Celles­ci ont ainsi opté pour une base technologique ouverte, Plone,
profitant ainsi du savoir­faire et de l'expérience d'une large communauté
d'acteurs de par le monde. Bien plus qu'un choix technologique,
CommunesPlone s'apparente à un choix philosophique: la collaboration plutôt
que l'isolement et la maîtrise plutôt que la dépendance.
CommunesPlone, en se basant sur des outils open source, a pour objectif
le développement d'applications informatiques par et pour les communes.
Autrement dit, les outils développés dans le cadre du projet peuvent être utilisés
par qui que soit.
En conclusion, l’adaptation de la plateforme PloneGov au contexte marocain,
tout le monde peut en tirer des bénéfices.
Le présent rapport est une synthèse des travaux menés dans le cadre de ce
projet. Il est réparti en cinq chapitres :
 Le premier chapitre intitulé "Contexte général du projet", est
consacré à la présentation de l’organisme d’accueil, donner une vue
générale sur les objectifs de mon sujet ainsi que le planning suivi
durant ce stage.
 Le second chapitre présente le CMS "Plone" utilisé.
Mohamed OUALI 8 Projet de fin d’étude 2009/2010
 Le troisième chapitre est consacré à la présentation du projet
"CommunesPlone".
 Le cinquième chapitre traites la démarche suivie et la réalisation
d’un site communal.
 Le dernier chapitre illustre les outils développés dans le cadre du
projet CommunesPlone et intégrés dans le site communal.
Mohamed OUALI 9 Projet de fin d’étude 2009/2010
Chapitre I : CONTEXTE GENERAL DU PROJET
Ce chapitre est une présentation générale du Contexte de mon
projet. J’y aborderai :
 Présentation de l’organisme d’accueil NEXTMA
 Définition des objectifs du projet.
 Planification du projet.
Mohamed OUALI 10 Projet de fin d’étude 2009/2010
I.1 PRESENTATION DE NEXTMA :
1.1 NEXTMA En Bref :
NEXTMA est une Société de Services en Logiciels Libres (SSLL) qui
accompagne les entreprises et institutions dans le choix de solutions open source
ainsi que dans l'intégration, le développement, l'adaptation aux besoins
spécifiques, la maintenance et le support. Afin de bénéficier des meilleures
solutions libres dans la gestion des systèmes d'information, NEXTMA offre aux
PME marocaines des services qui sont orientés sur le modèle « ONE STOP
SHOPPING ». C'est­à­dire en offrant une gamme étendue des services
complémentaires sur mesure, car chaque entreprise à sa spécificité, afin qu'elles
puissent faire face aux échéances du libre échange et soient à niveau par rapport
aux normes de qualité et de performance internationalement reconnues.
1.2 Prestations et services :
NEXTMA offre une large palette de prestations et de services basés sur
des composants libres adaptés aux systèmes et aux réseaux des clients. La
principale tâche de cette société est d’offrir des solutions sur mesure, en matière
de formation et d’assistance, concernant les problématiques relevant des
systèmes d’informations, moyennant des outils libres.
La gamme de services de NEXTMA est articulée autour de quatre axes majeurs
qui permettent d'accompagner les clients durant toutes les phases d'un projet
afin d'en assurer sa réussite.
Support
En plus des offres de formations. La société propose aux équipes
dédiées au développement, des prestations de support d’aide à la
maintenance, afin de réduire le temps de résolution des
interrogations ou des difficultés que les entreprises pourraient
rencontrer lors de la mise en œuvre de certains logiciels.
Conseil
NEXTMA possède une équipe formée de consultants techniques et
fonctionnels qui assure soit dans le cadre de projets, soit en amont,
des missions de conseil dans les domaines suivants: gestion de
contenu, travail collaboratif, dématérialisation des procédures,
migration vers le libre, architecture et dimensionnement
d'applications basées sur open ERP…etc.
Développement
Mohamed OUALI 11 Projet de fin d’étude 2009/2010
Il constitue le cœur métier de NEXTMA et comprend le
développement sur la base de logiciels libres, de portails
collaboratifs internet ou intranet, avec des composantes de
publication web, de travail collaboratif, de gestion électronique de
documents et de workflow.
Formation
L’offre des formations, techniques et fonctionnelles, permet
d'accompagner les organisations qui disposent d’équipes
opérationnelles capables de mener à bien des projets. Ces
formations peuvent être établies sous forme de transferts de
compétences, en phases avals des projets.
1.3 Secteurs d’activités :
De part les multiples projets que NEXTMA a mené, elle a acquis un
savoir faire susceptible de lui permettre l’implantation de logiciels libres dans
les différents secteurs :
Enterprise Ressource Planning (ERP) :
En français Progiciels de Gestion Intégré (PGI). NEXTMA est le
partenaire officiel de l’ERP open source Open ERP au Maghreb depuis
2006. Elle adapte celui­ci à la législation marocaine et aux besoins
spécifiques des entreprises.
Customer Relationship Management (CRM) :
NEXTMA propose l’offre SUGARCRM qui permet la gestion de la
relation client
Business Intelligence (BI) ou informatique décisionnelle.
Intranet des entreprises et gestion des contenus.
Création d’identités visuelles et sites internet institutionnels et e­
commerce :
La solution proposée est SMARTSHOP qui une solution libre de e­
commerce (commerce électronique) qui s'appuie sur le gestionnaire
contenu Joomla!
Gestion électronique des documents :
Mohamed OUALI 12 Projet de fin d’étude 2009/2010
Il s’agit d’un système informatisé d'acquisition, classement, stockage,
archivage des documents.
I.2 DEFINITION DES OBJECTIFS DU PROJET :
PloneGov est l’extension internationale du projet CommunesPlone qui
est un projet à l'initiative de communes wallonnes désireuses de diminuer leur
dépendance aux fournisseurs informatiques et de retrouver une plus grande
indépendance technologique. Pour cela, elles ont choisi de développer un
ensemble des outils informatiques et sites internet véritablement adaptés à leurs
besoins en ayant recours à des technologies open source.
Les outils actuellement proposés dans le cadre du projet CommunesPlone
s'appuient sur un logiciel de gestion de contenu convivial appelé Plone.
Mon projet de fin d’étude intitulé " L’adaptation de la plateforme
PloneGov au contexte Marocain " a pour objectifs la réalisation des tâches
suivantes :
 Prise en main du CMS Plone
 Analyse des portails des villes marocaines existants
 Proposition et réalisation d’un site communal (démo)
 Intégration de l’application de gestion des organes délibératoires
dans le site
 Intégration du système de géolocalisation dans le site
 Intégrer le multilinguisme dans le site
I.3 PLANIFICATION DU PROJET :
Dans ce qui suit, je vais essayer d’établir la planification de mon projet,
qui est scindé en plusieurs tâches.
La figure 1.1, représente le planning que j’ai suivi pour réaliser mon stage :
Mohamed OUALI 13 Projet de fin d’étude 2009/2010
Figure 1.1 : Planning du stage
Comme on peut remarquer sur la figure 1.1 mon stage se divise en 5 phases :
 Phase1 : Dans cette phase j’ai fait tout ce qui est recherche de
documentation et installation des outils (Ubuntu, CMS Plone et ses
dépendances). Cette étape a été conclue par une rédaction d’un manuel
d’utilisation.
 Phase 2 : dans cette étape j’ai fait l’analyse de plusieurs portails des
villes, des arrondissements marocains et des communes belges. A la fin
de cette phase j’ai proposé un cahier de charge pour notre site communal
(démo).
 Phase 3 : c’est la phase de réalisation durant laquelle j’ai pu réaliser un
site communal à l’aide du CMS Plone.
 Phase 4 : durant cette phase j’ai pu intégrer dans le site une application de
gestion des organes délibératoires, un système de géolocalisation et autres
modules afin d’améliorer les fonctionnalités du site.
 Phase 5 : Dans cette dernière phase j’ai rédigé mon rapport de PFE.
Mohamed OUALI 14 Projet de fin d’étude 2009/2010
Chapitre II : PRESENTATION DU CMS PLONE
Dans ce chapitre je présente les Systèmes de Gestion de Contenu
en particulier le CMS Plone. Il est réparti comme suit :
 Content Management System (CMS)
 Zope et CMF
 Plone
Mohamed OUALI 15 Projet de fin d’étude 2009/2010
II.1 CONTENT MANAGEMENT SYSTEM (CMS) :
1.1 Qu'est ce qu'un CMS ?
Les CMS ou Systèmes de Gestion de Contenu sont des outils de conception et
de mise à jour de site web dynamique disposant de fonctionnalités de
publication. Ils offrent en particulier une interface d'administration destinée à
l'administrateur du site pour créer et modifier le contenu et les fonctionnalités du
site. Les CMS partagent les fonctionnalités suivantes :
 Ils permettent le travail collaboratif sur un même document.
 Ils fournissent une chaîne de publication (workflow) offrant la possibilité
de mettre en ligne le contenu des documents.
 Ils permettent de séparer les opérations de gestion de la forme et du
contenu.
 Ils permettent de structurer le contenu (utilisation de document, FAQ,
blogs, forums, etc.).
 Certains SGC permettent la gestion de versions.
 …
Les CMS sont de plus en plus nombreux (qu'ils soient gratuits, Open Source
sous licence GNU/GPL ou payants) et offrent de plus en plus de fonctionnalités.
Voici quelques uns des CMS les plus connus :
 Plone : présenté dans la suite de ce document.
 Spip : il s’agit d’un outil simple de gestion de contenu développé
en PHP. Il permet la création de rubriques dans lesquelles les
rédacteurs peuvent définir du contenu. Le contenu est ensuite validé ou
rejeté par un modérateur.
 PhpNuke : il s’agit d’un outil de gestion de news en PHP. Il permet de
créer des sites semblables à Slashdot.
 OpenCMS : il s’agit d’un outil Open Source complexe disposant d’un
éditeur WYSIWYG. Il écrit suivant la norme J2EE.
 Lutece : il s’agit de l’outil des mairies d’arrondissement développé par la
ville de Paris. Il offre un workflow limité et permet la création de
pages avec les portlettes.
 Zope et CMF : Zope est un serveur d’applications développé en Python
orienté gestion de contenu. Son approche base d’objets en font
aujourd’hui l’une des solutions les plus puissantes du marché. Afin
Mohamed OUALI 16 Projet de fin d’étude 2009/2010
d’unifier les développements, une librairie additionnelle nommée CMF
ajoute les outils de la gestion de contenu.
 DotClear
 Mambo
 Joomla
 …
1.2 Pourquoi les CMS ?
La gestion des contenus d’une entreprise ou d’un organisme est
aujourd’hui une problématique fondamentale : la réussite est souvent
conditionnée par la qualité de l’informations et plus encore par les échanges
d’informations.
Les premiers Intranet et Internet développés sont constitués de pages Web
écrites avec des outils de conception web. Rapidement, cette gestion de
l’information trouve ses limites :
 Création de documents limitée : Elle ne peut être réalisée que par les
webmasters (ou les personnes maîtrisant les outils de création de pages).
 Manque d’organisation : les documents sont organisés au mieux dans
des répertoires;
 Manque de cohérence : les documents ne sont pas soumis a une charte
graphique et ne peuvent parailleurs être stockés sous différents formats.
 Pas de moteur de recherche : l’accès à l’information est ainsi difficile.
En plus, le principal problème que rencontrent les administrateurs de sites web
est celui de leur administration. L'administration d'un site web peut être
décomposée en plusieurs tâches :
 l'ajout de contenus,
 la mise à jour de contenu,
 la suppression de contenu,
 la réorganisation des données,
 la gestion des accès et des autorisations aux pages du site.
Comme on peut le constater, la problématique concernant la gestion des sites
web peut vite rendre le travail des administrateurs de ces sites infernal.
Enfin, rapidement ces sites sont soit abandonnés car trop difficiles d’accès soit
deviennent surchargés par la masse d’informations. De ces constatations, de
nombreux CMS sont développés pour répondre à ces problématiques.
1.3 Principe et fonctionnement:
Mohamed OUALI 17 Projet de fin d’étude 2009/2010
1.3.1 Séparation de la forme et du contenu :
Le principe fondamental que respectent tous les CMS est la séparation des
opérations de gestion de la forme et du contenu. En effet :
 Le contenu est stocké dans une base des données, structurée en tables et
en champs. C'est le contenu des champs de la base qui est créé et/ou
modifié par le rédacteur, et non pas la page elle même. On parle de site
"dynamique".
 La présentation est définie dans une « Template ou un gabarit » qui définit
la mise en page des pages web (voir annexe 2.1).
Le CMS joue un rôle de frontières entre ces deux mondes (forme et contenu).
Lorsqu'un client va demander une page du site au CMS, ce dernier va rechercher
les données demandées, ainsi que les gabarits associés et les fusionner ensemble
pour rendre la page du site.
C'est ce que présente le schéma suivant :
Figure 2.1 : séparation de la forme et du contenu
1.3.2 Structuration des contenus :
Pour créer un contenu, tous les CMS adoptent les mêmes étapes :
Mohamed OUALI 18 Projet de fin d’étude 2009/2010
1. Authentification : tous les utilisateurs de l’outil doivent être
identifiés.
2. Cette identification peut être utilisée, par la suite, pour définir les
droits et les rôles.
3. Création de documents : la création de documents doit être réalisée à
travers une interface web.
4. Publication : les documents doivent être visibles dans des espaces
déterminés. Par ailleurs, cette opération doit pouvoir être contrôlée. On
introduit ici souvent la notion de Workflow.
Après la création, les contenus d'un site sont structurés en articles. Les CMS
manipulent ces articles pour constituer les pages d'un site. Chaque page d'un site
peut contenir différents articles, et un article peut apparaître dans plusieurs
pages. Cette abstraction du contenu permet de manipuler les articles comme des
objets.
Figure 2.2 : Manipulation des articles
1.3.3 Fonctionnement :
Maintenant que nous savons ce qui constitue les pages web gérées par un CMS,
nous allons voir comment elles sont présentées aux utilisateurs qui les
consultent.
Ce mécanisme s'effectue en trois étapes :
Mohamed OUALI 19 Projet de fin d’étude 2009/2010
Figure 2.3 : fonctionnement du CMS
1. le Visiteur demande au moteur du CMS une page particulière (ici
nommée X)
2. le moteur du CMS récupère le gabarit de la page et les données qu'il
contient
3. le moteur du CMS fusionne les données dans le gabarit et renvoie le
résultat au visiteur qui les affichera dans son navigateur web.
La gestion de contenu ne doit pas être envisagée dans tous les cas car elle
entraîne souvent des modifications dans l’organisation de l’organisme et
impose des contraintes importantes.
II.2 ZOPE & CMF :
2.1 ZOPE :
Zope est un serveur d’applications web libre, Open Source. C’est une plateforme
de développement constituée de différentes technologies et langages. Il peut être
ainsi caractérisé :
 Serveur d’applications atypique. Il ne respecte pas la norme J2EE
développée par Sun.
 Développé en python : Zope s’appuie sur un langage de script moderne.
Toutefois, une partie du code sensible est écrit en C. Le python permet un
développement rapide et professionnel.
 Basé sur la ZODB : le serveur d’applications s’appuie sur le concept de
base d’objets. L’intégration de bases de données tierces est toutefois
possible.
 Interface Web : tout peut être réalisé depuis un navigateur. Cette approche
permet une prise en main rapide de l’outil.
Mohamed OUALI 20 Projet de fin d’étude 2009/2010
 Un framework riche
 Objets typés : les documents sont organisés en type.
2.2 CMF :
Zope est un framework extensible et sa couverture des applications de gestion de
contenu est large. Toutefois, de nombreux éditeurs ont développé leurs solutions
de CMS. Afin d’offrir une base commune plus large et permettre une meilleure
interopérabilité des produits CMS en Zope, Zope Corporation a développé le
CMF.
Il s’agit d’une architecture de services orientée CMS. Ses principales
caractéristiques sont :
 Gestion d’un espace membre
 Gestion d’un processus de création de contenu : le workflow
 Gestion de l’indexation : un moteur de recherche est intégré
 Gestion de l’interface graphique : l’outil offre un moyen de définir
différents thèmes disponibles pour les utilisateurs.
 Gestion de metadonnées : afin d’organiser les documents, il est possible
de créer des données sur les données.
 Gestion de la syndication : les documents doivent pouvoir être exploités
sur des sites externes.
Zope et CMF constituent ainsi une plateforme idéale pour la création
d’applications de CMS.
II.3 PLONE :
3.1 Définition :
Plone est un système de gestion de contenu web Open Source publié selon les
normes de la GNU GPL. Il est construit au dessus du serveur d'application
Zope et de son extension CMF. Plone est un produit à destination des utilisateurs
finaux ayant pour objectif de simplifier la mise en place d’un outil de gestion de
contenu. Il est développé par Alexander Limi, Alan Runyan, Vidar Andersen et
par une communauté de développeurs passionnés.
3.2 Installation :
Le présent document décrit l’installation de Plone sur les plateformes Linux (en
particulier Ubuntu), plateformes de production par excellence pour Plone. De
plus, les plateformes windows et MacOS disposent d’un installeur simplifiant à
l’extrême cette étape.
Plone est un produit Zope. Il est donc nécessaire de disposer d’un serveur Zope
opérationnel sur la plateforme utilisée. Les plateformes Linux, Windows et
MacOS disposent d’un installeur unifié intégrant Zope, CMF et Plone.
Mohamed OUALI 21 Projet de fin d’étude 2009/2010
Pour mettre en place le système de gestion de contenu (Plone) la procédure d'ins
tallation la plus simple est l'utilisation de l'Installateur Unifié (IU). Toutefois,
l’installation séparée de chaque composante reste, aussi, possible mais doit
respecter un certain ordre.
a. Installation par l’IU :
a.1 Installateur unifié :
Le programme d'installation unifiée est un kit d'installation source pour installer
python, Zope, Plone et leurs dépendances sur les plateformes de type Linux.
Elle a deux composantes principales:
 Les paquets source pour Python, Zope, Plone, un couple des
bibliothèques du système et certaines bibliothèques Python;
 Un script d'installation qui utilise les paquetages pour créer un
ready­to­run ou un fichier d'installation.
Remarque:
La nouvelle installation (Zope / Plone) utilisera sa propre version de Python, et
le python installé par l'installateur unifié ne remplacera pas la copie de python
de la plateforme utilisée (OS).
a.2 Root ou User installation :
Le script install.sh pour l'installateur unifié peut être exécuté en tant que root
(généralement sudo) comme un utilisateur normal. Les principales différences
sont les suivantes :
En tant que root:
 Est le meilleur choix pour une installation de production de Plone.
 Installation est par défaut dans / usr / local / Plone.
 Installateur unifié crée un utilisateur ''Plone'', le définit en tant que propri
étaire des fichiers de données et configure Zope pour être exécuté avec l'u
tilisateur effectif "Plone".
 Les programmes et les fichiers de configuration sont la propriété de l'utilis
ateur root, et ne devrait pas être accessible en écriture par le processus de
Zope.
 ...
En tant qu'utilisateur normal:
 Installation par défaut est dans $ HOME / Plone.
 Peut être un bon choix pour tester ou développer une instance
 ...
Mohamed OUALI 22 Projet de fin d’étude 2009/2010
a.3 Stratégies de configuration de Zope :
Le programme d'installation unifié offre deux stratégies différentes pour la
configuration de votre Zope :
 Le stand-alone instance Zope : est plus simple à comprendre, à intégrer
et à contrôler, et est probablement le meilleur choix pour un simple
environnement ou un environnement de test.
 Un ZEO Client / Serveur : ZEO (Zope Enterprise Objects) vous permet
d'avoir plusieurs processus clients Zope (ou des serveurs distincts) qui
partagent un objet commun de processus de base de données du serveur.
a.4 Exécution de l'installateur unifié (IU) :
a.4.1 Téléchargement de lU (Installateur Unifié):
Le téléchargement de l’archive de l’installateur unifié peut être fait de deux
manière différentes :
­ Via la ligne de commande (Terminal):
Se déplacer dans le répertoire où nous souhaitons enregistrer l’archive (par la
commande # cd chemin/répertoire) et en tapant la commande suivant :
# wget URL de votre archive
Comme exemple :
# wget http://launchpad.net/plone/3.3/3.3.1/+download/Plone3.3.1UnifiedInstaller.tgz
Pour utiliser cette commande il est nécessaire, si on n’a pas l’url de l’archive,
de le récupérer en passant la souris sur le lien de l’archive fourni dans le site
officiel.
­ A partir du site officiel de plone : http://plone.org/products/plone/releases
a.4.2 Décompressez l'archive :
Maintenant, il faut choisir un répertoire de travail commode et décompresser
l'archive de l'installateur unifié par :
# tar zxf PloneVERSIONUnifiedInstaller.tar.gz
Puis, il faut se déplacer dans le répertoire nouvellement créé pour lancer
l’installation.
a.4.3 Exécution de « install.sh » :
Mohamed OUALI 23 Projet de fin d’étude 2009/2010
Avant d'exécuter l'installateur il faut s'assurer que les éléments suivants sont
installés:
­ gcc,
­ g++,
­ GNU make,
­ GNU tar,
­ bzip2 et gzip.
Si on a choisi l’installation avec les privilèges root, soit "su" pour devenir root
ou de faire précéder ces commandes avec "sudo".
 ZEO Installation :
# . / install.sh Zeo
 StandAlone Installation Zope:
# ./install.sh standalone
a.4.4 Fin de l’installation :
Si l’installation a réussi, il est préférable de commencer la vérification en
suivant les instructions affichées à la fin du processus d'installation (ou dans le
fichier README.txt dans le répertoire d'installation). Le fichier README.txt
contient des instructions qui suggèrent d'ajuster les ports et le mot de passe
administrateur si c'est nécessaire. Pour se connecter à Plone les informations
(user/password) fournies à la fin de l'installation et stockées dans fichier
"adminPassword.txt" (chemin/.../zeocluster/adminPasswoed.txt) sont
nécessaires.
Si le début est réussi, en ouvrant un navigateur web et en naviguant sur
http://localhost:PORTCHOISI (Si nous testons sur une autre machine, il faut
remplacer "localhost" par le nom, ou IP, de notre serveur hôte), nous devrions
voir un message de bienvenue de Zope. Pour la version 3 de Plone, un site Plone
de test devraient être disponibles à http://localhost:8080/Plone (Pour la version
2, il faut d’abord ajouter le site Plone afin de pouvoir y accéder), et la Zope
Management Interface à http://localhost:8080/manage (pour toutes les versions
et si on n’a pas changé le port 8080).
a.4.5 A quoi ressemble Plone ?
Après avoir ajouté un site Plone à son instance ZOPE, l’utilisateur peut voir son
site sous plusieur vue selon son rôle. La figure ci­dessous montre la vue
anonyme affichée à un utilisateur non connecté :
Mohamed OUALI 24 Projet de fin d’étude 2009/2010
Figure 2.4 : interface d’un site Plone
b. Installation séparée :
Pour installer chaque composante indépendamment des autres il faut suivre
l’ordre suivant :
1. Créer un utilisateur zope et se connecter sous cet utilisateur :
­ # useradd new_user –p password
­ # su new_user
2. Télécharger un binaire Zope-XXX.tgz, le décompresser, lancer le
script install puis lancer le script start.py, noter le mot de passe du
compte admin et arrêter Zope avec le script stop.py.
3. Télécharger CMF­XXX.tar.gz, le décompresser et déplacer les
répertoires CMFCore, CMFDefaut, CMFCalendar et CMFTopic dans
lib/python/Product du serveur Zope.
4. Téléchargez Plone­tar.gz, le décompresser et déplacer les répertoires
CMFPlone, DCWorkflow et Formulator dans lib/python/Product.
5. Démarrer ensuite Zope pour découvrir Plone.
3.3 Premiers Pas avec Plone :
En suivant les instructions précédentes, il est possible dorénavant de se
connecter avec notre navigateur préféré :
­ A la ZMI par l’url suivante : http://mon ip:Port (par défaut 8080).
Une page semblable à la figure 2.1 doit apparaître.
Mohamed OUALI 25 Projet de fin d’étude 2009/2010
Figure 2.1 : Page d’accueil de Zope
­ Au site Plone par l’url suivante : http://mon ip:Port/site-plone (un site
ou une instance Plone est générée automatiquement par IU pour la version
3.X.X, alors que pour la version 2.X.X c’est à l’utilisateur de créer son
propre instance).
La page de la figure 2.1 n’est nullement spécifique à Plone : il s’agit de la
page d’accueil de Zope. Il est ensuite nécessaire de se connecter à la ZMI,
l’interface d’administration de Zope. Pour cela, il est possible de cliquer
sur le lien Zope Managemement Interface ou d’utiliser l’url http ://mon ip
:Port/manage. Le compte admin ainsi que le mot de passe fournit
précédemment sont nécessaires. Une page semblable à la figure 2.2 doit
apparaître.
Mohamed OUALI 26 Projet de fin d’étude 2009/2010
Figure 2.2 : La ZMI
A. Création d’une instance Plone :
La création d’une instance Plone est réalisée à travers la ZMI. Il suffit de se
placer à la racine de Zope et d’ajouter un objet de type ‘‘ Plone Site ’’. Comme
le montre les figures :
Figure 2.3 : Ajout d’un site Plone
Mohamed OUALI 27 Projet de fin d’étude 2009/2010
Figure 2.4 : Formulaire d’ajout d’un site Plone
Un formulaire est, composé de quelques champs, ensuite présenté semblable à la
figure 2.4 :
Les différents champs permettent de paramétrer notre objet Plone :
­ Id : l’identifiant de l’objet. Attention, il s’agit d’un identifiant qui doit être
correct d’un point de vue url ;
­ Title : le titre associé à cet objet. Il n’y a pas de restriction ;
­ Membership source : Plone est un site collaboratif qui permet à chaque
utilisateur de s’enregistrer. Les utilisateurs peuvent être stockés dans un
objet acl_users local à notre Plone site ou dans l’objet acl_users global. Il
est conseillé de laisser la valeur par défaut : create a new user folder ;
­ Description : cette description est utilisée dans certaine page afin
d’expliquer le rôle de votre site Plone ;
­ Site Type : il existe deux types de site Plone. Les sites publics où les
documents créés par les utilisateurs sont visibles de tous si l’on connaît
leurs url et les sites privés où les documents restent privés tant que
l’utilisateur ne les a pas rendus publics.
Une fois le formulaire complété, la page d’accueil de Plone est alors présentée :
Mohamed OUALI 28 Projet de fin d’étude 2009/2010
Figure 2.5 : Page d’accueil de Plone
Plone est maintenant déployé, il est donc possible de découvrir son interface et
ses nombreuses fonctionnalités.
B. Tour d’horizon de Plone :
Cette partie permet de découvrir les fonctionnalités de Plone est de prendre en
main l’outil.
B.1 Les utilisateurs :
Un portail ou une application Plone distingue les visiteurs en différentes
catégories offrant plus ou moins de fonctionnalités à ces derniers.
- Les rôles :
Plone est une application de type communautaire, dont on peut distinguer deux
principaux acteurs :
• Les visiteurs : ces acteurs ne sont pas authentifiés et ne sont pas des
producteurs de contenu. Leur unique tâche est la consultation de pages. On leur
assigne le rôle anonymous, le rôle le plus limité ;
• Les membres : ces acteurs sont identifiés et disposent d’un compte sur le site
Plone. Ils peuvent créer de nouveaux contenus, les modifier et publier du
contenu selon leurs droits. Ils existent différents rôles leurs offrant plus ou
moins de droits. Le rôle member permet de disposer d’un compte sur le site
Plone. Le rôle Reviewer offre les droits membres et permet la modération de
contenus. Les acteurs Reviewer sont couramment appelés modérateurs. Enfin, le
rôle manager est équivalent à root sous Unix et l’utilisateur admin (généré par
défaut) dispose de ce rôle. Par ailleurs, la vue du site est différente selon le(s)
rôle(s).
- L’authentification :
Comme nous l’avons vu précédemment, il existe différents rôles. Pour essayer
ces rôles, il convient de fermer le navigateur utilisé. En effet, l’authentification à
la ZMI est une authentification HTTP et toutes les instances du navigateur
Mohamed OUALI 29 Projet de fin d’étude 2009/2010
partage cette authentification. C’est pourquoi de nombreux utilisateurs de Zope
utilisent deux navigateurs distincts : l’un avec le rôle manager et l’autre pour
visualiser avec un autre rôle les modifications apportées.
Après avoir fermé et relancé le navigateur, l’url http ://mon ip :8080/site-plone
présente le site Plone sous la vue des anonymous.
Figure 2.6 : Vue anonyme du site Plone
Cette vue anonyme permet de visiter les quelques pages fournies par un site
Plone par défaut. Il est aussi possible de se connecter à nouveau en tant
qu’admin grâce à la portlette d’authentification (cadre bleu à gauche nommé
login) ou créer un nouvel utilisateur membre avec le lien nouveau utilisateur ?
de ce même slot. Dans ce cas, un formulaire d’inscription est présenté :
Mohamed OUALI 30 Projet de fin d’étude 2009/2010
Figure 2.7 : Formulaire d’inscription
Après l’inscription, un message de bienvenue vous est alors présenté et vous
permet de vous connecter sous ce nouvel utilisateur.
B.2 Les actions :
Cette section a pour objectif de réaliser une présentation fonctionnelle de l’outil
Plone.
- Le menu principal :
Le menu principal est constitué de divers onglets comme le montre la figure 2.8.
Figure 2.8 : menu principal
Chacun de ces onglets est un lien vers une url :
• accueil : la page d’accueil
• members : la page listant les membres du site
• news : la page des actualités du site
• events : la page des événements du site
Il s’agit en fait d’actions. Cette notion sera décrite plus longuement dans ce qui
suit.
- La navigation :
Mohamed OUALI 31 Projet de fin d’étude 2009/2010
La navigation est un aspect indispensable au bon fonctionnement d’un site.
Plone offre différents éléments permettant de faciliter la navigation. La
breadcrumbs ou barre de navigation est une liste indiquant l’endroit où l’on se
trouve sur le site et dont chacun des éléments qui constituent le chemin est
cliquable. La figure suivante permet de comprendre immédiatement :
Figure 2.9 : breadcrumbs
Par ailleurs, un autre élément est fourni afin d’offrir un déplacement rapide dans
l’arborescence d’un site Plone : la boite (un slot) de navigation. Elle se présente
sous la forme suivante :
Figure 2.10 : boite de navigation
B.3 La gestion du contenu :
Plone s’appuie sur les concepts Zope pour la gestion de contenu et sa base
d’objets. Toutefois, les objets disponibles pour la création de contenu sont
distincts de ceux présentés dans la ZMI.
- La création de contenu :
La création de contenu est une opération disponible aux membres de votre site et
celle­ci est limitée à certains espaces. L’espace privilégié pour cette opération
est le répertoire mon dossier. Par défaut, Plone fournit les types suivants :
 Document : ou page web est le type de contenu le plus utilisé. Il permet
de stocker un titre, une description et un texte. Il est possible de
lui associer des métadonnées ;
 Fichier : le fichier est le document qui permet de placer le plus facilement
des fichiers Word ou PDF en téléchargement sur le site ;
 Evénement : un événement est un objet caractérisé par sa date. Cet objet
s’il est publié apparaît sur le calendrier fourni dans le slot calendrier ;
 Actualité : une nouvelle est un objet permettant de définir une actualité.
Ces dernières sont visibles au travers de la page news qui les classe par
ordre de publication ;
Mohamed OUALI 32 Projet de fin d’étude 2009/2010
 Image : juste une image ;
 Lien : un lien vers une autre page. Il peut être utilisé pour ranger ses
objets.
 Dossier automatique : ‘Topic’ ou ‘smart folder’ est un thème permet de
définir une page virtuelle offrant un listing des fichiers ou documents
sélectionnés au travers de critères définis ;
 Dossier : un répertoire.
Pour créer un nouveau document, il suffit se placer dans un répertoire où l’on
possède des droits suffisants, et de disposer de l’affichage du contenu. Une liste
déroulante vous permet alors de choisir un type de contenu comme le montre la
figure 2.11.
Figure 2.11 : Ajout d’un élément
- Les rôles locaux :
Les rôles locaux sont une fonctionnalité avancée de la ZODB. La ZODB, base
d’objets de Zope, dispose de mécanisme de sécurité semblable à un système de
fichiers. Ainsi, lorsqu’un répertoire est crée, seul le propriétaire peut créer du
contenu et seul un modérateur peut valider les documents. Toutefois, il peut être
judicieux pour certaines raisons d’autoriser localement un utilisateur à disposer
de droits particuliers. Cette fonctionnalité est apportée par les droits locaux. Les
rôles locaux peuvent être définis dans les répertoires. Il suffit de sélectionner
l’onglet partage puis de sélectionner les utilisateurs et le rôle qu’on désire leur
attribuer. Il est ensuite possible de supprimer les rôles attribués comme le
montre la figure2.12:
Mohamed OUALI 33 Projet de fin d’étude 2009/2010
Figure 2.12 : Rôles locaux
Remarque : il existe une interface dans la ZMI permettant de contrôler de
manière fine les rôles locaux.
- Les métadonnées :
Les métadonnées ou les données sur les données sont une caractéristique
intéressante de Zope. Il s’agit d’informations que l’on peut attacher au contenu.
Les métadonnées peuvent être le titre, l’auteur, la date de création d’un
document, etc. Ces informations permettent de caractériser de manière fine les
contenus. Elles sont notamment utilisées lors de recherches. Les métadonnées
peuvent être définies avec l’onglet propriété d’un document comme le montre la
figure 2.13 :
Mohamed OUALI 34 Projet de fin d’étude 2009/2010
Figure 2.13 : les métadonnées
- Le workflow :
Le workflow est l’un des points forts de Plone. Tout document peut être en effet
être attaché à un workflow. Par défaut, Plone fournit plusieurs worflows :
 folder workflow : le workflow des répertoires est un workflow
simplifié ;
 plone workflow : il s’agit du workflow classique
créateur/modérateur.
Les workflows permettent d’associer aux documents des états et de gérer les
transitions entre les états. Par défaut, les workflows fournis avec Plone utilisent
les états suivants :
• Privé : le document n’est accessible qu’à son créateur ;
• Visible : le document est accessible si on dispose de son url ;
• En attente : le document attend une modération pour être public ;
• Public : le document est accessible et rendu visible par un certain
nombre d’éléments
Le fonctionnement du workflow est simple. Il suffit de sélectionner l’objet puis
de choisir l’onglet Etat. Cet onglet présentant l’état de l’objet, permet de choisir
une transition et ainsi de faire passer un objet d’un état à un autre.
Remarque :
Seules les transitions autorisées sont affichées comme le montre la figure 2.14 :
Mohamed OUALI 35 Projet de fin d’étude 2009/2010
Figure 2.14 : transitions autorisés
Ainsi, pour faire apparaître la transition Publish, il faut disposer du droit
Review Content.
Par ailleurs, le travail de validation est simplifié pour le modérateur. En effet,
lorsque ce dernier est connecté, il dispose d’une action nommée pending lui
permettant de sélectionner les objets en attente et de les modérer.
C. Les produits Plone :
Plone est un produit Zope extensible, c’est une maquette évoluée qu’on peut
étendre ses fonctionnalités et ses contenus grâce à l’ajout de nombreux produits.
Cependant, ces produits ne sont pas obligatoirement compatibles avec n’importe
quelle version de Plone. Pour cela, il est nécessaire, avant de se plonger dans
l’installation des produits, de bien lire les fichiers install.txt et Readme.txt.
C.1 AddonProducts :
Les produits complémentaires ou add­on products sont les produits qu'on peut
télécharger, installer et tester gratuitement (sous la licence GPL) comme:
­ Les produits qui peuvent être utilisés pour le traitement des photos,
création des galeries photo et l'observation de diaporamas de photos sur
les sites Plone : PloneSWFSlideshow, ATPhoto, FriendlyAlbum , etc.
­ Les produits Plone qui peuvent être utilisés pour créer son propre site de
partage vidéo et la manipulation du contenu vidéo sur lui comme
SevenVideo, ATVideo, etc.
­ Les produits Plone utilisés pour modifier l’apparence, ou le look, de son
site web Plone. Ces thèmes sont destinés à rendre le site unique et
spéciale: Lite Plone skin, Schools Plone Theme, etc.
­ Les produits Plone qui permettent de créer plusieurs versions d'un même
contenu ou de faire un changement à une copie de l'objet de publication,
tout en laissant intacte la version originale publiée : PVSForPlone,
CMFEditions, StagingAddOn, etc.
­ Les outils qui peuvent être utilisés pour créer son propre skin ou look pour
son site plone. Ils mettent en œuvre certaines fonctionnalités visuelles
spéciales, changer les couleurs ou des bordures de forme : DIYPloneStyle,
Plone Skin Dump , etc.
­ Les outils développés dans le cadre du projet CommunesPlone :
PloneMeeting, TeleServices, urban, CPEtatcivil, etc.
Mohamed OUALI 36 Projet de fin d’étude 2009/2010
C.2 Code source :
Le code source des produits développés dans le cadre du projet CommunesPlone
est contenu dans un outil de gestion des sources appelé SVN, diminutif de
SUBVERSION. Le SVN est accessible à l'adresse http://svn.communesplone.
org/svn/ . En utilisant un navigateur internet avec l'adresse susmentionnée, vous
pourrez visualiser les produits présents dans le projet ainsi que leur arborescence
mais vous ne pourrez pas télécharger globalement un produit.
Afin de copier localement un produit et son arborescence, il est nécessaire
d'utiliser un client subversion. Sous Linux, vous trouverez parmi tous les
packages disponibles, un package nommé "Subversion", à installer (# sudo
aptget install subversion).
Sur le svn, chaque produit est localisé sous l'adresse :
http://svn.communesplone.org/svn/communesplone/
Dans chaque produit, il y a un dossier :
 "trunk": qui correspond à la dernière version en cours de développement.
 "branches": qui correspond à des version particulières ou en cours de
développement.
 ''tags'' : contenant des versions stables bien définies.
Une fois le client installé, vous devez, dans une fenêtre "invite de commande",
vous positionner dans le répertoire Products de votre instance Plone. Pour
installer un outil on tape la commande suivante :
svn co http://le chemin de l’outil dans le serveur svn/ destination
Cette commande correspond au téléchargement du contenu de l'URL dans le
répertoire de destination qui sera créé. Pour mettre à jour par la suite un produit,
il est nécessaire de se positionner dans le répertoire du produit et de taper la
commande :
# sudo svn up
Une fois un produit copié sur le système de fichiers, on redémarre l'instance et
on se rendre dans le panneau de configuration pour installer le produit.
C.3 Installation d'un produit :
L'installation d'un outil se fait de manière classique via le panneau de
configuration de Plone.
En sélectionnant Ajout/Suppression de produit dans le menu du panneau de
configuration (configuration du site Ajout/Suppression), un écran présente les
produits que l'on peut installer et les produits qui le sont déjà.
Mohamed OUALI 37 Projet de fin d’étude 2009/2010
Figure 2.15 : Ajout/suppression des programmes
Il suffit dès lors de cocher la case se trouvant à côté du nom du produit et de
cliquer sur le bouton "Installer".
D. L’architecture de Plone :
D.1 Les outils :
CMF a introduit le concept des outils. Il en fournit d’ailleurs un grand nombre.
Plone s’appuie sur ces outils et introduit quelques nouveaux outils pour
simplifier certains concepts. Par ailleurs, il est à noter qu’il existe d’autres
produits offrant de nouveaux outils et que la figure ci­dessous ne montre pas
tous les outils :
Mohamed OUALI 38 Projet de fin d’étude 2009/2010
Figure 2.16 : outils Plone
­ MailHost :
Est un formulaire permettant de configurer le SMTP qui va être utilisé pour
envoyer les emails lors des oublis de mots de passe par exemple.
- Members :
Dossier où chaque utilisateur aura son espace personnel *** (si autorisé voir
dans la suite du document pour plus d’informations sur la configuration de
Plone)
­ acl_users (User Folder) :
Dossier contenant la liste des utilisateurs du portail. On ajoute un utilisateur en
cliquant sur "Add" on doit alors entrer son nom d’utilisateur (sans espace) son
mot de passe et la confirmation de ce dernier.
­ portal_actions (Contains custom tabs and buttons) :
Les actions qu’on trouve ici sont celles qui sont appelées par le header des
pages :
­ portal_calendar (Controls how Events are shown) :
L’onglet intéressant dans cette partie est "Configure". On va pouvoir définir quel
type d’objet sera visible dans le calendrier. Pour qu’un type soit vu dans le
calendrier (en plus de configurer cet onglet) il faudra remplir les champs début
(date de publication) et fin (date d’expiration) de chaque objet que l’on veut voir
dans le calendrier. On va aussi choisir si on veut utiliser **** les sessions pour
se rappeler des états du calendrier.
Mohamed OUALI 39 Projet de fin d’étude 2009/2010
- portal_catalog (Indexes all content in the site) :
Cette partie d’un Site Plone est très utile pour connaître le contenu du site.
- L’onglet Contents :
Ce dossier contient un objet appelé "Vocabulary" qui est en fait le recensement
de tous les mots, numéros... écrits dans les pages du site.
- L’onglet Catalog :
Cet onglet permet de gérer les items du catalogue du site. En cliquant sur un des
items de type /id_du_portail/x/... on obtient une page de renseignements très
complets sur cet objet du portail.
Ces informations renseignent entre autres sur : le metatype, les dates de création,
de parution, d’expiration, le créateur, l’id de l’objet, l’état, la description, le
type, le titre, les allowedRolesAndUsers ...
- L’onglet Properties :
Donne la valeur de title pour l’objet portal_catalog.
- L’onglet Indexes :
Il présente le résultat de l’indexation, suivant des types par exemple :
– les FieldIndex donc les champs (pour le type, les dates d’expiration, de
création...),
– les mots clés (KeyWordIndex),
– les textes (TextIndex) pour les descriptions ...
- L’onglet Metadata :
Contient les types de données qui vont être cataloguées (vus dans l’onglet
Indexes).
- L’onglet Find Objects :
Permet de trouver des objets et / ou bien de cataloguer des types d’objets suivant
des champs correspondant aux types, ids, contenus, droits, permissions...
- L’onglet Advanced :
Permet la gestion du catalogue en le mettant à jour (réindexation) le nettoyer
pour le recréer ensuite.
Une partie de cet onglet permet aussi de gérer les "subtransactions". Cela
entraine une réduction de la demande en mémoire du catalogue, au détriment de
la rapidité de recherche.
- L’onglet Undo :
Annuler des transactions (les défaire)
- L’onglet Security :
La sécurité sur l’objet portal_catalog
- L’onglet Ownership :
L’appartenance de l’objet portal_catalog.
- L’onglet Actions :
Si l’on veut ajouter des actions possibles correspondant à cet objet
portal_catalog.
Mohamed OUALI 40 Projet de fin d’étude 2009/2010
­ portal_memberdata (Handles the available properties on
Members) :
Permet de gérer des données sur chaque utilisateur, rajouter des actions de
gestion de membres ...
­ portal_membership :
- L’onglet Configuration :
La partie haute de cet onglet concerne les rôles des membres du portail
(manager, reviewer...).
La partie basse de cet onglet va autoriser ou non la création lors de l’ajout d’un
utilisateur d’un espace réservé à cet utilisateur.
- L’onglet Actions :
La catégorie de ces actions est "user", c’est à dire qu’elles ne concernent qu’un
utilisateur authentifié.
- portal_migration :
Cet outil sert lorsqu’une nouvelle version de Plone sort. Le reste du temps on a
le message que notre objet Plone site est up to date. La procédure en cas de
nouvelle version de Plone, est d’extraire de l’archive la nouvelle version.
D’arrêter Zope, puis de copier le contenu de CMFPlone­Version, sauf Active
Pack si on a un Zope de type 2.6.x, dans
chemin_de_Zope/lib/python/Products (afin de remplacer les anciens scripts)
et ensuite d’aller dans portail fait sous l’ancienne version de Plone, de se rendre
dans portal_migration qui dit cette fois que le portail est out of date et il faudrait
cliquer sur upgrader.
Remarque : la réussite de la migration dépend aussi de la compatibilité des
produits installés avec la nouvelle version de Plone.
­ portal_registration (Handles registration of new users) :
Dans cette section on a une seule action par défaut : autoriser ou non
l’inscription de nouveaux utilisateurs au portail. Cocher ou décocher la case à
gauche de l’interrogation "Visible ?" permet à cette action d’être réalisée dans le
portail.
­ portal_skins (Control skin behaviour (search order etc) :
Les dossiers de portal_skins sont :
- Images :
Ce dossier contient les images de Zope (Le logo de Zope que l’on voit dans la
ZMI par exemple).
- Content :
Mohamed OUALI 41 Projet de fin d’étude 2009/2010
Dans ce dossier on trouve les scripts d’édition dont les noms sont du type
"métatype_edit" et des dtml­method pour l’affichage, l’édition des métatypes
dans un objet de type CMF Site.
- control :
Ce dossier contient les scripts et quelques dtml­method correspondant aux
actions (folder_cut par exemple) réalisables sur les objets d’un site de type CMF
Site.
- custom :
Ce dossier est spécial. C’est le seul dossier de portal_skins (en dehors de la
racine de portal_skins ) où l’on possède le droit d’écriture.
C’est donc le seul endroit où l’on va pouvoir créer des objets images, des
dossiers, des ZPT (Zope Page Templates), etc. Ce dossier est spécial aussi car
pour modifier (customiser / personnaliser) un objet (ZPT, dtmlmethod...)
existant, on va ouvrir l’objet à modifier et l’interface de Plone va proposer un
bouton appelé customize. A la gauche de ce bouton se trouve une liste déroulant
qui permet de choisir l’endroit où va être copié l’objet à modifier. Par défaut
cette destination est le répertoire custom. Si l’on crée d’autres répertoires dans
custom alors on pourra les choisir comme destination de la copie de l’objet.
Ainsi on comprend que pour que la modification d’un objet prenne effet, le
dossier custom sera lu avant les autres répertoires de portal_skins.
- generic :
On va trouver dans ce dossier les formulaires (d’édition, d’ajout, des
métadonnées) ainsi que les RSS d’un objet de type CMF Site.
- no_css :
Ce dossier ne contient qu’un objet stylesheet_properties qui doit correspondre à
la version imprimable des pages.
- nouvelle :
Ce dossier contient deux objets, l’un intitulé nouvelle_stylesheet et l’autre
stylesheet_properties. Ils correspondent à des feuilles de styles.**** Les feuilles
de styles seront détaillées dans le chapitre "Design du site" dans la section X.2
intitulée "les css". ***.
- plone_3rdParty :
Contient des objets de type Filesystem Directory View correspondant à des
produits Zope intégrables dans un Plone site (CMFCalendar, CMFCollector,
CMFTopic, CMFWeblog, CMFWiki, ratings).
- plone_content :
Dans ce dossier on trouve les ZopePageTemplates correspondant à l’affichage
des objets des différents métatypes ainsi que les métatype_edit_form
- plone_ecmascript :
Les scripts javascripts : plone_formtooltips.jp et plone_javascripts.js.
- plone_forms :
Mohamed OUALI 42 Projet de fin d’étude 2009/2010
Dans ce dossier on trouve les ZopePageTemplates d’affichage des objets des
différents métatypes ainsi que les actions_form. Par exemple, personalize_form
ou bien member_search_form ou encore login_form ... On va aussi trouver un
script appelé logged_in (permet le login d’un utilisateur avec
getAuthenticatedMember)
- plone_images :
On va y trouver les objets images : le logo de plone, les metatype_icons ...
Toujours la même chose, pour les personnaliser : les ouvrir, cliquer sur
Customize (l’objet est alors copié dans le dossier custom, on nous propose
d’entrer un titre, de parcourir le contenu d’un disque et d’uploader l’image que
l’on souhaite avoir en remplacement).
- plone_scripts :
Comme son nom l’indique ce dossier contient des scripts python tels que la
réalisation d’actions concernant les objets du Plone Site (folder_delete) ainsi que
des scripts pour le classement des objets (filter et sort), la création des objets
(createObject), la fonction Undo pour l’annulation des modifications
effectuées...Ce dossier contient aussi le dossier form_scripts qui lui contient les
scripts de validation d’un formulaire d’édition/création d’un objet tel que le
validate_id et les scripts servant à l’édition d’un métatype en particulier.
- plone_styles :
Contient un stylesheet_properties, plonePrint.css, plonePresentation.css,
plone.css, ploneNS4.css et des dossiers contenant les mêmes feuilles de styles
ainsi que des images de navigation (user, bullet...) sur un autre thème que celui
par défaut.
- plone_templates :
On retrouve entre autres le footer et le header de toutes les pages dans ce
répertoire.
Dans le header on trouve :
– appel de la skin du site
– la searchBox
– le logo du site
– les portal_tabs
– les actions de la personnalBar
– le chemin de la page en cours
Dans le footer on trouve des références à Plone, et un logo plone_powered. Dans
ce répertoire, on va aussi avoir les ZopePageTemplates (ZPT) correspondant à
" main_template ", " folder_contents ", etc.
Ce dossier contient aussi un dossier qui contient les ZopePageTemplates des
slots (carrés situés à gauche et à droite du centre de l’affichage du site Plone)
tels que news_slot qui va afficher les 5 derniers titres des 5 dernières news
comme des liens cliquables. On y trouve aussi un script python
Mohamed OUALI 43 Projet de fin d’étude 2009/2010
"navigation_tree_builder" qui va construire le slot navigation_tree en fonction
de ce qui a été configuré dans le dossier portal_properties dans l’espace
navtree_properties.
- plone_wysiwyg :
Il contient wysiwyg_popup et wysiwyg_support.
- topic :
Ce dossier contient les scripts, ZPT et les dtml­method correspondant à l’ajout,
affichage des commentaires (affichés si autorisés).
- zpt_calendar :
La version du dossier "calendar" mais il est réalisé avec des ZPT et des scripts
python.
- zpt_content :
La version du dossier content mais il est réalisé avec des ZPT et des scripts
python.
- zpt_control :
La version du dossier control mais il est réalisé avec des ZPT et des scripts
python.
- zpt_forum :
Apparait si on a ajouté le produit CMFForum, on y trouve les ZPT et scripts
python corespondants.
- zpt_generic :
La version du dossier generic mais il est réalisé avec des ZPT et des scripts
python.
­ portal_undo (Defines actions and functionality related to undo) :
Cette partie du Plone Site est utilisée pour défaire les actions réalisées. Dans le
premier onglet "Actions" deux actions sont proposées : liste des changements ou
bien une annulation rapide de la dernière modification. L’onglet Undo liste
toutes les modifications depuis la création du portail.
­ portal_workflow (Contains workflow definitions for your portal) :
Cette partie du Site Plone contient les actions correspondant à l’action de
relecture puis validation des contenus ...
La plus grande partie du workflow intégrée à Plone est déjà paramétrée.
Mohamed OUALI 44 Projet de fin d’étude 2009/2010
Chapitre III : LE PROJET PLONEGOV
Ce chapitre est une présentation générale du projet PloneGov. Il
est divisé comme suit :
 Présentation et objectifs du projet
 Historique du projet
 Le choix de l’open source
 Un projet au cœur de l’Europe
 Aspects techniques
 Sites web
 Applications métiers
Mohamed OUALI 45 Projet de fin d’étude 2009/2010
III.1. PRESENTATION & OBJECTIFS DU PROJET:
L’Union européenne compte plus de 100.000 villes et communes dont la
plupart n’ont ni les ressources budgétaires ni les ressources en terme de
compétences pour mettre en place un projet d’e­government. Toutes pourtant
sont confrontées aux mêmes types de besoins, aux mêmes difficultés. C’est ce
constat qui est à la base du projet PloneGov, un projet qui s’étend déjà au­delà
des frontières de l’Union européenne elle­même.
Le projet PloneGov a pour objectif le développement d'applications
informatiques par et pour les collectivités locales. Ce projet offre la possibilité
aux villes et communes mais également à tous les autres niveaux de pouvoirs
publics, par la mutualisation de leurs moyens humains et matériels, de retrouver
une plus grande indépendance technologique et de construire des outils
véritablement adaptés à leurs besoins.
Le nombre de partenaires impliqués dans le projet PloneGov ne cesse de
s’agrandir. Il touche aujourd’hui plus de 100 collectivités. Tirant sa force de son
ouverture, PloneGov a tissé des liens de coopération et de mutualisation avec
des collectivités locales issues de nombreux pays mais aussi avec des PME
actives dans la communauté en Europe, en Afrique et en Amérique latine.
Aujourd'hui, de nombreuses applications métiers et web ont été finalisées ou
sont en cours de finalisation par les différents partenaires. Grâce à PloneGov,
même les plus petites collectivités territoriales sont à même de réduire leurs
coûts de fonctionnement, d’améliorer leurs méthodes de travail et leur efficacité
et de profiter des avancées de l’e­government en sautant la facture numérique.
III.2. HISTORIQUE DU PROJET :
Parti de deux villes, Seneffe et Sambreville, le projet CommunesPlone a
connu un agrandissement rapide jusqu’à toucher aujourd’hui plus de 80 villes et
communes en Belgique et en France, un gouvernement régional et de
nombreuses PME. Plusieurs autres villes, dans différents pays, sont en phase
d’évaluation pour intégrer le projet d’ici peu. Le projet reste très dynamique en
Wallonie où atteint déjà plus de 30% des collectivités. Le nombre de modules
développés ne cessent de croître et touche des domaines aussi variés que la
gestion des conseils municipaux, l’authentification par eID, le site communal clé
sur porte, le module de co­marquage avec la Région wallonne, les services en
ligne, etc.
Grâce à l’organisation d’un workshop les 31 mai et 01 juin 07, CommunesPlone
a commencé à mutualiser ses développements avec les deux principaux projets
d’e­government européens basés sur Plone, UdalPlone et Plonegov.ch. Ces
trois projets se dirigent désormais vers un seul, PloneGov. Ce dernier touche, en
2007, 65 municipalités belges, 20 françaises, 18 espagnoles, 2 suisses dont la
Mohamed OUALI 46 Projet de fin d’étude 2009/2010
capitale fédérale, Berne, 1 Argentine et 1 américaine ainsi que les
gouvernements de la Région Wallonne et de la Communauté française
Wallonie­Bruxelles.
Le succès du projet CommunesPlone est le résultat d'une étroite collaboration
entre des collectivités territoriales belges et françaises, la communauté Open
Source Plone et Zea
Partners, un réseau international de PME.
Copiant son organisation sur celle des grands projets open source,
CommunesPlone est une véritable communauté où toutes les propositions de
collaborations sont les bienvenues. Toutes les collectivités sont donc invitées à
participer à ce projet dont la structure est extrêmement décentralisée.
CommunesPlone est également ouvert à la collaboration avec d’autres projets
comme UdalPlone et PloneGov.ch.
Un facteur essentiel du succès réside également dans la similarité des besoins
entre les acteurs cibles du projet. La plupart des collectivités font en effet face à
des besoins extrêmement semblables et les résoudre chacun de son coté peut
paraître complètement absurde.
III.3 LE CHOIX DE L’OPEN SOURCE :
Une bonne compréhension du modèle de développement open source et
des facteurs qui génèrent la valeur ajoutée sont nécessaires pour structurer un
projet tout en tenant compte de son potentiel économique.
Selon le responsable informatique de sambreville (Joël Lambillotte), le choix a
été fait après l’évaluation du marché des solutions propriétaires et open source :
les coûts étaient prohibitifs côté ‘propriétaire’, alors que, côté ‘open source’, les
coûts étaient intéressants et le CMS Plone a satisfait à tous les tests d’intégration
et réussi à séduire plusieurs communes.
Définition :
Un logiciel open source est un logiciel qui donne à toute personne qui en
possède une copie le droit de l'utiliser, de l'étudier, de le modifier et de le
redistribuer.
la valeur ajoutée des projets open source :
­ Mutualisation des développements et réutilisation de développements
existants :
Une bonne connaissance des développements en cours permet d’éviter de
réinventer la roue. Cette coordination technique permet dans de nombreux
cas de réutiliser l’équivalent d’années de développement, réduit les coûts et
accélère la production de résultats.
Mohamed OUALI 47 Projet de fin d’étude 2009/2010
­ Mise en commun des ressources humaines :
Par l’échange de savoir faire, formation réciproque et complémentarité des
compétences. Augmenter le potentiel humain demande la réalisation
régulière d’activités collectives visant à échanger le savoir faire et ouvrir
l’expérience aux nouveaux participants.
­ Qualité de l’intégration :
Une intégration de qualité et générique demande une connaissance en
profondeur des logiciels. Réaliser une bonne intégration prend du temps et
demandes de l’expertise de haut niveau. Cet investissement est rentable car il
réduit la quantité de code non générique à maintenir et facilite les migrations
du logiciel.
­ Ouverture à la collaboration internationale et facteur d’échelle :
De nombreux pouvoirs locaux ont des besoins très similaires. La
collaboration avec d’autres régions ouvre un potentiel d’économie d’échelle
important et la possibilité d’accéder à des financements. Développer un
projet demande d’apporter un soin particulier à la communication et à la
circulation d’une information de qualité.
­ Participer activement à une Communauté est un investissement
rentable :
Le rapport Flossimpact (impact économique des logiciels libres en Europe ­
www.flossimpact.eu) met en évidence que la participation active à une
communauté open source apporte un avantage compétitif aux personnes et
organisations impliquées. Cette valeur ajoutée est bénéfique autant pour les
PME offrant des services basés sur le code que pour les utilisateurs en
réduisant leurs coûts de développement et maintenance
III.4 UN PROJET AU CŒUR DE L’EUROPE :
Le projet PloneGov s’inscrit à plusieurs titres parmi les objectifs
stratégiques de l’Union européenne en matière d’e­government défini par l’i
2010 (société européenne de l'information pour 2010) initiatives. A ce titre, il
apporte les avantages de l’économie immatérielle aux petites collectivités qui
n’auraient pas pu y prétendre auparavant en l’absence de moyens humains et
financiers suffisant :
 Ne laisser aucun citoyen a l’arrière :
o 100.000 villes et régions : L’Union européenne représente un
gigantesque ensemble de près de 500 millions d’habitants
Mohamed OUALI 48 Projet de fin d’étude 2009/2010
regroupés en 100.000 villes et régions. CommunesPlone est un des
rares projets qui s’adresse prioritairement à ces petites collectivités
territoriales et qui leur offre la possibilité de rentrer de plain­pied
dans l’ère numérique, d’y apporter les bienfaits, notamment
économiques, de l’e­gov. En 2008, plus de 25% des communes
wallonnes auront déjà adhéré au projet.
o e-inclusion : Le projet est susceptible, par son implication auprès
des collectivités territoriales, connues pour leur proximité avec les
citoyens, de renforcer de façon significative l’e­inclusion2.
 Faire de l’efficacité des services publics une réalité :
o Efficacité : Grâce à CommunesPlone, les petites collectivités
territoriales sont à même de réduire leurs coûts de fonctionnement,
d’améliorer leurs méthodes de travail et leur efficacité.
o Adaptabilité : La structure technique de Zope et Plone sur lesquels
sont basés CommunesPlone permet l’adjonction constante de
nouveaux modules interconnectables et interchangeables. Cette
flexibilité fournit au projet une adaptabilité hors­norme et une
assurance d’être constamment apte à s’adapter aux nouvelles
conditions d’évolution technique.
 Réunir les partenaires-clé :
o Partenaire des PME : CommunesPlone est un projet qui est mené
par et pour les collectivités territoriales. Leurs partenaires naturels
sont les petites PME locales qui disposent d’équipes et de méthodes
de travail semblables aux leurs. Le projet implique dès lors de
nombreuses PME dans plus d’une dizaine d’états en Europe mais
aussi dans des pays tiers et notamment ACP. En cela,
CommunesPlone favorise l’emploi local.
o Partenaire des communautés open source : Les développeurs de
collectivités territoriales impliquées dans le projet CommunesPlone
sont en étroite interaction avec les communautés open source. Cette
interaction est un important facteur d’innovation, d’efficacité et de
dissémination.
o International : CommunesPlone est un projet ouvert à la
collaboration internationale qui, par essence, transcende les
frontières :
 Les partenaires initiaux ont tout intérêt à ce que le projet
acquière une dimension internationale et s’enrichisse des
expériences de chacun. En effet, plus les contributeurs seront
nombreux, plus grand sera le retour sur investissement qu’ils
pourront espérer.
Mohamed OUALI 49 Projet de fin d’étude 2009/2010
 Rien ne s’oppose à cette internationalisation. En effet, le
mode de fonctionnement des collectivités territoriales, au
contraire de celui des états, ne diffère pas fondamentalement
d’un pays à l’autre.
 Les techniciens du projet ont tout intérêt à se tenir au courant
de ce qu’il se passe au­delà de leurs frontières. En effet,
divers développements menés par d’autres projets peuvent
très certainement être réutilisés mais cela implique de
pouvoir passer les frontières physiques et psychologiques
afin d’aller à la rencontre de ces autres projets. Cette
opportunité, les techniciens de CommunesPlone l’ont bien
comprise.
o Logique de « bottom up » : CommunesPlone dépasse les
frontières mais passe également au­delà des hiérarchies qui divisent
généralement les différents niveaux de pouvoirs. Rien ne s’oppose
à ce que le projet qui est aujourd’hui principalement destiné aux
petites collectivités territoriales ne s’étendent à d’autres niveaux de
pouvoirs. Des gouvernements régionaux et leurs parlements, des
provinces ont ainsi contacté les gestionnaires du projet pour évaluer
la faisabilité d’adapter certaines applications à leurs propres
services.
 Renforcer la démocratie participative et représentative :
o Démocratie participative : Les outils fournis par
CommunesPlone permettent aux collectivités de favoriser sur leur
territoire une culture de démocratie participative saine et durable
par le biais de l’e-democracy. En effet, elles sont désormais à
même de diffuser intégralement et en direct les séances du conseil
communal, les procès­verbaux des différents réunions, les ordres du
jour, de lancer des forums accessibles à la population, d’assurer la
promotion des conseils consultatifs, etc. Internet reste et restera un
lien essentiel entre une collectivité et ses citoyens.
o Fracture numérique : Le projet CommunesPlone s’engage dans
la lutte contre la fracture numérique en Europe et au­delà :
 Le projet CommunesPlone offre la possibilité aux multiples
commerces, entreprises, écoles, associations, etc., situés sur
le territoire des collectivités participantes de disposer d’une
page web regroupées sous une URL commune.
L’infrastructure technique permet en effet de créer sans
aucune compétence technique particulière une nouvelle page,
de la mettre à jour en y ajoutant textes et images, d’y tenir un
agenda, etc. afin de combattre directement la fracture
Mohamed OUALI 50 Projet de fin d’étude 2009/2010
numérique et de favoriser la promotion et l’activité de la vie
économique et associative locale.
 Par l’intermédiaire des coopérations nord­sud établies par les
villes et régions, CommunesPlone dispose de la possibilité
de combattre la fracture numérique qui risque de renforcer
encore les inégalités économiques séparant les sociétés
industrialisées des économies émergentes. L’infrastructure
développée par CommunesPlone peut en effet être adaptée
et installée au profit des collectivités de ces pays sans aucuns
frais de licence.
 Mettre en place des outils stratégiques a haut impact :
o Carte d’identité électronique : CommunesPlone prend en
compte les notions d’e­privacy et d’e­security. Dès l’origine du
projet, ses techniciens ont intégré les fonctionnalités offertes par les
nouvelles cartes d’identité électroniques belges. L’e­ID permet de
sécuriser totalement les connections mais aussi les données
personnelles qui pourraient être récoltées sur les utilisateurs. L’e­ID
permet un usage éthique de l’Internet en matière de respect de la
vie privée.
III.5 ASPECTS TECHNIQUES :
Le projet CommunesPlone est construit sur un vaste logiciel, Plone. Il s’agit
d’un projet centré sur la création d’un des meilleurs CMS open source et mettant
l’accent sur l’aspect démocratique (égalité des chances, méritocratie), sur le
style (attractivité, facilité d’utilisation), sur l’adaptabilité (personnalisation de
types de contenus, possibilité d’ajout de nombreux modules). D’un point de vue
organisationnel, Plone a une forte expérience dans la consultance
professionnelle; nombre de ses développeurs travaillant pour des petites
entreprises d’intégration.
Plone est à 100 % open source. Tous les éléments qui rentrent dans sa
construction sont entièrement libres et compatibles avec la licence GPL. Le
langage de programmation python est généralement reconnu comme un des
environnements les plus productifs et les plus professionnels pour les
organisations importantes. Cela fait déjà 9 années que Zope mène le marché des
serveurs d’application open source avec la reconnaissance de nombreux **
awards **. Plone s’est implanté quant à lui comme étant le CMS open source
leader et comme l’un des produits, open source ou commercial, parmi les plus
solides.
5.1 Site web :
Mohamed OUALI 51 Projet de fin d’étude 2009/2010
Le CMS Plone permet de mettre en ligne un site Internet communal avec
toutes les fonctionnalités attendues (gestion décentralisée des pages, gestion des
photos, outil de sondage, outil de géo localisation, forum, téléchargement de
fichiers, moteur de recherche,…).
Toutefois, un site Plone ne répond pas nécessairement aux attentes que l’on
pourrait avoir pour un site communal tant d’un point de vue graphique que du
point de vue de la navigation.
Pour permettre à des communes qui découvrent cette technologie de mettre le
pied à l’étrier rapidement, Communesplone a conçu un produit site Internet,
dénommé CPSkin, orienté site communal. Le produit comprend une interface
qui permet de modifier plusieurs propriétés du site (couleur, images). Il
comprend une navigation ainsi qu’un graphisme par thème. Une refonte du
header du site pour afficher le logo à gauche ainsi qu’un banner illustrant la
partie consultée à droite. Le banner peut ainsi changer en fonction des pages
consultées.
Plusieurs communes utilisent actuellement ce produit grâce auquel un site
communal de qualité peut ainsi être mis en ligne en quelques semaines.
Remarque : le produit, site communal, compatible avec Plone2.X est CPSkin2
alors que pour Plone 3, CommunesPlone a développé un produit beaucoup plus
évolué dénommé CPSkin3. Les figures ci­dessous donnent une idée sur le
résultat de l’utilisation de ces deux produits :
Figure 3.4 : site Plon avec CPSkin2
Mohamed OUALI 52 Projet de fin d’étude 2009/2010
Figure 3.5 : site Plone avec CPSkin3
5.2 Applications métiers :
CommunesPlone vise à adapter Plone aux besoins spécifiques des communes.
Différents modules ont été développés à cet égard comme :
 Le guichet virtuel du citoyen :
Le produit TeleServices permet au citoyen d'effectuer des demandes en ligne à
son administration et permet à l'agent communal de gérer ces demandes.
L'application peut être utilisée suivant plusieurs profils d'utilisateurs :
­ le citoyen non connecté, qui peut visualiser une liste des documents ou
procédures;
­ le citoyen connecté, qui peut effectuer en ligne de nouvelles demandes et co
nsulter leur suivi ;
­ le rôle d'agent communal, qui permet de traiter les demandes ;
Le principe général est le suivant :
­ Dans un premier temps, le citoyen peut accéder à une liste des documents
ou procédures disponibles dans les différents services de l'administration
communale. Cette liste précise pour chaque demande les modalités
d'obtention.
­ Pour effectuer une demande en ligne, le citoyen doit préalablement
s'inscrire en complétant ses données personnelles (dont son numéro de
registre national qui servira de clé unique pour la connexion par carte
d'identité électronique). Cette inscription ne doit être effectuée qu'une
seule fois.
­ Une fois inscrit, le citoyen peut se connecter soit au moyen d'un
identifiant/mot de passe soit au moyen de sa carte d'identité électronique.
Mohamed OUALI 53 Projet de fin d’étude 2009/2010
­ Après s'être connecté, le citoyen peut effectuer de nouvelles demandes à
différents services de la commune mais aussi consulter le suivi des
demandes déjà introduites. Au cours de son traitement, une demande
change en effet de statut suivant les étapes de traitement effectuées.
­ De son côté, l'agent communal responsable du traitement des demandes de
son service consulte les nouvelles demandes ou les demandes en cours qui
nécessitent un traitement.
­ L'agent au cours du traitement de la demande change son statut suivant les
actions qu'il effectue. Il indique par exemple que la demande est en cours
de traitement, que la demande est finalisée, que la demande est rejetée, ...
­ Suivant les options choisies par le citoyen, ce dernier sera prévenu du bon
traitement de sa demande.
L'intérêt de l'outil est qu'il est possible de le configurer entièrement à travers une
interface graphique. Il est donc possible de définir ses propres demandes, avec
leurs propres paramètres comme les motifs associées, les modes de réception, le
prix, etc...
Figure 6.3 : l’outil TeleServices
 La gestion des permis d'urbanisme :
Ce produit dénommé "urban" est un permet de gérer les permis d'urbanisme
(bâtir, lotir, notaire, ...) et intègre une fonctionnalité avancée de cartographie.
Il permet à une commune de gérer ses permis d'urbanisme comme par exemple :
­ les permis de bâtir (urbanisme)
Mohamed OUALI 54 Projet de fin d’étude 2009/2010
­ les permis de lotir
­ les lettres aux notaires environnement
­ ...
En plus, l'outil intègre des fonctionnalités cartographiques qui permettent :
­ d'obtenir des informations précises (parcelles concernées, rayon de 50m,
infos sur les propriétaires d'une parcelle, ...)
­ de lier des recherches de parcelles à une visualisation cartographique
­ ...
Remarque : "urban" est un produit Plone 3 qui nécessite donc l'installation
d'une instance Plone 3 et de quelques dépendances.
 Gestion des délibérations :
Ce produit, dénommé "PloneMeeting", est traité dans le cinquième chapitre.
 Autres applications :
Applications Objectifs
Conteneur d'application – Application
container
Ce produit est destiné à adapter une
instance Plone standard dans le but de
simplifier l'interface utilisateur et de
paramétrer cette instance pour y
accueillir des applications
(Teleservices, College, ...)
Co­marquage – Cobranding Afficher sur un site un contenu émis
par le Portail de la Région Wallonne
BelgianEid AuthPlugin ****
Donner la possibilité aux membres
d'un site Plone (et même Zope) de
s'identifier à l'aide de la carte d'identité
électronique
Gestion des amendes administratives
(en cours de développement) – Fine
management system
Gestion des Sanctions Administratives
Communales
Python Open Document (POD)
POD est une bibliothèque qui permet
de générer facilement des documents
dont le contenu est dynamique.
Mohamed OUALI 55 Projet de fin d’étude 2009/2010
Le projet PloneGov, extension internationale de CommunesPlone, est un
projet très puissant conçu pour aider les communes en répondant à leur besoins
informatique. Il a remporté plusieurs "awards" (voir annexe 3.1) et a reçu le
label "Good Epractice" de la Commission européenne en novembre 2007.
Chapitre IV : REALISATION DU SITE COMMUNAL
Ce chapitre résume les points importants ainsi que la démarche
suivie pour la réalisation du site web communal.
Mohamed OUALI 56 Projet de fin d’étude 2009/2010
IV.1 SITE COMMUNAL :
1.1 Obstacles :
Les petites et moyennes communes sous­estiment souvent la quantité et la
qualité des informations qu’elles pourraient publier sur Internet. La pluparts
entre elles s’interrogent encore sur la validité et la faisabilité d’un site internet
pour une commune :
­ Internet, pour nous (les communes), ça ne servira à rien :
Cela a été entendu, mais de moins en moins souvent maintenant car le
"retard" marocain en matière d'équipement informatique et Internet est
en train d'être comblé, suite à l'action des différents gouvernements.
­ La commune n'a pas grand chose à publier : au contraire chaque
commune a quelque chose d’unique à publier et la quantité d'informations
qui peuvent être publiées dans un site Internet d'un village ou d'une ville
sont quasiment sans limites.
­ La commune est déjà présente sur un site : C'est bien, mais est­ce
vraiment suffisant ?
­ Il y a d'autres priorités : Le site Internet a peu de raisons d'être le projet
prioritaire de la commune. Autant en termes d'investissement que d'efforts
et de temps à y consacrer, les municipalités ont déjà suffisamment à faire.
Mais, cela ne signifie pas qu'il n'y ait pas de place en même temps pour un
projet peu couteux, avec des solutions open source, dans le domaine de la
communication avec et pour les administrés.
­ C'est trop compliqué : En effet, il y a des choses à apprendre, mais les
nouvelles techniques de création de sites (les CMS) permettent à des non­
spécialistes de s'initier rapidement à l'essentiel: la publication du contenu.
­ C'est trop cher : avec les outils open source c’est toujours beaucoup
moins couteux.
­ On fera un petit site de type personnel : C'est une solution qui trouve
rapidement ses limites car la principale difficulté vient du fait qu'il est
difficile, voire même impossible, de se partager le travail (les créations et
les mises à jour) et donc le risque est de se retrouver avec un site statique
qui aura certes la valeur d'un annuaire papier, mais avec peu de mises à
jour, et peu d'informations sur les actualités et évènements récents.
­ …
1.2 Objectifs d’un projet site communal :
Mohamed OUALI 57 Projet de fin d’étude 2009/2010
Actuellement, plusieurs communes ne sont pas convaincues de l’utilité et de la
nécessité d’un site web communal et par conséquent elles sont absentes sur
Internet. Cependant, plusieurs bonnes raisons les invitent à mettre en place leur
site internet :
­ La vitrine de votre commune sur Internet : Publier sur Internet, pour
une commune et ses habitants c'est partager l'information et montrer qu'on
existe pour les habitants, pour ses voisins, et aussi pour le reste du monde.
­ Un rôle de Service (un moyen d'information) :
o Pour faire connaître la ville aux nouveaux et futurs habitants ;
o garder un contact avec les anciens habitants ;
o Mettre en valeur l’histoire, la géographie, l’environnement, la
culture, toutes les particularités souvent méconnues, ainsi que le ou
les grands projets de la municipalité ;
o Portail de renseignements (Santé, Transport, Tourisme, …) ;
­ Pour mettre en commun les informations de référence :
Figure 4.1 : les échanges du site communal
Mises à disposition s:
• par et pour la municipalité,
• par et pour les associations, les acteurs économiques,
• pour les résidents (et éventuellement par les résidents)
• pour les visiteurs de passage ou de séjour, touristes et affaires
• pour les visiteurs du site Internet, cherchant des informations sur la
commune.
­ Moyen de communication :
Mohamed OUALI 58 Projet de fin d’étude 2009/2010
Un site communal peut contribuer à rapprocher les élus et les citoyens, les
écoles, les associations, tout ce qui concerne la vie de la commune. Il peut
devenir le « portail » de référence pour toutes les informations, animations
et évènements concernant la commune et ainsi faciliter la vie quotidienne
en donnant une visibilité aux associations, aux entreprises, aux artisans et
aux commerçants jusqu'à la possibilité de tenir à jour les informations les
concernant. En plus, il peut jouer le rôle d’un moyen pour faire participer
les habitants de la commune à un nouveau projet.
­ Pour l'activité municipale :
Une partie du site peut être réservée aux élus pour communiquer
facilement via Internet, en complément des courriels et des forums ou
d’autres applications administratives.
III.2 ANALYSE ET CAHIER DE CHARGE :
2.1 Analyse de l’existant :
Avant de me lancer dans la conception du site communal, il était nécessaire,
voire même indispensable, de faire une étude de l’existant afin de proposer, à
cause de l’absence du client, un cahier de charge pour la démo site communal.
L’absence du site communal, voire même la notion du site pour une commune, à
cause des interrogations citées ci­dessus et d’autres contraintes, m’a obligé
d’analyser les sites des arrondissements, les portails des grandes
villes marocaines et les sites communaux entrants dans le cadre du projet
CommunesPlone:
 Exemples de sites analysés :
 Portail de la ville de Casablanca :
Le portail de casa est le site officiel de la ville de Casablanca. Les
informations, concernant les démarches en ligne, présentées dans notre
site communal dans le thème "renseignements" sont prises de ce site.
Mohamed OUALI 59 Projet de fin d’étude 2009/2010
Figure 4.2 : Portail officiel de la ville de Casablanca
 Portail de la ville de Fès :
Figure 4.3 : Portail de la ville de Fès
 Portail de la ville d’Ifrane :
Mohamed OUALI 60 Projet de fin d’étude 2009/2010
Figure 4.4 : Portail d’Ifrane
Après l’analyse de ces portails j’ai constaté que ces derniers contiennent une
quantité très importante d’informations mais :
­ Pas de système de géolocalisation : pour permettre aux habitants, aux
touristes et autres de localiser des lieux (des pharmacies de garde, gares
de train, etc.)
­ Difficulté de trouver l’information : la navigation n’est pas bien organisée
(sous forme de thèmes qui contient des sections) et par conséquence
l’internaute est soumis au par hasard dans ses recherches.
­ Le contenu de site n’est pas indexé : l’absence d’un moteur de recherche
sur le site rend la recherche très difficile.
­ Manque d’informations : impossible de mettre tout sur un seul portail.
D’où, la nécessité d’un site communal pour chaque commune.
­ Pas d’informations sur les projets réalisés, en cours ou programmés (sauf
dans le portail d’Ifrane).
­ Les mises à jour est associées au " Webmaster " : personne d’autre, sans
connaissances techniques, ne peut contribuer aux mises à jour.
­ …
 Sites CommunesPlone :
Les sites communaux de ‘Seneffe’ et ‘Sambreville’ rentrent dans le cadre du
projet CommunesPlone. Ils sont créés par le CMS Plone et le produit de
canevas de site communal CPSkin2 avec des fonctionnalités très évoluées
comme le système de géolocalisation qui guide les visiteurs et les permet de
localiser des lieux de la commune.
 Site communal de Seneffe :
Mohamed OUALI 61 Projet de fin d’étude 2009/2010
Figure 4.5 : site communal de Seneffe
 Site communal de Sambreville :
Figure 4.6 : Site communal de Sambreville
Les sites communaux présentés ci­dessus sont créés par le même outil et
répondent aux mêmes besoins avec, certainement, une différence de contenu.
Après l’analyse du contenu et de son organisation dans ces derniers, il apparaît
clairement que se sont des sites puissants et très bien organisés sur les quelles je
peux me baser pour créer notre site communal (démo).
2.2 Le cahier des charges proposé :
Mohamed OUALI 62 Projet de fin d’étude 2009/2010
De l’analyse effectuée est né un cahier des charges pour la réalisation du site
web communal (démo) qui peut servir, dans le futur, pour convaincre les
responsables communaux de l’importance et de la nécessité d’avoir leur propre
site qui aura comme objectifs principaux :
 Contenir toutes les informations relatives à la commune, ainsi que les
liens vers d’autres sites communaux, administratifs, associatifs, ou du
secteur commercial (sites d’entreprises de la commune).
 Permettre d’Informer en premier lieu les habitants de la commune : sur les
services, les écoles, les activités associatives, culturelles, sportives, les
commerces, les projets communaux, etc.
 Servir de Guide pour l’extérieur de la commune : il est évident de penser
au tourisme (hôtels, restaurants), ainsi qu’aux animations, expositions,
fêtes.
 Présenter les activités de tous les secteurs économiques présents (sociétés,
artisans, etc.) sur le territoire communal.
 Exposer les actions et services de la municipalité, ainsi que discuter
(forums de discussion), afin de pouvoir favoriser la proximité avec les
citoyens et la participation à la vie de la commune.
 Permettre à des personnes sans connaissances techniques d'ajouter, de
supprimer ou de modifier des pages directement via le site.
 Le mode d'alimentation du site peut être organisé avec beaucoup de
souplesse: alimentation centralisée (par le webmaster), décentralisée (par
le collège communal ou les services) avec validation, décentralisée sans
validation, par quelques personnes seulement, ...
 Des "sous­sites" sont possibles: Passionnés, associations ou commerçants
de la commune peuvent alimenter leurs propres pages au sein du site
communal, avec un menu qui leur est propre et un accès sécurisé.
 Intégrer un système de géolocalisation pour donner la possibilité
d'illustrer avec des cartes dynamiques la localisation précise des bâtiments
des administrations, des écoles, des associations, des commerces, des
pharmacies, des gares de train...
 Intégrer la gestion des flux RSS : Grâce à un flux RSS, le citoyen peut
être rapidement informé lorsque du contenu est ajouté au site de la
commune
 Intégrer une application pour la gestion des organes délibératoires
 …
III.3 CONCEPTION & REALISATION :
Mohamed OUALI 63 Projet de fin d’étude 2009/2010
Cette rubrique résume les points importants ainsi que la démarche suivie pour la
réalisation de la "démo site web communal".
3.1 Rassembler les informations à publier :
Toujours en gardant présent à l'esprit les objectifs de la démo site communal et à
partir des sites analysés, ci­dessus, j’ai essayé de collecter quelques informations
(document, texte, photos, …) qui vont être présentées dans le site. Les
informations rassemblées peuvent être classées en grandes catégories :
­ Informations communales
­ informations sur les associations
­ patrimoine, art, culture, histoire
­ les activités sportives
­ secteur économique, tourisme
­ écoles
­ santé
­ et divers ...
Les informations rassemblées dans cette étape sont à titre d’exemple et seront
organisées par rubriques pour présenter, aux internautes, une navigation par
thèmes.
3.2 Organiser l'information collectée :
Cette étape à pour but d’organiser le contenu du site en fonctions des objectifs
fixées. C’est une étape importante, car une bonne organisation du contenu
facilite la navigation dans le site, et une bonne navigation pour le visiteur est
synonyme de satisfaction.
­ Pourquoi privilégier une navigation par thème ?
L'information reprise sur un site communal est très variée et comprend une
masse importante de documents. Les thèmes permettent d'orienter presque
instinctivement l'internaute sans qu'il aie à lire beaucoup d'information. Le
libellé du thème doit être le plus explicite tout en gardant sont aspect "grand
ensemble d'information". A vouloir être trop précis à ce niveau, on exclu
certaines informations; ce qui conduit à devoir créer d'autres thèmes. Plus il y a
de dossier thèmes à la racine du site, plus on s'oriente vers une navigation par
rubrique (un dossier à la racine du site devient automatiquement un onglet ou
une rubrique).
­ Les rubriques proposées :
Afin de simplifier la navigation dans le site, j’ai organisé le contenu de la façon
suivante :
Mohamed OUALI 64 Projet de fin d’étude 2009/2010
Figure 4.7 : plan du site
Comme le montre la figure ci­dessus notre site propose aux visiteurs une
navigation par thèmes :
 Vie communale : ce thème reprend ce qui est "officiel", les services
publics, para public, le politique, l'enseignement, etc. Il contient les
sections suivantes :
o Vie politique : dans cette section le visiteur peut trouver comment
contacter un membre du collège communal ou un conseiller
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov
Plonegov projet egov

More Related Content

What's hot

Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerpHORIYASOFT
 
Rapport de stage à l’IUFM de Versailles
Rapport de stage à l’IUFM de VersaillesRapport de stage à l’IUFM de Versailles
Rapport de stage à l’IUFM de VersaillesFrédéric Sagez
 
Rapport de pfe format doc 2013
Rapport de pfe format doc 2013Rapport de pfe format doc 2013
Rapport de pfe format doc 2013Addi Ait-Mlouk
 
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)Yasmine Tounsi
 
Rapport stage
Rapport stageRapport stage
Rapport stageTECOS
 
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projet
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projetRapport de stage : Parcours d'apprentissage à base de la pédagogie par projet
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projetnkamal1
 
Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 HORIYASOFT
 
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0Abissa Khadija
 
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEHORIYASOFT
 
Projet tempus mission openerp
Projet tempus mission openerpProjet tempus mission openerp
Projet tempus mission openerpHORIYASOFT
 
Mémoire de Projet de Fin d’Etudes
Mémoire de Projet de Fin d’EtudesMémoire de Projet de Fin d’Etudes
Mémoire de Projet de Fin d’EtudesAicha OUALLA
 
Y.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPY.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPYassine BARBOUCHI
 
Rapport de-stage-technecien
Rapport de-stage-technecienRapport de-stage-technecien
Rapport de-stage-technecienghazwanikhouloud
 
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi zied
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi ziedProjet de fin d'etude 2015 (le web to store) élaborer par Debbichi zied
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi ziedZied Debbichi
 
Gestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpGestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpHORIYASOFT
 
Rapport de stage gsi djinta michelle hendrid encadreur kamleu noumi emeric
Rapport de stage gsi djinta michelle hendrid encadreur   kamleu noumi emericRapport de stage gsi djinta michelle hendrid encadreur   kamleu noumi emeric
Rapport de stage gsi djinta michelle hendrid encadreur kamleu noumi emericEmeric Kamleu Noumi
 

What's hot (19)

Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerp
 
Rapport de stage à l’IUFM de Versailles
Rapport de stage à l’IUFM de VersaillesRapport de stage à l’IUFM de Versailles
Rapport de stage à l’IUFM de Versailles
 
Rapport de pfe format doc 2013
Rapport de pfe format doc 2013Rapport de pfe format doc 2013
Rapport de pfe format doc 2013
 
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)
Rapport Projet ERP - Plateforme Odoo 12 (PFE Licence)
 
Rapport stage
Rapport stageRapport stage
Rapport stage
 
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projet
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projetRapport de stage : Parcours d'apprentissage à base de la pédagogie par projet
Rapport de stage : Parcours d'apprentissage à base de la pédagogie par projet
 
Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7 Gestion de la paie maroc avec openerp 7
Gestion de la paie maroc avec openerp 7
 
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
GETSION DES RESSOURCES HUMAINES ET PAIE MAROCAINE SOUS OPENERP V7.0
 
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINEADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
ADAPTATION ET INTEGRATION D’OPENERP POUR LA GESTION D’OFFICINE
 
ERP Universitaire
ERP UniversitaireERP Universitaire
ERP Universitaire
 
Projet tempus mission openerp
Projet tempus mission openerpProjet tempus mission openerp
Projet tempus mission openerp
 
Mémoire de Projet de Fin d’Etudes
Mémoire de Projet de Fin d’EtudesMémoire de Projet de Fin d’Etudes
Mémoire de Projet de Fin d’Etudes
 
Y.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIPY.barbouchi mémoire pfe 2014-Cisco ToIP
Y.barbouchi mémoire pfe 2014-Cisco ToIP
 
Rapport de-stage-technecien
Rapport de-stage-technecienRapport de-stage-technecien
Rapport de-stage-technecien
 
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi zied
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi ziedProjet de fin d'etude 2015 (le web to store) élaborer par Debbichi zied
Projet de fin d'etude 2015 (le web to store) élaborer par Debbichi zied
 
Rapport stage
Rapport stageRapport stage
Rapport stage
 
MEMOIRE DE STAGE
MEMOIRE DE STAGEMEMOIRE DE STAGE
MEMOIRE DE STAGE
 
Gestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerpGestion de la_production_agricole_avec_openerp
Gestion de la_production_agricole_avec_openerp
 
Rapport de stage gsi djinta michelle hendrid encadreur kamleu noumi emeric
Rapport de stage gsi djinta michelle hendrid encadreur   kamleu noumi emericRapport de stage gsi djinta michelle hendrid encadreur   kamleu noumi emeric
Rapport de stage gsi djinta michelle hendrid encadreur kamleu noumi emeric
 

Viewers also liked

Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...
Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...
Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...Ayoub Minen
 
Recursos educativos en prevención de drogodependencias 2012
Recursos educativos en prevención de drogodependencias 2012Recursos educativos en prevención de drogodependencias 2012
Recursos educativos en prevención de drogodependencias 2012Juan Carlos Melero
 
Nuevas tecnologias virtudes y riesgos asc - 16 feb 2011
Nuevas tecnologias virtudes y riesgos   asc - 16 feb 2011Nuevas tecnologias virtudes y riesgos   asc - 16 feb 2011
Nuevas tecnologias virtudes y riesgos asc - 16 feb 2011José María
 
Platinum Lifestyle
Platinum LifestylePlatinum Lifestyle
Platinum LifestyleYevgen
 
Exposição ao flúor e fluorose dental uma revisão de literatura
Exposição ao flúor e fluorose dental uma revisão de literaturaExposição ao flúor e fluorose dental uma revisão de literatura
Exposição ao flúor e fluorose dental uma revisão de literaturaedounioeste
 
Software
SoftwareSoftware
SoftwareCurika
 
Encuesta de satisfaccion a terceros en formulación magistral
Encuesta de satisfaccion a terceros en formulación magistralEncuesta de satisfaccion a terceros en formulación magistral
Encuesta de satisfaccion a terceros en formulación magistralFarmaoptics Ramón Jiménez
 
Ici project brief pdf
Ici project brief pdfIci project brief pdf
Ici project brief pdfAh Jun
 
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...TheDailyCorruption
 
Modelos de negocios de exito canvas
Modelos de negocios de exito canvasModelos de negocios de exito canvas
Modelos de negocios de exito canvasCatalina Castano
 
Spread_it - HI Creative Task 2014
Spread_it - HI Creative Task 2014Spread_it - HI Creative Task 2014
Spread_it - HI Creative Task 2014Hyper Island
 
Integración de TIC a la Gestión de Centros Educativos
Integración de TIC a la Gestión de Centros EducativosIntegración de TIC a la Gestión de Centros Educativos
Integración de TIC a la Gestión de Centros Educativosangelacastillo2202
 
CAPMUN 2016 Delegate Handbook - FINAL-Spreads
CAPMUN 2016 Delegate Handbook - FINAL-SpreadsCAPMUN 2016 Delegate Handbook - FINAL-Spreads
CAPMUN 2016 Delegate Handbook - FINAL-SpreadsKamila Graczyk
 
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...Yaquelin Rodriguez
 

Viewers also liked (20)

Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...
Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...
Rapport projet de fin d'études: Elaboration d’un tableau de bord et politique...
 
Rapport De PFE
Rapport De PFERapport De PFE
Rapport De PFE
 
Kldklaksd (1)
Kldklaksd (1)Kldklaksd (1)
Kldklaksd (1)
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Recursos educativos en prevención de drogodependencias 2012
Recursos educativos en prevención de drogodependencias 2012Recursos educativos en prevención de drogodependencias 2012
Recursos educativos en prevención de drogodependencias 2012
 
Nuevas tecnologias virtudes y riesgos asc - 16 feb 2011
Nuevas tecnologias virtudes y riesgos   asc - 16 feb 2011Nuevas tecnologias virtudes y riesgos   asc - 16 feb 2011
Nuevas tecnologias virtudes y riesgos asc - 16 feb 2011
 
Platinum Lifestyle
Platinum LifestylePlatinum Lifestyle
Platinum Lifestyle
 
Exposição ao flúor e fluorose dental uma revisão de literatura
Exposição ao flúor e fluorose dental uma revisão de literaturaExposição ao flúor e fluorose dental uma revisão de literatura
Exposição ao flúor e fluorose dental uma revisão de literatura
 
Diciembre clipping online
Diciembre clipping online Diciembre clipping online
Diciembre clipping online
 
Software
SoftwareSoftware
Software
 
Encuesta de satisfaccion a terceros en formulación magistral
Encuesta de satisfaccion a terceros en formulación magistralEncuesta de satisfaccion a terceros en formulación magistral
Encuesta de satisfaccion a terceros en formulación magistral
 
Ici project brief pdf
Ici project brief pdfIci project brief pdf
Ici project brief pdf
 
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...
AUTO Registro Sede PP DP 275/2008 Pieza Separada Informe UDEF-BLA Nº22.510/13...
 
Modelos de negocios de exito canvas
Modelos de negocios de exito canvasModelos de negocios de exito canvas
Modelos de negocios de exito canvas
 
Spread_it - HI Creative Task 2014
Spread_it - HI Creative Task 2014Spread_it - HI Creative Task 2014
Spread_it - HI Creative Task 2014
 
Integración de TIC a la Gestión de Centros Educativos
Integración de TIC a la Gestión de Centros EducativosIntegración de TIC a la Gestión de Centros Educativos
Integración de TIC a la Gestión de Centros Educativos
 
CAPMUN 2016 Delegate Handbook - FINAL-Spreads
CAPMUN 2016 Delegate Handbook - FINAL-SpreadsCAPMUN 2016 Delegate Handbook - FINAL-Spreads
CAPMUN 2016 Delegate Handbook - FINAL-Spreads
 
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...
Desarrollan nuevo sistema que detecta las recaídas en pacientes con mieloma m...
 
Gremios y asociaciones profesionales
Gremios y asociaciones profesionalesGremios y asociaciones profesionales
Gremios y asociaciones profesionales
 
Uniforme conquistadores
Uniforme conquistadoresUniforme conquistadores
Uniforme conquistadores
 

Similar to Plonegov projet egov

Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)
Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)
Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)zakia saadaoui
 
rapport-projet-de-fin-detudes
 rapport-projet-de-fin-detudes rapport-projet-de-fin-detudes
rapport-projet-de-fin-detudesAchraf Mokhtari
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti MohammedMohammed JAITI
 
Collecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleCollecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleoussama Hafid
 
Développement d'un forum de discussion
Développement d'un forum de discussionDéveloppement d'un forum de discussion
Développement d'un forum de discussionYoussef NIDABRAHIM
 
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Alexis Legrand
 
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdf
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdfRapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdf
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdfLARAFA Mohamed Akram
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Réalisation d’un guide touristique hors connexion sur plateforme Android pou...
Réalisation d’un guide touristique hors connexion sur plateforme  Android pou...Réalisation d’un guide touristique hors connexion sur plateforme  Android pou...
Réalisation d’un guide touristique hors connexion sur plateforme Android pou...FatimaElkaddouri
 
Réalisation d’une plateforme e-commerce de vente de prestations HTML dotée d...
Réalisation d’une plateforme e-commerce de vente de  prestations HTML dotée d...Réalisation d’une plateforme e-commerce de vente de  prestations HTML dotée d...
Réalisation d’une plateforme e-commerce de vente de prestations HTML dotée d...kadzaki
 
Rapport PFE: PIM (Product Information Management) - A graduation project repo...
Rapport PFE: PIM (Product Information Management) - A graduation project repo...Rapport PFE: PIM (Product Information Management) - A graduation project repo...
Rapport PFE: PIM (Product Information Management) - A graduation project repo...younes elmorabit
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop amat samiâ boualil
 
Hamdaoui abdelilah
Hamdaoui abdelilahHamdaoui abdelilah
Hamdaoui abdelilahMoez Moezm
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopieRamiJOUDI2
 
Rapport_deStage
Rapport_deStageRapport_deStage
Rapport_deStageOmar TRAI
 
Rapport-PfA-ACHKAOU-SARA.pdf
Rapport-PfA-ACHKAOU-SARA.pdfRapport-PfA-ACHKAOU-SARA.pdf
Rapport-PfA-ACHKAOU-SARA.pdfsaraachkaou
 
Backup & Restore SharePoint 2013 Farm
Backup & Restore SharePoint 2013 FarmBackup & Restore SharePoint 2013 Farm
Backup & Restore SharePoint 2013 FarmYoussef El Idrissi
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesHosni Mansour
 

Similar to Plonegov projet egov (20)

Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)
Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)
Contribution a la_realisation_dune_plate_forme_de_suivi_de_colis (1)
 
Tpe nguyen tien-thinh
Tpe nguyen tien-thinhTpe nguyen tien-thinh
Tpe nguyen tien-thinh
 
rapport-projet-de-fin-detudes
 rapport-projet-de-fin-detudes rapport-projet-de-fin-detudes
rapport-projet-de-fin-detudes
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
 
Collecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleCollecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centrale
 
Développement d'un forum de discussion
Développement d'un forum de discussionDéveloppement d'un forum de discussion
Développement d'un forum de discussion
 
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
Mémoire_SciencesPo_Alexis-Legrand_L’INTERNET-DES-OBJETS,-UN-PAS-VERS-LA-TRAN...
 
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdf
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdfRapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdf
Rapport_Memoire_Mastère_SRT_LARAFA_Mohamed_Akram.pdf
 
Rapport finiale
Rapport finialeRapport finiale
Rapport finiale
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
 
Réalisation d’un guide touristique hors connexion sur plateforme Android pou...
Réalisation d’un guide touristique hors connexion sur plateforme  Android pou...Réalisation d’un guide touristique hors connexion sur plateforme  Android pou...
Réalisation d’un guide touristique hors connexion sur plateforme Android pou...
 
Réalisation d’une plateforme e-commerce de vente de prestations HTML dotée d...
Réalisation d’une plateforme e-commerce de vente de  prestations HTML dotée d...Réalisation d’une plateforme e-commerce de vente de  prestations HTML dotée d...
Réalisation d’une plateforme e-commerce de vente de prestations HTML dotée d...
 
Rapport PFE: PIM (Product Information Management) - A graduation project repo...
Rapport PFE: PIM (Product Information Management) - A graduation project repo...Rapport PFE: PIM (Product Information Management) - A graduation project repo...
Rapport PFE: PIM (Product Information Management) - A graduation project repo...
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 
Hamdaoui abdelilah
Hamdaoui abdelilahHamdaoui abdelilah
Hamdaoui abdelilah
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopie
 
Rapport_deStage
Rapport_deStageRapport_deStage
Rapport_deStage
 
Rapport-PfA-ACHKAOU-SARA.pdf
Rapport-PfA-ACHKAOU-SARA.pdfRapport-PfA-ACHKAOU-SARA.pdf
Rapport-PfA-ACHKAOU-SARA.pdf
 
Backup & Restore SharePoint 2013 Farm
Backup & Restore SharePoint 2013 FarmBackup & Restore SharePoint 2013 Farm
Backup & Restore SharePoint 2013 Farm
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
 

More from HORIYASOFT

gnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfgnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfHORIYASOFT
 
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxDeployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxHORIYASOFT
 
Hackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHORIYASOFT
 
7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entrepriseHORIYASOFT
 
Telemedecine au maroc
Telemedecine au marocTelemedecine au maroc
Telemedecine au marocHORIYASOFT
 
Amélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsAmélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsHORIYASOFT
 
Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8HORIYASOFT
 
Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016HORIYASOFT
 
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?HORIYASOFT
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste marocHORIYASOFT
 
Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8HORIYASOFT
 
Mise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocMise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocHORIYASOFT
 
Openerp pour les grossistes de médicament
Openerp pour les grossistes de médicamentOpenerp pour les grossistes de médicament
Openerp pour les grossistes de médicamentHORIYASOFT
 
Odoopriting opendays2014
Odoopriting opendays2014Odoopriting opendays2014
Odoopriting opendays2014HORIYASOFT
 
Opentms nextma
Opentms nextmaOpentms nextma
Opentms nextmaHORIYASOFT
 
Strategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicStrategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicHORIYASOFT
 
Gestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpGestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpHORIYASOFT
 
Methodology for Establishing a System of Free Software in Health in a Morocca...
Methodology for Establishing a System of Free Software in Health in a Morocca...Methodology for Establishing a System of Free Software in Health in a Morocca...
Methodology for Establishing a System of Free Software in Health in a Morocca...HORIYASOFT
 
Implémentation d’une solution de géolocalisation des véhicules basée sur open...
Implémentation d’une solution de géolocalisation des véhicules basée sur open...Implémentation d’une solution de géolocalisation des véhicules basée sur open...
Implémentation d’une solution de géolocalisation des véhicules basée sur open...HORIYASOFT
 
Android openerp nextma
Android openerp nextmaAndroid openerp nextma
Android openerp nextmaHORIYASOFT
 

More from HORIYASOFT (20)

gnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdfgnuhealthcon2022_abdrahman.pdf
gnuhealthcon2022_abdrahman.pdf
 
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptxDeployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
Deployed eHealth solutions in Morocco_ ELKAFIL_MOROCCO.pptx
 
Hackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federationHackaton euvsvirus-gnuhealth-federation
Hackaton euvsvirus-gnuhealth-federation
 
7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise7 Conseils pour mettre en place un ERP dans votre entreprise
7 Conseils pour mettre en place un ERP dans votre entreprise
 
Telemedecine au maroc
Telemedecine au marocTelemedecine au maroc
Telemedecine au maroc
 
Amélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tmsAmélioration du système de gestion de transport avec Open tms
Amélioration du système de gestion de transport avec Open tms
 
Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8Comptabilité SYSCOA avec Odoo V8
Comptabilité SYSCOA avec Odoo V8
 
Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016Gnuhealth at Software Freedom Day Casablanca 2016
Gnuhealth at Software Freedom Day Casablanca 2016
 
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
Les Logiciels Libres sont ils plus sécurisés que les Logiciels Propriétaires ?
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste maroc
 
Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8Migration gmao de openerp 6.1 vers odoo 8
Migration gmao de openerp 6.1 vers odoo 8
 
Mise en conformité_module_finance_maroc
Mise en conformité_module_finance_marocMise en conformité_module_finance_maroc
Mise en conformité_module_finance_maroc
 
Openerp pour les grossistes de médicament
Openerp pour les grossistes de médicamentOpenerp pour les grossistes de médicament
Openerp pour les grossistes de médicament
 
Odoopriting opendays2014
Odoopriting opendays2014Odoopriting opendays2014
Odoopriting opendays2014
 
Opentms nextma
Opentms nextmaOpentms nextma
Opentms nextma
 
Strategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabicStrategic dimensions-of-free-and-open source-software-arabic
Strategic dimensions-of-free-and-open source-software-arabic
 
Gestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerpGestion d"une société de transit avec openerp
Gestion d"une société de transit avec openerp
 
Methodology for Establishing a System of Free Software in Health in a Morocca...
Methodology for Establishing a System of Free Software in Health in a Morocca...Methodology for Establishing a System of Free Software in Health in a Morocca...
Methodology for Establishing a System of Free Software in Health in a Morocca...
 
Implémentation d’une solution de géolocalisation des véhicules basée sur open...
Implémentation d’une solution de géolocalisation des véhicules basée sur open...Implémentation d’une solution de géolocalisation des véhicules basée sur open...
Implémentation d’une solution de géolocalisation des véhicules basée sur open...
 
Android openerp nextma
Android openerp nextmaAndroid openerp nextma
Android openerp nextma
 

Plonegov projet egov

  • 1. Mohamed OUALI 1 Projet de fin d’étude 2009/2010
  • 2. Mohamed OUALI 2 Projet de fin d’étude 2009/2010 Dédicace A mes très chers parents, Aucun mot, aucune dédicace ne peut exprimer mon respect, ma considération et l’amour éternel pour les sacrifices que vous avez consentis pour mon instruction et mon bien être. Votre générosité et votre bonneté ont toujours été un exemple pour nous tous. Trouvez en ce travail le fruit de votre dévouement, de votre patience et l’expression de ma gratitude et mon Profond amour. Je t’aime papa ; je t’aime maman et sachez que je vous suis très reconnaissant. A mes très chères sœurs, Vous m’avez toujours soutenu durant toutes mes études, je vous souhaite une vie pleine de joie de bonheur et de réussite. A toute ma chère famille, A mes professeurs, A mes chers amis, A tous ceux qui m’aiment, A tous ceux que j’aime, A tous ceux qui m’ont aidé de près ou de loin, Je dédie ce travail avec hommage. Mohamed OUALI
  • 3. Mohamed OUALI 3 Projet de fin d’étude 2009/2010 Remerciement Merci à toute personne qui m’a aidé à acheminer à bon port le présent Projet de Fin d’Études. Je tiens aussi à remercier mon encadrant externe du projet, Monsieur Abderrahmane ELKAFIL le Directeur de la société NEXTMA, pour son accueil chaleureux, sa disponibilité, sa patience et ses conseils précieux qu'il m’a prodigués tout au long de ce stage. Mes remerciements sont également adressés, avec tout le respect, au personnel de la société NEXTMA pour leur aide et leur soutien. Je voudrais également exprimer mes remerciements et mes profondes gratitudes à mon encadrant interne, M. Abdlekbir AFRAITES pour sa sympathie, sa compréhension, ses conseils et son aides pour mener à bien mon travail. Que messieurs les membres de jury trouvent ici l’expression de mes reconnaissances pour avoir accepté de juger mon travail. Enfin, mes sincères remerciements, avec tout le respect, à M. Ahmed DERJA le directeur de L’Ecole Nationale des Sciences Appliquées de Safi, à l’ensemble du corps professoral du département Génie informatiques pour m’avoir communiqué leur savoir et leur savoir faire et à tous mes enseignants qui ont assuré ma formation tout au long de ma période d’études.
  • 4. Mohamed OUALI 4 Projet de fin d’étude 2009/2010 Résumé PloneGov est l’extension internationale du projet CommunesPlone qui est un projet à l'initiative de communes wallonnes désireuses de diminuer leur dépendance aux fournisseurs informatiques et de retrouver une plus grande indépendance technologique. Pour cela, elles ont choisi de développer un ensemble des outils informatiques et sites internet véritablement adaptés à leurs besoins en ayant recours à des technologies open source. Les outils actuellement proposés dans le cadre du projet CommunesPlone s'appuient sur un logiciel de gestion de contenu (CMS) appelé Plone. Plone est un CMS Open Source, convivial et puissant qui vous permet de facilement ajouter et éditer tout type de contenu via le web, de produire de navigation et de recherche de ce contenu et appliquer la sécurité et de workflow à ce contenu. NEXTMA, société dans laquelle j’ai effectué mon stage de fin d’études est une des nouvelles SSLL (Société de Services en Logiciels Libres). Elle propose à ses clients plusieurs solutions Open Source pour les intranets d’entreprise et les gestions de contenu (CMS). Ma mission au cours de ce stage était, tout d’abord, de prendre en main le CMS Plone et d’adapter la plateforme offerte par le projet " PloneGov " au contexte marocain. Cette adaptation consiste à réaliser un site web communal et à intégrer quelques outils ou produits développés dans le cadre de ce projet. En effet, ce projet de fin d’études m’a permis de capitaliser un savoir faire en matière de CMS, de mieux comprendre comment fonctionne une société de services et comment une SSLL peut vivre du logiciel libre. Mots clés :  PloneGov : l’extension internationale du projet CommunesPlone  CMS : Content Management System  Site communal  Outils CommunesPlone
  • 5. Mohamed OUALI 5 Projet de fin d’étude 2009/2010 INTRODUCTION………………………………………………………………………. Chapitre I : CONTEXTE GENERAL DU PROJET : …………………... I.1 PRESENTATION DE NEXTMA : ………………………………………… 1.1 NEXTMA en Bref : …………………………………………………. 1.2 Prestations et services : ………………………………………………. 1.3 Secteurs d’activités : ………………………………………………… I.2 DEFINITION DES OBJECTIFS DU PROJET : …………………………… I.3 PLANIFICATION DU PROJET : …………………………………………. Chapitre II : PRESENTATION DU CMS PLONE :…………………. II.1 CONTENT MANAGEMENT SYSTEM (CMS) : ………………………… 1.1Qu'est ce qu'un CMS ? : ………………………………………………. 1.2 Pourquoi les CMS ? : ………………………………………………… 1.3 Principe et fonctionnement : ……………………………………….. 1.3.1 Séparation de la forme et du contenu : ……………………. 1.3.2 Structuration des contenus : ………………………………. 1.3.3 Fonctionnement : …………………………………………. II.2 ZOPE ET CMF : ……………………………………………………………. 2.1 ZOPE : ………………………………………………………………. 2.2 CMF : ……………………………………………………………….. II.3 PLONE : ……………………………………………………… 3.1 Définition : …………………………………………….. 3.2 Installation : ……………………………………………. 3.3 Premiers pas avec Plone : ……………………………………. Chapitre III : LE PROJET PLONEGOV III.1. PRESENTATION & OBJECTIFS DU PROJET : …………………….. III.2. HISTORIQUE DU PROJET : …………………………………………. III.3 LE CHOIX DE L’OPEN SOURCE : …………………………………... 3.1 Définition : ………………………………………………………... 3.2 La valeur ajoutée des projets open source : ………………………. III.4 UN PROJET AU CŒUR DE L’EUROPE : …………………………… III.5 ASPECTS TECHNIQUES : …………………………………………… 5.1 Site web : …………………………………………………………. 5.2 Applications métiers : …………………………………………….. Chapitre IV : REALISATION DU SITE COMMUNAL : ………….
  • 6. Mohamed OUALI 6 Projet de fin d’étude 2009/2010 IV.1 SITE COMMUNAL : ……………………………………………… 1.1 Obstacles : …………………………………………………… 1.2 Objectifs d’un projet site communal : ………………………. IV.2 ANALYSE ET CAHIER DES CHARGES : …………………….. 2.1 Analyse de l’existant : …………………………………………. 2.2 Le cahier des charges : ………………………………………… IV.3 CONCEPTION ET REALISATION : ……………………………… 3.1 Rassembler les informations à publier : ……………………….. 3.2 Organiser l'information collectée : …………………………….. 3.3 Planifier la future vie du site de la commune : ………………... 3.4 L'aspect présentation : ………………………………………… 3.5 Les portlets : annuaire, infos pratique : ………………………. Chapitre V : LES OUTILS INTEGRES DANS LE SITE : ……… V.1 APPLICATION DE GESTION DES ORGANES DELIBERATOIRES : … 1.1 Description fonctionnelle : ………………………………………… 1.2 Caractéristiques de l'application : ………………………………….. 1.2.1 Organisation en groupes : …………………………………. 1.2.2 Rôles prédéfinis : ………………………………………….. 1.2.3 Interface générale : ………………………………………… 1.2.4 Ecrans de gestion d’un point : …………………………….. 1.2.5 Ecrans de gestion d'une séance : ………………………….. 1.2.6 Ecrans de gestion d'un procès­verbal : ……………………. 1.3 Installation et configuration de l'application : …………………… 1.3.1 Installation : ………………………………………………. 1.3.2 Panneau de configuration général : ………………………. 1.3.3 Gestion des configurations de séance : …………………... V.2 CONTACT : …………………………………………………………… V.3. AUTRES MODULES : ……………………………………………….. 3.1 Système de géolocalisation : ……………………………………. 3.2 Versionning : …………………………………………………… 3.3 Forum : …………………………………………………………. CONCLUSION …………………………………………………………....
  • 7. Mohamed OUALI 7 Projet de fin d’étude 2009/2010 Introduction générale Le Maroc vient de franchir un pas décisif dans le domaine des technologies d’information et de communication (TIC). Conscient des défis de la société de l’information et des enjeux de l’économie du savoir, le Royaume mise beaucoup plus sur le génie et la richesse de son potentiel humain. En effet, sous l’impulsion Royale, le Maroc vient d’élaborer une stratégie nationale pour la société de l'information et l'économie numérique baptisée "Maroc Numeric 2013". Présentée le 10 Octobre 2009 à Rabat devant Sa Majesté le Roi Mohammed VI, "Maroc Numeric" ambitionne de faire des technologies de l'information (TI) un véritable vecteur de développement humain. Cette stratégie s’assigne également comme objectifs d’augmenter l’accessibilité de l'Internet haut débit aux citoyens, de faciliter l'accès à la connaissance et de rapprocher l'administration des besoins des citoyens en termes d'efficacité, de qualité et de transparence à travers le programme « e­gouvernement ». D’autre part, le projet PloneGov, l’extension du projet CommunesPlone, est un projet né d'un groupe de communes wallonnes qui ont choisi d'avancer ensemble pour développer des outils informatiques répondant à leurs besoins spécifiques. Celles­ci ont ainsi opté pour une base technologique ouverte, Plone, profitant ainsi du savoir­faire et de l'expérience d'une large communauté d'acteurs de par le monde. Bien plus qu'un choix technologique, CommunesPlone s'apparente à un choix philosophique: la collaboration plutôt que l'isolement et la maîtrise plutôt que la dépendance. CommunesPlone, en se basant sur des outils open source, a pour objectif le développement d'applications informatiques par et pour les communes. Autrement dit, les outils développés dans le cadre du projet peuvent être utilisés par qui que soit. En conclusion, l’adaptation de la plateforme PloneGov au contexte marocain, tout le monde peut en tirer des bénéfices. Le présent rapport est une synthèse des travaux menés dans le cadre de ce projet. Il est réparti en cinq chapitres :  Le premier chapitre intitulé "Contexte général du projet", est consacré à la présentation de l’organisme d’accueil, donner une vue générale sur les objectifs de mon sujet ainsi que le planning suivi durant ce stage.  Le second chapitre présente le CMS "Plone" utilisé.
  • 8. Mohamed OUALI 8 Projet de fin d’étude 2009/2010  Le troisième chapitre est consacré à la présentation du projet "CommunesPlone".  Le cinquième chapitre traites la démarche suivie et la réalisation d’un site communal.  Le dernier chapitre illustre les outils développés dans le cadre du projet CommunesPlone et intégrés dans le site communal.
  • 9. Mohamed OUALI 9 Projet de fin d’étude 2009/2010 Chapitre I : CONTEXTE GENERAL DU PROJET Ce chapitre est une présentation générale du Contexte de mon projet. J’y aborderai :  Présentation de l’organisme d’accueil NEXTMA  Définition des objectifs du projet.  Planification du projet.
  • 10. Mohamed OUALI 10 Projet de fin d’étude 2009/2010 I.1 PRESENTATION DE NEXTMA : 1.1 NEXTMA En Bref : NEXTMA est une Société de Services en Logiciels Libres (SSLL) qui accompagne les entreprises et institutions dans le choix de solutions open source ainsi que dans l'intégration, le développement, l'adaptation aux besoins spécifiques, la maintenance et le support. Afin de bénéficier des meilleures solutions libres dans la gestion des systèmes d'information, NEXTMA offre aux PME marocaines des services qui sont orientés sur le modèle « ONE STOP SHOPPING ». C'est­à­dire en offrant une gamme étendue des services complémentaires sur mesure, car chaque entreprise à sa spécificité, afin qu'elles puissent faire face aux échéances du libre échange et soient à niveau par rapport aux normes de qualité et de performance internationalement reconnues. 1.2 Prestations et services : NEXTMA offre une large palette de prestations et de services basés sur des composants libres adaptés aux systèmes et aux réseaux des clients. La principale tâche de cette société est d’offrir des solutions sur mesure, en matière de formation et d’assistance, concernant les problématiques relevant des systèmes d’informations, moyennant des outils libres. La gamme de services de NEXTMA est articulée autour de quatre axes majeurs qui permettent d'accompagner les clients durant toutes les phases d'un projet afin d'en assurer sa réussite. Support En plus des offres de formations. La société propose aux équipes dédiées au développement, des prestations de support d’aide à la maintenance, afin de réduire le temps de résolution des interrogations ou des difficultés que les entreprises pourraient rencontrer lors de la mise en œuvre de certains logiciels. Conseil NEXTMA possède une équipe formée de consultants techniques et fonctionnels qui assure soit dans le cadre de projets, soit en amont, des missions de conseil dans les domaines suivants: gestion de contenu, travail collaboratif, dématérialisation des procédures, migration vers le libre, architecture et dimensionnement d'applications basées sur open ERP…etc. Développement
  • 11. Mohamed OUALI 11 Projet de fin d’étude 2009/2010 Il constitue le cœur métier de NEXTMA et comprend le développement sur la base de logiciels libres, de portails collaboratifs internet ou intranet, avec des composantes de publication web, de travail collaboratif, de gestion électronique de documents et de workflow. Formation L’offre des formations, techniques et fonctionnelles, permet d'accompagner les organisations qui disposent d’équipes opérationnelles capables de mener à bien des projets. Ces formations peuvent être établies sous forme de transferts de compétences, en phases avals des projets. 1.3 Secteurs d’activités : De part les multiples projets que NEXTMA a mené, elle a acquis un savoir faire susceptible de lui permettre l’implantation de logiciels libres dans les différents secteurs : Enterprise Ressource Planning (ERP) : En français Progiciels de Gestion Intégré (PGI). NEXTMA est le partenaire officiel de l’ERP open source Open ERP au Maghreb depuis 2006. Elle adapte celui­ci à la législation marocaine et aux besoins spécifiques des entreprises. Customer Relationship Management (CRM) : NEXTMA propose l’offre SUGARCRM qui permet la gestion de la relation client Business Intelligence (BI) ou informatique décisionnelle. Intranet des entreprises et gestion des contenus. Création d’identités visuelles et sites internet institutionnels et e­ commerce : La solution proposée est SMARTSHOP qui une solution libre de e­ commerce (commerce électronique) qui s'appuie sur le gestionnaire contenu Joomla! Gestion électronique des documents :
  • 12. Mohamed OUALI 12 Projet de fin d’étude 2009/2010 Il s’agit d’un système informatisé d'acquisition, classement, stockage, archivage des documents. I.2 DEFINITION DES OBJECTIFS DU PROJET : PloneGov est l’extension internationale du projet CommunesPlone qui est un projet à l'initiative de communes wallonnes désireuses de diminuer leur dépendance aux fournisseurs informatiques et de retrouver une plus grande indépendance technologique. Pour cela, elles ont choisi de développer un ensemble des outils informatiques et sites internet véritablement adaptés à leurs besoins en ayant recours à des technologies open source. Les outils actuellement proposés dans le cadre du projet CommunesPlone s'appuient sur un logiciel de gestion de contenu convivial appelé Plone. Mon projet de fin d’étude intitulé " L’adaptation de la plateforme PloneGov au contexte Marocain " a pour objectifs la réalisation des tâches suivantes :  Prise en main du CMS Plone  Analyse des portails des villes marocaines existants  Proposition et réalisation d’un site communal (démo)  Intégration de l’application de gestion des organes délibératoires dans le site  Intégration du système de géolocalisation dans le site  Intégrer le multilinguisme dans le site I.3 PLANIFICATION DU PROJET : Dans ce qui suit, je vais essayer d’établir la planification de mon projet, qui est scindé en plusieurs tâches. La figure 1.1, représente le planning que j’ai suivi pour réaliser mon stage :
  • 13. Mohamed OUALI 13 Projet de fin d’étude 2009/2010 Figure 1.1 : Planning du stage Comme on peut remarquer sur la figure 1.1 mon stage se divise en 5 phases :  Phase1 : Dans cette phase j’ai fait tout ce qui est recherche de documentation et installation des outils (Ubuntu, CMS Plone et ses dépendances). Cette étape a été conclue par une rédaction d’un manuel d’utilisation.  Phase 2 : dans cette étape j’ai fait l’analyse de plusieurs portails des villes, des arrondissements marocains et des communes belges. A la fin de cette phase j’ai proposé un cahier de charge pour notre site communal (démo).  Phase 3 : c’est la phase de réalisation durant laquelle j’ai pu réaliser un site communal à l’aide du CMS Plone.  Phase 4 : durant cette phase j’ai pu intégrer dans le site une application de gestion des organes délibératoires, un système de géolocalisation et autres modules afin d’améliorer les fonctionnalités du site.  Phase 5 : Dans cette dernière phase j’ai rédigé mon rapport de PFE.
  • 14. Mohamed OUALI 14 Projet de fin d’étude 2009/2010 Chapitre II : PRESENTATION DU CMS PLONE Dans ce chapitre je présente les Systèmes de Gestion de Contenu en particulier le CMS Plone. Il est réparti comme suit :  Content Management System (CMS)  Zope et CMF  Plone
  • 15. Mohamed OUALI 15 Projet de fin d’étude 2009/2010 II.1 CONTENT MANAGEMENT SYSTEM (CMS) : 1.1 Qu'est ce qu'un CMS ? Les CMS ou Systèmes de Gestion de Contenu sont des outils de conception et de mise à jour de site web dynamique disposant de fonctionnalités de publication. Ils offrent en particulier une interface d'administration destinée à l'administrateur du site pour créer et modifier le contenu et les fonctionnalités du site. Les CMS partagent les fonctionnalités suivantes :  Ils permettent le travail collaboratif sur un même document.  Ils fournissent une chaîne de publication (workflow) offrant la possibilité de mettre en ligne le contenu des documents.  Ils permettent de séparer les opérations de gestion de la forme et du contenu.  Ils permettent de structurer le contenu (utilisation de document, FAQ, blogs, forums, etc.).  Certains SGC permettent la gestion de versions.  … Les CMS sont de plus en plus nombreux (qu'ils soient gratuits, Open Source sous licence GNU/GPL ou payants) et offrent de plus en plus de fonctionnalités. Voici quelques uns des CMS les plus connus :  Plone : présenté dans la suite de ce document.  Spip : il s’agit d’un outil simple de gestion de contenu développé en PHP. Il permet la création de rubriques dans lesquelles les rédacteurs peuvent définir du contenu. Le contenu est ensuite validé ou rejeté par un modérateur.  PhpNuke : il s’agit d’un outil de gestion de news en PHP. Il permet de créer des sites semblables à Slashdot.  OpenCMS : il s’agit d’un outil Open Source complexe disposant d’un éditeur WYSIWYG. Il écrit suivant la norme J2EE.  Lutece : il s’agit de l’outil des mairies d’arrondissement développé par la ville de Paris. Il offre un workflow limité et permet la création de pages avec les portlettes.  Zope et CMF : Zope est un serveur d’applications développé en Python orienté gestion de contenu. Son approche base d’objets en font aujourd’hui l’une des solutions les plus puissantes du marché. Afin
  • 16. Mohamed OUALI 16 Projet de fin d’étude 2009/2010 d’unifier les développements, une librairie additionnelle nommée CMF ajoute les outils de la gestion de contenu.  DotClear  Mambo  Joomla  … 1.2 Pourquoi les CMS ? La gestion des contenus d’une entreprise ou d’un organisme est aujourd’hui une problématique fondamentale : la réussite est souvent conditionnée par la qualité de l’informations et plus encore par les échanges d’informations. Les premiers Intranet et Internet développés sont constitués de pages Web écrites avec des outils de conception web. Rapidement, cette gestion de l’information trouve ses limites :  Création de documents limitée : Elle ne peut être réalisée que par les webmasters (ou les personnes maîtrisant les outils de création de pages).  Manque d’organisation : les documents sont organisés au mieux dans des répertoires;  Manque de cohérence : les documents ne sont pas soumis a une charte graphique et ne peuvent parailleurs être stockés sous différents formats.  Pas de moteur de recherche : l’accès à l’information est ainsi difficile. En plus, le principal problème que rencontrent les administrateurs de sites web est celui de leur administration. L'administration d'un site web peut être décomposée en plusieurs tâches :  l'ajout de contenus,  la mise à jour de contenu,  la suppression de contenu,  la réorganisation des données,  la gestion des accès et des autorisations aux pages du site. Comme on peut le constater, la problématique concernant la gestion des sites web peut vite rendre le travail des administrateurs de ces sites infernal. Enfin, rapidement ces sites sont soit abandonnés car trop difficiles d’accès soit deviennent surchargés par la masse d’informations. De ces constatations, de nombreux CMS sont développés pour répondre à ces problématiques. 1.3 Principe et fonctionnement:
  • 17. Mohamed OUALI 17 Projet de fin d’étude 2009/2010 1.3.1 Séparation de la forme et du contenu : Le principe fondamental que respectent tous les CMS est la séparation des opérations de gestion de la forme et du contenu. En effet :  Le contenu est stocké dans une base des données, structurée en tables et en champs. C'est le contenu des champs de la base qui est créé et/ou modifié par le rédacteur, et non pas la page elle même. On parle de site "dynamique".  La présentation est définie dans une « Template ou un gabarit » qui définit la mise en page des pages web (voir annexe 2.1). Le CMS joue un rôle de frontières entre ces deux mondes (forme et contenu). Lorsqu'un client va demander une page du site au CMS, ce dernier va rechercher les données demandées, ainsi que les gabarits associés et les fusionner ensemble pour rendre la page du site. C'est ce que présente le schéma suivant : Figure 2.1 : séparation de la forme et du contenu 1.3.2 Structuration des contenus : Pour créer un contenu, tous les CMS adoptent les mêmes étapes :
  • 18. Mohamed OUALI 18 Projet de fin d’étude 2009/2010 1. Authentification : tous les utilisateurs de l’outil doivent être identifiés. 2. Cette identification peut être utilisée, par la suite, pour définir les droits et les rôles. 3. Création de documents : la création de documents doit être réalisée à travers une interface web. 4. Publication : les documents doivent être visibles dans des espaces déterminés. Par ailleurs, cette opération doit pouvoir être contrôlée. On introduit ici souvent la notion de Workflow. Après la création, les contenus d'un site sont structurés en articles. Les CMS manipulent ces articles pour constituer les pages d'un site. Chaque page d'un site peut contenir différents articles, et un article peut apparaître dans plusieurs pages. Cette abstraction du contenu permet de manipuler les articles comme des objets. Figure 2.2 : Manipulation des articles 1.3.3 Fonctionnement : Maintenant que nous savons ce qui constitue les pages web gérées par un CMS, nous allons voir comment elles sont présentées aux utilisateurs qui les consultent. Ce mécanisme s'effectue en trois étapes :
  • 19. Mohamed OUALI 19 Projet de fin d’étude 2009/2010 Figure 2.3 : fonctionnement du CMS 1. le Visiteur demande au moteur du CMS une page particulière (ici nommée X) 2. le moteur du CMS récupère le gabarit de la page et les données qu'il contient 3. le moteur du CMS fusionne les données dans le gabarit et renvoie le résultat au visiteur qui les affichera dans son navigateur web. La gestion de contenu ne doit pas être envisagée dans tous les cas car elle entraîne souvent des modifications dans l’organisation de l’organisme et impose des contraintes importantes. II.2 ZOPE & CMF : 2.1 ZOPE : Zope est un serveur d’applications web libre, Open Source. C’est une plateforme de développement constituée de différentes technologies et langages. Il peut être ainsi caractérisé :  Serveur d’applications atypique. Il ne respecte pas la norme J2EE développée par Sun.  Développé en python : Zope s’appuie sur un langage de script moderne. Toutefois, une partie du code sensible est écrit en C. Le python permet un développement rapide et professionnel.  Basé sur la ZODB : le serveur d’applications s’appuie sur le concept de base d’objets. L’intégration de bases de données tierces est toutefois possible.  Interface Web : tout peut être réalisé depuis un navigateur. Cette approche permet une prise en main rapide de l’outil.
  • 20. Mohamed OUALI 20 Projet de fin d’étude 2009/2010  Un framework riche  Objets typés : les documents sont organisés en type. 2.2 CMF : Zope est un framework extensible et sa couverture des applications de gestion de contenu est large. Toutefois, de nombreux éditeurs ont développé leurs solutions de CMS. Afin d’offrir une base commune plus large et permettre une meilleure interopérabilité des produits CMS en Zope, Zope Corporation a développé le CMF. Il s’agit d’une architecture de services orientée CMS. Ses principales caractéristiques sont :  Gestion d’un espace membre  Gestion d’un processus de création de contenu : le workflow  Gestion de l’indexation : un moteur de recherche est intégré  Gestion de l’interface graphique : l’outil offre un moyen de définir différents thèmes disponibles pour les utilisateurs.  Gestion de metadonnées : afin d’organiser les documents, il est possible de créer des données sur les données.  Gestion de la syndication : les documents doivent pouvoir être exploités sur des sites externes. Zope et CMF constituent ainsi une plateforme idéale pour la création d’applications de CMS. II.3 PLONE : 3.1 Définition : Plone est un système de gestion de contenu web Open Source publié selon les normes de la GNU GPL. Il est construit au dessus du serveur d'application Zope et de son extension CMF. Plone est un produit à destination des utilisateurs finaux ayant pour objectif de simplifier la mise en place d’un outil de gestion de contenu. Il est développé par Alexander Limi, Alan Runyan, Vidar Andersen et par une communauté de développeurs passionnés. 3.2 Installation : Le présent document décrit l’installation de Plone sur les plateformes Linux (en particulier Ubuntu), plateformes de production par excellence pour Plone. De plus, les plateformes windows et MacOS disposent d’un installeur simplifiant à l’extrême cette étape. Plone est un produit Zope. Il est donc nécessaire de disposer d’un serveur Zope opérationnel sur la plateforme utilisée. Les plateformes Linux, Windows et MacOS disposent d’un installeur unifié intégrant Zope, CMF et Plone.
  • 21. Mohamed OUALI 21 Projet de fin d’étude 2009/2010 Pour mettre en place le système de gestion de contenu (Plone) la procédure d'ins tallation la plus simple est l'utilisation de l'Installateur Unifié (IU). Toutefois, l’installation séparée de chaque composante reste, aussi, possible mais doit respecter un certain ordre. a. Installation par l’IU : a.1 Installateur unifié : Le programme d'installation unifiée est un kit d'installation source pour installer python, Zope, Plone et leurs dépendances sur les plateformes de type Linux. Elle a deux composantes principales:  Les paquets source pour Python, Zope, Plone, un couple des bibliothèques du système et certaines bibliothèques Python;  Un script d'installation qui utilise les paquetages pour créer un ready­to­run ou un fichier d'installation. Remarque: La nouvelle installation (Zope / Plone) utilisera sa propre version de Python, et le python installé par l'installateur unifié ne remplacera pas la copie de python de la plateforme utilisée (OS). a.2 Root ou User installation : Le script install.sh pour l'installateur unifié peut être exécuté en tant que root (généralement sudo) comme un utilisateur normal. Les principales différences sont les suivantes : En tant que root:  Est le meilleur choix pour une installation de production de Plone.  Installation est par défaut dans / usr / local / Plone.  Installateur unifié crée un utilisateur ''Plone'', le définit en tant que propri étaire des fichiers de données et configure Zope pour être exécuté avec l'u tilisateur effectif "Plone".  Les programmes et les fichiers de configuration sont la propriété de l'utilis ateur root, et ne devrait pas être accessible en écriture par le processus de Zope.  ... En tant qu'utilisateur normal:  Installation par défaut est dans $ HOME / Plone.  Peut être un bon choix pour tester ou développer une instance  ...
  • 22. Mohamed OUALI 22 Projet de fin d’étude 2009/2010 a.3 Stratégies de configuration de Zope : Le programme d'installation unifié offre deux stratégies différentes pour la configuration de votre Zope :  Le stand-alone instance Zope : est plus simple à comprendre, à intégrer et à contrôler, et est probablement le meilleur choix pour un simple environnement ou un environnement de test.  Un ZEO Client / Serveur : ZEO (Zope Enterprise Objects) vous permet d'avoir plusieurs processus clients Zope (ou des serveurs distincts) qui partagent un objet commun de processus de base de données du serveur. a.4 Exécution de l'installateur unifié (IU) : a.4.1 Téléchargement de lU (Installateur Unifié): Le téléchargement de l’archive de l’installateur unifié peut être fait de deux manière différentes : ­ Via la ligne de commande (Terminal): Se déplacer dans le répertoire où nous souhaitons enregistrer l’archive (par la commande # cd chemin/répertoire) et en tapant la commande suivant : # wget URL de votre archive Comme exemple : # wget http://launchpad.net/plone/3.3/3.3.1/+download/Plone3.3.1UnifiedInstaller.tgz Pour utiliser cette commande il est nécessaire, si on n’a pas l’url de l’archive, de le récupérer en passant la souris sur le lien de l’archive fourni dans le site officiel. ­ A partir du site officiel de plone : http://plone.org/products/plone/releases a.4.2 Décompressez l'archive : Maintenant, il faut choisir un répertoire de travail commode et décompresser l'archive de l'installateur unifié par : # tar zxf PloneVERSIONUnifiedInstaller.tar.gz Puis, il faut se déplacer dans le répertoire nouvellement créé pour lancer l’installation. a.4.3 Exécution de « install.sh » :
  • 23. Mohamed OUALI 23 Projet de fin d’étude 2009/2010 Avant d'exécuter l'installateur il faut s'assurer que les éléments suivants sont installés: ­ gcc, ­ g++, ­ GNU make, ­ GNU tar, ­ bzip2 et gzip. Si on a choisi l’installation avec les privilèges root, soit "su" pour devenir root ou de faire précéder ces commandes avec "sudo".  ZEO Installation : # . / install.sh Zeo  StandAlone Installation Zope: # ./install.sh standalone a.4.4 Fin de l’installation : Si l’installation a réussi, il est préférable de commencer la vérification en suivant les instructions affichées à la fin du processus d'installation (ou dans le fichier README.txt dans le répertoire d'installation). Le fichier README.txt contient des instructions qui suggèrent d'ajuster les ports et le mot de passe administrateur si c'est nécessaire. Pour se connecter à Plone les informations (user/password) fournies à la fin de l'installation et stockées dans fichier "adminPassword.txt" (chemin/.../zeocluster/adminPasswoed.txt) sont nécessaires. Si le début est réussi, en ouvrant un navigateur web et en naviguant sur http://localhost:PORTCHOISI (Si nous testons sur une autre machine, il faut remplacer "localhost" par le nom, ou IP, de notre serveur hôte), nous devrions voir un message de bienvenue de Zope. Pour la version 3 de Plone, un site Plone de test devraient être disponibles à http://localhost:8080/Plone (Pour la version 2, il faut d’abord ajouter le site Plone afin de pouvoir y accéder), et la Zope Management Interface à http://localhost:8080/manage (pour toutes les versions et si on n’a pas changé le port 8080). a.4.5 A quoi ressemble Plone ? Après avoir ajouté un site Plone à son instance ZOPE, l’utilisateur peut voir son site sous plusieur vue selon son rôle. La figure ci­dessous montre la vue anonyme affichée à un utilisateur non connecté :
  • 24. Mohamed OUALI 24 Projet de fin d’étude 2009/2010 Figure 2.4 : interface d’un site Plone b. Installation séparée : Pour installer chaque composante indépendamment des autres il faut suivre l’ordre suivant : 1. Créer un utilisateur zope et se connecter sous cet utilisateur : ­ # useradd new_user –p password ­ # su new_user 2. Télécharger un binaire Zope-XXX.tgz, le décompresser, lancer le script install puis lancer le script start.py, noter le mot de passe du compte admin et arrêter Zope avec le script stop.py. 3. Télécharger CMF­XXX.tar.gz, le décompresser et déplacer les répertoires CMFCore, CMFDefaut, CMFCalendar et CMFTopic dans lib/python/Product du serveur Zope. 4. Téléchargez Plone­tar.gz, le décompresser et déplacer les répertoires CMFPlone, DCWorkflow et Formulator dans lib/python/Product. 5. Démarrer ensuite Zope pour découvrir Plone. 3.3 Premiers Pas avec Plone : En suivant les instructions précédentes, il est possible dorénavant de se connecter avec notre navigateur préféré : ­ A la ZMI par l’url suivante : http://mon ip:Port (par défaut 8080). Une page semblable à la figure 2.1 doit apparaître.
  • 25. Mohamed OUALI 25 Projet de fin d’étude 2009/2010 Figure 2.1 : Page d’accueil de Zope ­ Au site Plone par l’url suivante : http://mon ip:Port/site-plone (un site ou une instance Plone est générée automatiquement par IU pour la version 3.X.X, alors que pour la version 2.X.X c’est à l’utilisateur de créer son propre instance). La page de la figure 2.1 n’est nullement spécifique à Plone : il s’agit de la page d’accueil de Zope. Il est ensuite nécessaire de se connecter à la ZMI, l’interface d’administration de Zope. Pour cela, il est possible de cliquer sur le lien Zope Managemement Interface ou d’utiliser l’url http ://mon ip :Port/manage. Le compte admin ainsi que le mot de passe fournit précédemment sont nécessaires. Une page semblable à la figure 2.2 doit apparaître.
  • 26. Mohamed OUALI 26 Projet de fin d’étude 2009/2010 Figure 2.2 : La ZMI A. Création d’une instance Plone : La création d’une instance Plone est réalisée à travers la ZMI. Il suffit de se placer à la racine de Zope et d’ajouter un objet de type ‘‘ Plone Site ’’. Comme le montre les figures : Figure 2.3 : Ajout d’un site Plone
  • 27. Mohamed OUALI 27 Projet de fin d’étude 2009/2010 Figure 2.4 : Formulaire d’ajout d’un site Plone Un formulaire est, composé de quelques champs, ensuite présenté semblable à la figure 2.4 : Les différents champs permettent de paramétrer notre objet Plone : ­ Id : l’identifiant de l’objet. Attention, il s’agit d’un identifiant qui doit être correct d’un point de vue url ; ­ Title : le titre associé à cet objet. Il n’y a pas de restriction ; ­ Membership source : Plone est un site collaboratif qui permet à chaque utilisateur de s’enregistrer. Les utilisateurs peuvent être stockés dans un objet acl_users local à notre Plone site ou dans l’objet acl_users global. Il est conseillé de laisser la valeur par défaut : create a new user folder ; ­ Description : cette description est utilisée dans certaine page afin d’expliquer le rôle de votre site Plone ; ­ Site Type : il existe deux types de site Plone. Les sites publics où les documents créés par les utilisateurs sont visibles de tous si l’on connaît leurs url et les sites privés où les documents restent privés tant que l’utilisateur ne les a pas rendus publics. Une fois le formulaire complété, la page d’accueil de Plone est alors présentée :
  • 28. Mohamed OUALI 28 Projet de fin d’étude 2009/2010 Figure 2.5 : Page d’accueil de Plone Plone est maintenant déployé, il est donc possible de découvrir son interface et ses nombreuses fonctionnalités. B. Tour d’horizon de Plone : Cette partie permet de découvrir les fonctionnalités de Plone est de prendre en main l’outil. B.1 Les utilisateurs : Un portail ou une application Plone distingue les visiteurs en différentes catégories offrant plus ou moins de fonctionnalités à ces derniers. - Les rôles : Plone est une application de type communautaire, dont on peut distinguer deux principaux acteurs : • Les visiteurs : ces acteurs ne sont pas authentifiés et ne sont pas des producteurs de contenu. Leur unique tâche est la consultation de pages. On leur assigne le rôle anonymous, le rôle le plus limité ; • Les membres : ces acteurs sont identifiés et disposent d’un compte sur le site Plone. Ils peuvent créer de nouveaux contenus, les modifier et publier du contenu selon leurs droits. Ils existent différents rôles leurs offrant plus ou moins de droits. Le rôle member permet de disposer d’un compte sur le site Plone. Le rôle Reviewer offre les droits membres et permet la modération de contenus. Les acteurs Reviewer sont couramment appelés modérateurs. Enfin, le rôle manager est équivalent à root sous Unix et l’utilisateur admin (généré par défaut) dispose de ce rôle. Par ailleurs, la vue du site est différente selon le(s) rôle(s). - L’authentification : Comme nous l’avons vu précédemment, il existe différents rôles. Pour essayer ces rôles, il convient de fermer le navigateur utilisé. En effet, l’authentification à la ZMI est une authentification HTTP et toutes les instances du navigateur
  • 29. Mohamed OUALI 29 Projet de fin d’étude 2009/2010 partage cette authentification. C’est pourquoi de nombreux utilisateurs de Zope utilisent deux navigateurs distincts : l’un avec le rôle manager et l’autre pour visualiser avec un autre rôle les modifications apportées. Après avoir fermé et relancé le navigateur, l’url http ://mon ip :8080/site-plone présente le site Plone sous la vue des anonymous. Figure 2.6 : Vue anonyme du site Plone Cette vue anonyme permet de visiter les quelques pages fournies par un site Plone par défaut. Il est aussi possible de se connecter à nouveau en tant qu’admin grâce à la portlette d’authentification (cadre bleu à gauche nommé login) ou créer un nouvel utilisateur membre avec le lien nouveau utilisateur ? de ce même slot. Dans ce cas, un formulaire d’inscription est présenté :
  • 30. Mohamed OUALI 30 Projet de fin d’étude 2009/2010 Figure 2.7 : Formulaire d’inscription Après l’inscription, un message de bienvenue vous est alors présenté et vous permet de vous connecter sous ce nouvel utilisateur. B.2 Les actions : Cette section a pour objectif de réaliser une présentation fonctionnelle de l’outil Plone. - Le menu principal : Le menu principal est constitué de divers onglets comme le montre la figure 2.8. Figure 2.8 : menu principal Chacun de ces onglets est un lien vers une url : • accueil : la page d’accueil • members : la page listant les membres du site • news : la page des actualités du site • events : la page des événements du site Il s’agit en fait d’actions. Cette notion sera décrite plus longuement dans ce qui suit. - La navigation :
  • 31. Mohamed OUALI 31 Projet de fin d’étude 2009/2010 La navigation est un aspect indispensable au bon fonctionnement d’un site. Plone offre différents éléments permettant de faciliter la navigation. La breadcrumbs ou barre de navigation est une liste indiquant l’endroit où l’on se trouve sur le site et dont chacun des éléments qui constituent le chemin est cliquable. La figure suivante permet de comprendre immédiatement : Figure 2.9 : breadcrumbs Par ailleurs, un autre élément est fourni afin d’offrir un déplacement rapide dans l’arborescence d’un site Plone : la boite (un slot) de navigation. Elle se présente sous la forme suivante : Figure 2.10 : boite de navigation B.3 La gestion du contenu : Plone s’appuie sur les concepts Zope pour la gestion de contenu et sa base d’objets. Toutefois, les objets disponibles pour la création de contenu sont distincts de ceux présentés dans la ZMI. - La création de contenu : La création de contenu est une opération disponible aux membres de votre site et celle­ci est limitée à certains espaces. L’espace privilégié pour cette opération est le répertoire mon dossier. Par défaut, Plone fournit les types suivants :  Document : ou page web est le type de contenu le plus utilisé. Il permet de stocker un titre, une description et un texte. Il est possible de lui associer des métadonnées ;  Fichier : le fichier est le document qui permet de placer le plus facilement des fichiers Word ou PDF en téléchargement sur le site ;  Evénement : un événement est un objet caractérisé par sa date. Cet objet s’il est publié apparaît sur le calendrier fourni dans le slot calendrier ;  Actualité : une nouvelle est un objet permettant de définir une actualité. Ces dernières sont visibles au travers de la page news qui les classe par ordre de publication ;
  • 32. Mohamed OUALI 32 Projet de fin d’étude 2009/2010  Image : juste une image ;  Lien : un lien vers une autre page. Il peut être utilisé pour ranger ses objets.  Dossier automatique : ‘Topic’ ou ‘smart folder’ est un thème permet de définir une page virtuelle offrant un listing des fichiers ou documents sélectionnés au travers de critères définis ;  Dossier : un répertoire. Pour créer un nouveau document, il suffit se placer dans un répertoire où l’on possède des droits suffisants, et de disposer de l’affichage du contenu. Une liste déroulante vous permet alors de choisir un type de contenu comme le montre la figure 2.11. Figure 2.11 : Ajout d’un élément - Les rôles locaux : Les rôles locaux sont une fonctionnalité avancée de la ZODB. La ZODB, base d’objets de Zope, dispose de mécanisme de sécurité semblable à un système de fichiers. Ainsi, lorsqu’un répertoire est crée, seul le propriétaire peut créer du contenu et seul un modérateur peut valider les documents. Toutefois, il peut être judicieux pour certaines raisons d’autoriser localement un utilisateur à disposer de droits particuliers. Cette fonctionnalité est apportée par les droits locaux. Les rôles locaux peuvent être définis dans les répertoires. Il suffit de sélectionner l’onglet partage puis de sélectionner les utilisateurs et le rôle qu’on désire leur attribuer. Il est ensuite possible de supprimer les rôles attribués comme le montre la figure2.12:
  • 33. Mohamed OUALI 33 Projet de fin d’étude 2009/2010 Figure 2.12 : Rôles locaux Remarque : il existe une interface dans la ZMI permettant de contrôler de manière fine les rôles locaux. - Les métadonnées : Les métadonnées ou les données sur les données sont une caractéristique intéressante de Zope. Il s’agit d’informations que l’on peut attacher au contenu. Les métadonnées peuvent être le titre, l’auteur, la date de création d’un document, etc. Ces informations permettent de caractériser de manière fine les contenus. Elles sont notamment utilisées lors de recherches. Les métadonnées peuvent être définies avec l’onglet propriété d’un document comme le montre la figure 2.13 :
  • 34. Mohamed OUALI 34 Projet de fin d’étude 2009/2010 Figure 2.13 : les métadonnées - Le workflow : Le workflow est l’un des points forts de Plone. Tout document peut être en effet être attaché à un workflow. Par défaut, Plone fournit plusieurs worflows :  folder workflow : le workflow des répertoires est un workflow simplifié ;  plone workflow : il s’agit du workflow classique créateur/modérateur. Les workflows permettent d’associer aux documents des états et de gérer les transitions entre les états. Par défaut, les workflows fournis avec Plone utilisent les états suivants : • Privé : le document n’est accessible qu’à son créateur ; • Visible : le document est accessible si on dispose de son url ; • En attente : le document attend une modération pour être public ; • Public : le document est accessible et rendu visible par un certain nombre d’éléments Le fonctionnement du workflow est simple. Il suffit de sélectionner l’objet puis de choisir l’onglet Etat. Cet onglet présentant l’état de l’objet, permet de choisir une transition et ainsi de faire passer un objet d’un état à un autre. Remarque : Seules les transitions autorisées sont affichées comme le montre la figure 2.14 :
  • 35. Mohamed OUALI 35 Projet de fin d’étude 2009/2010 Figure 2.14 : transitions autorisés Ainsi, pour faire apparaître la transition Publish, il faut disposer du droit Review Content. Par ailleurs, le travail de validation est simplifié pour le modérateur. En effet, lorsque ce dernier est connecté, il dispose d’une action nommée pending lui permettant de sélectionner les objets en attente et de les modérer. C. Les produits Plone : Plone est un produit Zope extensible, c’est une maquette évoluée qu’on peut étendre ses fonctionnalités et ses contenus grâce à l’ajout de nombreux produits. Cependant, ces produits ne sont pas obligatoirement compatibles avec n’importe quelle version de Plone. Pour cela, il est nécessaire, avant de se plonger dans l’installation des produits, de bien lire les fichiers install.txt et Readme.txt. C.1 AddonProducts : Les produits complémentaires ou add­on products sont les produits qu'on peut télécharger, installer et tester gratuitement (sous la licence GPL) comme: ­ Les produits qui peuvent être utilisés pour le traitement des photos, création des galeries photo et l'observation de diaporamas de photos sur les sites Plone : PloneSWFSlideshow, ATPhoto, FriendlyAlbum , etc. ­ Les produits Plone qui peuvent être utilisés pour créer son propre site de partage vidéo et la manipulation du contenu vidéo sur lui comme SevenVideo, ATVideo, etc. ­ Les produits Plone utilisés pour modifier l’apparence, ou le look, de son site web Plone. Ces thèmes sont destinés à rendre le site unique et spéciale: Lite Plone skin, Schools Plone Theme, etc. ­ Les produits Plone qui permettent de créer plusieurs versions d'un même contenu ou de faire un changement à une copie de l'objet de publication, tout en laissant intacte la version originale publiée : PVSForPlone, CMFEditions, StagingAddOn, etc. ­ Les outils qui peuvent être utilisés pour créer son propre skin ou look pour son site plone. Ils mettent en œuvre certaines fonctionnalités visuelles spéciales, changer les couleurs ou des bordures de forme : DIYPloneStyle, Plone Skin Dump , etc. ­ Les outils développés dans le cadre du projet CommunesPlone : PloneMeeting, TeleServices, urban, CPEtatcivil, etc.
  • 36. Mohamed OUALI 36 Projet de fin d’étude 2009/2010 C.2 Code source : Le code source des produits développés dans le cadre du projet CommunesPlone est contenu dans un outil de gestion des sources appelé SVN, diminutif de SUBVERSION. Le SVN est accessible à l'adresse http://svn.communesplone. org/svn/ . En utilisant un navigateur internet avec l'adresse susmentionnée, vous pourrez visualiser les produits présents dans le projet ainsi que leur arborescence mais vous ne pourrez pas télécharger globalement un produit. Afin de copier localement un produit et son arborescence, il est nécessaire d'utiliser un client subversion. Sous Linux, vous trouverez parmi tous les packages disponibles, un package nommé "Subversion", à installer (# sudo aptget install subversion). Sur le svn, chaque produit est localisé sous l'adresse : http://svn.communesplone.org/svn/communesplone/ Dans chaque produit, il y a un dossier :  "trunk": qui correspond à la dernière version en cours de développement.  "branches": qui correspond à des version particulières ou en cours de développement.  ''tags'' : contenant des versions stables bien définies. Une fois le client installé, vous devez, dans une fenêtre "invite de commande", vous positionner dans le répertoire Products de votre instance Plone. Pour installer un outil on tape la commande suivante : svn co http://le chemin de l’outil dans le serveur svn/ destination Cette commande correspond au téléchargement du contenu de l'URL dans le répertoire de destination qui sera créé. Pour mettre à jour par la suite un produit, il est nécessaire de se positionner dans le répertoire du produit et de taper la commande : # sudo svn up Une fois un produit copié sur le système de fichiers, on redémarre l'instance et on se rendre dans le panneau de configuration pour installer le produit. C.3 Installation d'un produit : L'installation d'un outil se fait de manière classique via le panneau de configuration de Plone. En sélectionnant Ajout/Suppression de produit dans le menu du panneau de configuration (configuration du site Ajout/Suppression), un écran présente les produits que l'on peut installer et les produits qui le sont déjà.
  • 37. Mohamed OUALI 37 Projet de fin d’étude 2009/2010 Figure 2.15 : Ajout/suppression des programmes Il suffit dès lors de cocher la case se trouvant à côté du nom du produit et de cliquer sur le bouton "Installer". D. L’architecture de Plone : D.1 Les outils : CMF a introduit le concept des outils. Il en fournit d’ailleurs un grand nombre. Plone s’appuie sur ces outils et introduit quelques nouveaux outils pour simplifier certains concepts. Par ailleurs, il est à noter qu’il existe d’autres produits offrant de nouveaux outils et que la figure ci­dessous ne montre pas tous les outils :
  • 38. Mohamed OUALI 38 Projet de fin d’étude 2009/2010 Figure 2.16 : outils Plone ­ MailHost : Est un formulaire permettant de configurer le SMTP qui va être utilisé pour envoyer les emails lors des oublis de mots de passe par exemple. - Members : Dossier où chaque utilisateur aura son espace personnel *** (si autorisé voir dans la suite du document pour plus d’informations sur la configuration de Plone) ­ acl_users (User Folder) : Dossier contenant la liste des utilisateurs du portail. On ajoute un utilisateur en cliquant sur "Add" on doit alors entrer son nom d’utilisateur (sans espace) son mot de passe et la confirmation de ce dernier. ­ portal_actions (Contains custom tabs and buttons) : Les actions qu’on trouve ici sont celles qui sont appelées par le header des pages : ­ portal_calendar (Controls how Events are shown) : L’onglet intéressant dans cette partie est "Configure". On va pouvoir définir quel type d’objet sera visible dans le calendrier. Pour qu’un type soit vu dans le calendrier (en plus de configurer cet onglet) il faudra remplir les champs début (date de publication) et fin (date d’expiration) de chaque objet que l’on veut voir dans le calendrier. On va aussi choisir si on veut utiliser **** les sessions pour se rappeler des états du calendrier.
  • 39. Mohamed OUALI 39 Projet de fin d’étude 2009/2010 - portal_catalog (Indexes all content in the site) : Cette partie d’un Site Plone est très utile pour connaître le contenu du site. - L’onglet Contents : Ce dossier contient un objet appelé "Vocabulary" qui est en fait le recensement de tous les mots, numéros... écrits dans les pages du site. - L’onglet Catalog : Cet onglet permet de gérer les items du catalogue du site. En cliquant sur un des items de type /id_du_portail/x/... on obtient une page de renseignements très complets sur cet objet du portail. Ces informations renseignent entre autres sur : le metatype, les dates de création, de parution, d’expiration, le créateur, l’id de l’objet, l’état, la description, le type, le titre, les allowedRolesAndUsers ... - L’onglet Properties : Donne la valeur de title pour l’objet portal_catalog. - L’onglet Indexes : Il présente le résultat de l’indexation, suivant des types par exemple : – les FieldIndex donc les champs (pour le type, les dates d’expiration, de création...), – les mots clés (KeyWordIndex), – les textes (TextIndex) pour les descriptions ... - L’onglet Metadata : Contient les types de données qui vont être cataloguées (vus dans l’onglet Indexes). - L’onglet Find Objects : Permet de trouver des objets et / ou bien de cataloguer des types d’objets suivant des champs correspondant aux types, ids, contenus, droits, permissions... - L’onglet Advanced : Permet la gestion du catalogue en le mettant à jour (réindexation) le nettoyer pour le recréer ensuite. Une partie de cet onglet permet aussi de gérer les "subtransactions". Cela entraine une réduction de la demande en mémoire du catalogue, au détriment de la rapidité de recherche. - L’onglet Undo : Annuler des transactions (les défaire) - L’onglet Security : La sécurité sur l’objet portal_catalog - L’onglet Ownership : L’appartenance de l’objet portal_catalog. - L’onglet Actions : Si l’on veut ajouter des actions possibles correspondant à cet objet portal_catalog.
  • 40. Mohamed OUALI 40 Projet de fin d’étude 2009/2010 ­ portal_memberdata (Handles the available properties on Members) : Permet de gérer des données sur chaque utilisateur, rajouter des actions de gestion de membres ... ­ portal_membership : - L’onglet Configuration : La partie haute de cet onglet concerne les rôles des membres du portail (manager, reviewer...). La partie basse de cet onglet va autoriser ou non la création lors de l’ajout d’un utilisateur d’un espace réservé à cet utilisateur. - L’onglet Actions : La catégorie de ces actions est "user", c’est à dire qu’elles ne concernent qu’un utilisateur authentifié. - portal_migration : Cet outil sert lorsqu’une nouvelle version de Plone sort. Le reste du temps on a le message que notre objet Plone site est up to date. La procédure en cas de nouvelle version de Plone, est d’extraire de l’archive la nouvelle version. D’arrêter Zope, puis de copier le contenu de CMFPlone­Version, sauf Active Pack si on a un Zope de type 2.6.x, dans chemin_de_Zope/lib/python/Products (afin de remplacer les anciens scripts) et ensuite d’aller dans portail fait sous l’ancienne version de Plone, de se rendre dans portal_migration qui dit cette fois que le portail est out of date et il faudrait cliquer sur upgrader. Remarque : la réussite de la migration dépend aussi de la compatibilité des produits installés avec la nouvelle version de Plone. ­ portal_registration (Handles registration of new users) : Dans cette section on a une seule action par défaut : autoriser ou non l’inscription de nouveaux utilisateurs au portail. Cocher ou décocher la case à gauche de l’interrogation "Visible ?" permet à cette action d’être réalisée dans le portail. ­ portal_skins (Control skin behaviour (search order etc) : Les dossiers de portal_skins sont : - Images : Ce dossier contient les images de Zope (Le logo de Zope que l’on voit dans la ZMI par exemple). - Content :
  • 41. Mohamed OUALI 41 Projet de fin d’étude 2009/2010 Dans ce dossier on trouve les scripts d’édition dont les noms sont du type "métatype_edit" et des dtml­method pour l’affichage, l’édition des métatypes dans un objet de type CMF Site. - control : Ce dossier contient les scripts et quelques dtml­method correspondant aux actions (folder_cut par exemple) réalisables sur les objets d’un site de type CMF Site. - custom : Ce dossier est spécial. C’est le seul dossier de portal_skins (en dehors de la racine de portal_skins ) où l’on possède le droit d’écriture. C’est donc le seul endroit où l’on va pouvoir créer des objets images, des dossiers, des ZPT (Zope Page Templates), etc. Ce dossier est spécial aussi car pour modifier (customiser / personnaliser) un objet (ZPT, dtmlmethod...) existant, on va ouvrir l’objet à modifier et l’interface de Plone va proposer un bouton appelé customize. A la gauche de ce bouton se trouve une liste déroulant qui permet de choisir l’endroit où va être copié l’objet à modifier. Par défaut cette destination est le répertoire custom. Si l’on crée d’autres répertoires dans custom alors on pourra les choisir comme destination de la copie de l’objet. Ainsi on comprend que pour que la modification d’un objet prenne effet, le dossier custom sera lu avant les autres répertoires de portal_skins. - generic : On va trouver dans ce dossier les formulaires (d’édition, d’ajout, des métadonnées) ainsi que les RSS d’un objet de type CMF Site. - no_css : Ce dossier ne contient qu’un objet stylesheet_properties qui doit correspondre à la version imprimable des pages. - nouvelle : Ce dossier contient deux objets, l’un intitulé nouvelle_stylesheet et l’autre stylesheet_properties. Ils correspondent à des feuilles de styles.**** Les feuilles de styles seront détaillées dans le chapitre "Design du site" dans la section X.2 intitulée "les css". ***. - plone_3rdParty : Contient des objets de type Filesystem Directory View correspondant à des produits Zope intégrables dans un Plone site (CMFCalendar, CMFCollector, CMFTopic, CMFWeblog, CMFWiki, ratings). - plone_content : Dans ce dossier on trouve les ZopePageTemplates correspondant à l’affichage des objets des différents métatypes ainsi que les métatype_edit_form - plone_ecmascript : Les scripts javascripts : plone_formtooltips.jp et plone_javascripts.js. - plone_forms :
  • 42. Mohamed OUALI 42 Projet de fin d’étude 2009/2010 Dans ce dossier on trouve les ZopePageTemplates d’affichage des objets des différents métatypes ainsi que les actions_form. Par exemple, personalize_form ou bien member_search_form ou encore login_form ... On va aussi trouver un script appelé logged_in (permet le login d’un utilisateur avec getAuthenticatedMember) - plone_images : On va y trouver les objets images : le logo de plone, les metatype_icons ... Toujours la même chose, pour les personnaliser : les ouvrir, cliquer sur Customize (l’objet est alors copié dans le dossier custom, on nous propose d’entrer un titre, de parcourir le contenu d’un disque et d’uploader l’image que l’on souhaite avoir en remplacement). - plone_scripts : Comme son nom l’indique ce dossier contient des scripts python tels que la réalisation d’actions concernant les objets du Plone Site (folder_delete) ainsi que des scripts pour le classement des objets (filter et sort), la création des objets (createObject), la fonction Undo pour l’annulation des modifications effectuées...Ce dossier contient aussi le dossier form_scripts qui lui contient les scripts de validation d’un formulaire d’édition/création d’un objet tel que le validate_id et les scripts servant à l’édition d’un métatype en particulier. - plone_styles : Contient un stylesheet_properties, plonePrint.css, plonePresentation.css, plone.css, ploneNS4.css et des dossiers contenant les mêmes feuilles de styles ainsi que des images de navigation (user, bullet...) sur un autre thème que celui par défaut. - plone_templates : On retrouve entre autres le footer et le header de toutes les pages dans ce répertoire. Dans le header on trouve : – appel de la skin du site – la searchBox – le logo du site – les portal_tabs – les actions de la personnalBar – le chemin de la page en cours Dans le footer on trouve des références à Plone, et un logo plone_powered. Dans ce répertoire, on va aussi avoir les ZopePageTemplates (ZPT) correspondant à " main_template ", " folder_contents ", etc. Ce dossier contient aussi un dossier qui contient les ZopePageTemplates des slots (carrés situés à gauche et à droite du centre de l’affichage du site Plone) tels que news_slot qui va afficher les 5 derniers titres des 5 dernières news comme des liens cliquables. On y trouve aussi un script python
  • 43. Mohamed OUALI 43 Projet de fin d’étude 2009/2010 "navigation_tree_builder" qui va construire le slot navigation_tree en fonction de ce qui a été configuré dans le dossier portal_properties dans l’espace navtree_properties. - plone_wysiwyg : Il contient wysiwyg_popup et wysiwyg_support. - topic : Ce dossier contient les scripts, ZPT et les dtml­method correspondant à l’ajout, affichage des commentaires (affichés si autorisés). - zpt_calendar : La version du dossier "calendar" mais il est réalisé avec des ZPT et des scripts python. - zpt_content : La version du dossier content mais il est réalisé avec des ZPT et des scripts python. - zpt_control : La version du dossier control mais il est réalisé avec des ZPT et des scripts python. - zpt_forum : Apparait si on a ajouté le produit CMFForum, on y trouve les ZPT et scripts python corespondants. - zpt_generic : La version du dossier generic mais il est réalisé avec des ZPT et des scripts python. ­ portal_undo (Defines actions and functionality related to undo) : Cette partie du Plone Site est utilisée pour défaire les actions réalisées. Dans le premier onglet "Actions" deux actions sont proposées : liste des changements ou bien une annulation rapide de la dernière modification. L’onglet Undo liste toutes les modifications depuis la création du portail. ­ portal_workflow (Contains workflow definitions for your portal) : Cette partie du Site Plone contient les actions correspondant à l’action de relecture puis validation des contenus ... La plus grande partie du workflow intégrée à Plone est déjà paramétrée.
  • 44. Mohamed OUALI 44 Projet de fin d’étude 2009/2010 Chapitre III : LE PROJET PLONEGOV Ce chapitre est une présentation générale du projet PloneGov. Il est divisé comme suit :  Présentation et objectifs du projet  Historique du projet  Le choix de l’open source  Un projet au cœur de l’Europe  Aspects techniques  Sites web  Applications métiers
  • 45. Mohamed OUALI 45 Projet de fin d’étude 2009/2010 III.1. PRESENTATION & OBJECTIFS DU PROJET: L’Union européenne compte plus de 100.000 villes et communes dont la plupart n’ont ni les ressources budgétaires ni les ressources en terme de compétences pour mettre en place un projet d’e­government. Toutes pourtant sont confrontées aux mêmes types de besoins, aux mêmes difficultés. C’est ce constat qui est à la base du projet PloneGov, un projet qui s’étend déjà au­delà des frontières de l’Union européenne elle­même. Le projet PloneGov a pour objectif le développement d'applications informatiques par et pour les collectivités locales. Ce projet offre la possibilité aux villes et communes mais également à tous les autres niveaux de pouvoirs publics, par la mutualisation de leurs moyens humains et matériels, de retrouver une plus grande indépendance technologique et de construire des outils véritablement adaptés à leurs besoins. Le nombre de partenaires impliqués dans le projet PloneGov ne cesse de s’agrandir. Il touche aujourd’hui plus de 100 collectivités. Tirant sa force de son ouverture, PloneGov a tissé des liens de coopération et de mutualisation avec des collectivités locales issues de nombreux pays mais aussi avec des PME actives dans la communauté en Europe, en Afrique et en Amérique latine. Aujourd'hui, de nombreuses applications métiers et web ont été finalisées ou sont en cours de finalisation par les différents partenaires. Grâce à PloneGov, même les plus petites collectivités territoriales sont à même de réduire leurs coûts de fonctionnement, d’améliorer leurs méthodes de travail et leur efficacité et de profiter des avancées de l’e­government en sautant la facture numérique. III.2. HISTORIQUE DU PROJET : Parti de deux villes, Seneffe et Sambreville, le projet CommunesPlone a connu un agrandissement rapide jusqu’à toucher aujourd’hui plus de 80 villes et communes en Belgique et en France, un gouvernement régional et de nombreuses PME. Plusieurs autres villes, dans différents pays, sont en phase d’évaluation pour intégrer le projet d’ici peu. Le projet reste très dynamique en Wallonie où atteint déjà plus de 30% des collectivités. Le nombre de modules développés ne cessent de croître et touche des domaines aussi variés que la gestion des conseils municipaux, l’authentification par eID, le site communal clé sur porte, le module de co­marquage avec la Région wallonne, les services en ligne, etc. Grâce à l’organisation d’un workshop les 31 mai et 01 juin 07, CommunesPlone a commencé à mutualiser ses développements avec les deux principaux projets d’e­government européens basés sur Plone, UdalPlone et Plonegov.ch. Ces trois projets se dirigent désormais vers un seul, PloneGov. Ce dernier touche, en 2007, 65 municipalités belges, 20 françaises, 18 espagnoles, 2 suisses dont la
  • 46. Mohamed OUALI 46 Projet de fin d’étude 2009/2010 capitale fédérale, Berne, 1 Argentine et 1 américaine ainsi que les gouvernements de la Région Wallonne et de la Communauté française Wallonie­Bruxelles. Le succès du projet CommunesPlone est le résultat d'une étroite collaboration entre des collectivités territoriales belges et françaises, la communauté Open Source Plone et Zea Partners, un réseau international de PME. Copiant son organisation sur celle des grands projets open source, CommunesPlone est une véritable communauté où toutes les propositions de collaborations sont les bienvenues. Toutes les collectivités sont donc invitées à participer à ce projet dont la structure est extrêmement décentralisée. CommunesPlone est également ouvert à la collaboration avec d’autres projets comme UdalPlone et PloneGov.ch. Un facteur essentiel du succès réside également dans la similarité des besoins entre les acteurs cibles du projet. La plupart des collectivités font en effet face à des besoins extrêmement semblables et les résoudre chacun de son coté peut paraître complètement absurde. III.3 LE CHOIX DE L’OPEN SOURCE : Une bonne compréhension du modèle de développement open source et des facteurs qui génèrent la valeur ajoutée sont nécessaires pour structurer un projet tout en tenant compte de son potentiel économique. Selon le responsable informatique de sambreville (Joël Lambillotte), le choix a été fait après l’évaluation du marché des solutions propriétaires et open source : les coûts étaient prohibitifs côté ‘propriétaire’, alors que, côté ‘open source’, les coûts étaient intéressants et le CMS Plone a satisfait à tous les tests d’intégration et réussi à séduire plusieurs communes. Définition : Un logiciel open source est un logiciel qui donne à toute personne qui en possède une copie le droit de l'utiliser, de l'étudier, de le modifier et de le redistribuer. la valeur ajoutée des projets open source : ­ Mutualisation des développements et réutilisation de développements existants : Une bonne connaissance des développements en cours permet d’éviter de réinventer la roue. Cette coordination technique permet dans de nombreux cas de réutiliser l’équivalent d’années de développement, réduit les coûts et accélère la production de résultats.
  • 47. Mohamed OUALI 47 Projet de fin d’étude 2009/2010 ­ Mise en commun des ressources humaines : Par l’échange de savoir faire, formation réciproque et complémentarité des compétences. Augmenter le potentiel humain demande la réalisation régulière d’activités collectives visant à échanger le savoir faire et ouvrir l’expérience aux nouveaux participants. ­ Qualité de l’intégration : Une intégration de qualité et générique demande une connaissance en profondeur des logiciels. Réaliser une bonne intégration prend du temps et demandes de l’expertise de haut niveau. Cet investissement est rentable car il réduit la quantité de code non générique à maintenir et facilite les migrations du logiciel. ­ Ouverture à la collaboration internationale et facteur d’échelle : De nombreux pouvoirs locaux ont des besoins très similaires. La collaboration avec d’autres régions ouvre un potentiel d’économie d’échelle important et la possibilité d’accéder à des financements. Développer un projet demande d’apporter un soin particulier à la communication et à la circulation d’une information de qualité. ­ Participer activement à une Communauté est un investissement rentable : Le rapport Flossimpact (impact économique des logiciels libres en Europe ­ www.flossimpact.eu) met en évidence que la participation active à une communauté open source apporte un avantage compétitif aux personnes et organisations impliquées. Cette valeur ajoutée est bénéfique autant pour les PME offrant des services basés sur le code que pour les utilisateurs en réduisant leurs coûts de développement et maintenance III.4 UN PROJET AU CŒUR DE L’EUROPE : Le projet PloneGov s’inscrit à plusieurs titres parmi les objectifs stratégiques de l’Union européenne en matière d’e­government défini par l’i 2010 (société européenne de l'information pour 2010) initiatives. A ce titre, il apporte les avantages de l’économie immatérielle aux petites collectivités qui n’auraient pas pu y prétendre auparavant en l’absence de moyens humains et financiers suffisant :  Ne laisser aucun citoyen a l’arrière : o 100.000 villes et régions : L’Union européenne représente un gigantesque ensemble de près de 500 millions d’habitants
  • 48. Mohamed OUALI 48 Projet de fin d’étude 2009/2010 regroupés en 100.000 villes et régions. CommunesPlone est un des rares projets qui s’adresse prioritairement à ces petites collectivités territoriales et qui leur offre la possibilité de rentrer de plain­pied dans l’ère numérique, d’y apporter les bienfaits, notamment économiques, de l’e­gov. En 2008, plus de 25% des communes wallonnes auront déjà adhéré au projet. o e-inclusion : Le projet est susceptible, par son implication auprès des collectivités territoriales, connues pour leur proximité avec les citoyens, de renforcer de façon significative l’e­inclusion2.  Faire de l’efficacité des services publics une réalité : o Efficacité : Grâce à CommunesPlone, les petites collectivités territoriales sont à même de réduire leurs coûts de fonctionnement, d’améliorer leurs méthodes de travail et leur efficacité. o Adaptabilité : La structure technique de Zope et Plone sur lesquels sont basés CommunesPlone permet l’adjonction constante de nouveaux modules interconnectables et interchangeables. Cette flexibilité fournit au projet une adaptabilité hors­norme et une assurance d’être constamment apte à s’adapter aux nouvelles conditions d’évolution technique.  Réunir les partenaires-clé : o Partenaire des PME : CommunesPlone est un projet qui est mené par et pour les collectivités territoriales. Leurs partenaires naturels sont les petites PME locales qui disposent d’équipes et de méthodes de travail semblables aux leurs. Le projet implique dès lors de nombreuses PME dans plus d’une dizaine d’états en Europe mais aussi dans des pays tiers et notamment ACP. En cela, CommunesPlone favorise l’emploi local. o Partenaire des communautés open source : Les développeurs de collectivités territoriales impliquées dans le projet CommunesPlone sont en étroite interaction avec les communautés open source. Cette interaction est un important facteur d’innovation, d’efficacité et de dissémination. o International : CommunesPlone est un projet ouvert à la collaboration internationale qui, par essence, transcende les frontières :  Les partenaires initiaux ont tout intérêt à ce que le projet acquière une dimension internationale et s’enrichisse des expériences de chacun. En effet, plus les contributeurs seront nombreux, plus grand sera le retour sur investissement qu’ils pourront espérer.
  • 49. Mohamed OUALI 49 Projet de fin d’étude 2009/2010  Rien ne s’oppose à cette internationalisation. En effet, le mode de fonctionnement des collectivités territoriales, au contraire de celui des états, ne diffère pas fondamentalement d’un pays à l’autre.  Les techniciens du projet ont tout intérêt à se tenir au courant de ce qu’il se passe au­delà de leurs frontières. En effet, divers développements menés par d’autres projets peuvent très certainement être réutilisés mais cela implique de pouvoir passer les frontières physiques et psychologiques afin d’aller à la rencontre de ces autres projets. Cette opportunité, les techniciens de CommunesPlone l’ont bien comprise. o Logique de « bottom up » : CommunesPlone dépasse les frontières mais passe également au­delà des hiérarchies qui divisent généralement les différents niveaux de pouvoirs. Rien ne s’oppose à ce que le projet qui est aujourd’hui principalement destiné aux petites collectivités territoriales ne s’étendent à d’autres niveaux de pouvoirs. Des gouvernements régionaux et leurs parlements, des provinces ont ainsi contacté les gestionnaires du projet pour évaluer la faisabilité d’adapter certaines applications à leurs propres services.  Renforcer la démocratie participative et représentative : o Démocratie participative : Les outils fournis par CommunesPlone permettent aux collectivités de favoriser sur leur territoire une culture de démocratie participative saine et durable par le biais de l’e-democracy. En effet, elles sont désormais à même de diffuser intégralement et en direct les séances du conseil communal, les procès­verbaux des différents réunions, les ordres du jour, de lancer des forums accessibles à la population, d’assurer la promotion des conseils consultatifs, etc. Internet reste et restera un lien essentiel entre une collectivité et ses citoyens. o Fracture numérique : Le projet CommunesPlone s’engage dans la lutte contre la fracture numérique en Europe et au­delà :  Le projet CommunesPlone offre la possibilité aux multiples commerces, entreprises, écoles, associations, etc., situés sur le territoire des collectivités participantes de disposer d’une page web regroupées sous une URL commune. L’infrastructure technique permet en effet de créer sans aucune compétence technique particulière une nouvelle page, de la mettre à jour en y ajoutant textes et images, d’y tenir un agenda, etc. afin de combattre directement la fracture
  • 50. Mohamed OUALI 50 Projet de fin d’étude 2009/2010 numérique et de favoriser la promotion et l’activité de la vie économique et associative locale.  Par l’intermédiaire des coopérations nord­sud établies par les villes et régions, CommunesPlone dispose de la possibilité de combattre la fracture numérique qui risque de renforcer encore les inégalités économiques séparant les sociétés industrialisées des économies émergentes. L’infrastructure développée par CommunesPlone peut en effet être adaptée et installée au profit des collectivités de ces pays sans aucuns frais de licence.  Mettre en place des outils stratégiques a haut impact : o Carte d’identité électronique : CommunesPlone prend en compte les notions d’e­privacy et d’e­security. Dès l’origine du projet, ses techniciens ont intégré les fonctionnalités offertes par les nouvelles cartes d’identité électroniques belges. L’e­ID permet de sécuriser totalement les connections mais aussi les données personnelles qui pourraient être récoltées sur les utilisateurs. L’e­ID permet un usage éthique de l’Internet en matière de respect de la vie privée. III.5 ASPECTS TECHNIQUES : Le projet CommunesPlone est construit sur un vaste logiciel, Plone. Il s’agit d’un projet centré sur la création d’un des meilleurs CMS open source et mettant l’accent sur l’aspect démocratique (égalité des chances, méritocratie), sur le style (attractivité, facilité d’utilisation), sur l’adaptabilité (personnalisation de types de contenus, possibilité d’ajout de nombreux modules). D’un point de vue organisationnel, Plone a une forte expérience dans la consultance professionnelle; nombre de ses développeurs travaillant pour des petites entreprises d’intégration. Plone est à 100 % open source. Tous les éléments qui rentrent dans sa construction sont entièrement libres et compatibles avec la licence GPL. Le langage de programmation python est généralement reconnu comme un des environnements les plus productifs et les plus professionnels pour les organisations importantes. Cela fait déjà 9 années que Zope mène le marché des serveurs d’application open source avec la reconnaissance de nombreux ** awards **. Plone s’est implanté quant à lui comme étant le CMS open source leader et comme l’un des produits, open source ou commercial, parmi les plus solides. 5.1 Site web :
  • 51. Mohamed OUALI 51 Projet de fin d’étude 2009/2010 Le CMS Plone permet de mettre en ligne un site Internet communal avec toutes les fonctionnalités attendues (gestion décentralisée des pages, gestion des photos, outil de sondage, outil de géo localisation, forum, téléchargement de fichiers, moteur de recherche,…). Toutefois, un site Plone ne répond pas nécessairement aux attentes que l’on pourrait avoir pour un site communal tant d’un point de vue graphique que du point de vue de la navigation. Pour permettre à des communes qui découvrent cette technologie de mettre le pied à l’étrier rapidement, Communesplone a conçu un produit site Internet, dénommé CPSkin, orienté site communal. Le produit comprend une interface qui permet de modifier plusieurs propriétés du site (couleur, images). Il comprend une navigation ainsi qu’un graphisme par thème. Une refonte du header du site pour afficher le logo à gauche ainsi qu’un banner illustrant la partie consultée à droite. Le banner peut ainsi changer en fonction des pages consultées. Plusieurs communes utilisent actuellement ce produit grâce auquel un site communal de qualité peut ainsi être mis en ligne en quelques semaines. Remarque : le produit, site communal, compatible avec Plone2.X est CPSkin2 alors que pour Plone 3, CommunesPlone a développé un produit beaucoup plus évolué dénommé CPSkin3. Les figures ci­dessous donnent une idée sur le résultat de l’utilisation de ces deux produits : Figure 3.4 : site Plon avec CPSkin2
  • 52. Mohamed OUALI 52 Projet de fin d’étude 2009/2010 Figure 3.5 : site Plone avec CPSkin3 5.2 Applications métiers : CommunesPlone vise à adapter Plone aux besoins spécifiques des communes. Différents modules ont été développés à cet égard comme :  Le guichet virtuel du citoyen : Le produit TeleServices permet au citoyen d'effectuer des demandes en ligne à son administration et permet à l'agent communal de gérer ces demandes. L'application peut être utilisée suivant plusieurs profils d'utilisateurs : ­ le citoyen non connecté, qui peut visualiser une liste des documents ou procédures; ­ le citoyen connecté, qui peut effectuer en ligne de nouvelles demandes et co nsulter leur suivi ; ­ le rôle d'agent communal, qui permet de traiter les demandes ; Le principe général est le suivant : ­ Dans un premier temps, le citoyen peut accéder à une liste des documents ou procédures disponibles dans les différents services de l'administration communale. Cette liste précise pour chaque demande les modalités d'obtention. ­ Pour effectuer une demande en ligne, le citoyen doit préalablement s'inscrire en complétant ses données personnelles (dont son numéro de registre national qui servira de clé unique pour la connexion par carte d'identité électronique). Cette inscription ne doit être effectuée qu'une seule fois. ­ Une fois inscrit, le citoyen peut se connecter soit au moyen d'un identifiant/mot de passe soit au moyen de sa carte d'identité électronique.
  • 53. Mohamed OUALI 53 Projet de fin d’étude 2009/2010 ­ Après s'être connecté, le citoyen peut effectuer de nouvelles demandes à différents services de la commune mais aussi consulter le suivi des demandes déjà introduites. Au cours de son traitement, une demande change en effet de statut suivant les étapes de traitement effectuées. ­ De son côté, l'agent communal responsable du traitement des demandes de son service consulte les nouvelles demandes ou les demandes en cours qui nécessitent un traitement. ­ L'agent au cours du traitement de la demande change son statut suivant les actions qu'il effectue. Il indique par exemple que la demande est en cours de traitement, que la demande est finalisée, que la demande est rejetée, ... ­ Suivant les options choisies par le citoyen, ce dernier sera prévenu du bon traitement de sa demande. L'intérêt de l'outil est qu'il est possible de le configurer entièrement à travers une interface graphique. Il est donc possible de définir ses propres demandes, avec leurs propres paramètres comme les motifs associées, les modes de réception, le prix, etc... Figure 6.3 : l’outil TeleServices  La gestion des permis d'urbanisme : Ce produit dénommé "urban" est un permet de gérer les permis d'urbanisme (bâtir, lotir, notaire, ...) et intègre une fonctionnalité avancée de cartographie. Il permet à une commune de gérer ses permis d'urbanisme comme par exemple : ­ les permis de bâtir (urbanisme)
  • 54. Mohamed OUALI 54 Projet de fin d’étude 2009/2010 ­ les permis de lotir ­ les lettres aux notaires environnement ­ ... En plus, l'outil intègre des fonctionnalités cartographiques qui permettent : ­ d'obtenir des informations précises (parcelles concernées, rayon de 50m, infos sur les propriétaires d'une parcelle, ...) ­ de lier des recherches de parcelles à une visualisation cartographique ­ ... Remarque : "urban" est un produit Plone 3 qui nécessite donc l'installation d'une instance Plone 3 et de quelques dépendances.  Gestion des délibérations : Ce produit, dénommé "PloneMeeting", est traité dans le cinquième chapitre.  Autres applications : Applications Objectifs Conteneur d'application – Application container Ce produit est destiné à adapter une instance Plone standard dans le but de simplifier l'interface utilisateur et de paramétrer cette instance pour y accueillir des applications (Teleservices, College, ...) Co­marquage – Cobranding Afficher sur un site un contenu émis par le Portail de la Région Wallonne BelgianEid AuthPlugin **** Donner la possibilité aux membres d'un site Plone (et même Zope) de s'identifier à l'aide de la carte d'identité électronique Gestion des amendes administratives (en cours de développement) – Fine management system Gestion des Sanctions Administratives Communales Python Open Document (POD) POD est une bibliothèque qui permet de générer facilement des documents dont le contenu est dynamique.
  • 55. Mohamed OUALI 55 Projet de fin d’étude 2009/2010 Le projet PloneGov, extension internationale de CommunesPlone, est un projet très puissant conçu pour aider les communes en répondant à leur besoins informatique. Il a remporté plusieurs "awards" (voir annexe 3.1) et a reçu le label "Good Epractice" de la Commission européenne en novembre 2007. Chapitre IV : REALISATION DU SITE COMMUNAL Ce chapitre résume les points importants ainsi que la démarche suivie pour la réalisation du site web communal.
  • 56. Mohamed OUALI 56 Projet de fin d’étude 2009/2010 IV.1 SITE COMMUNAL : 1.1 Obstacles : Les petites et moyennes communes sous­estiment souvent la quantité et la qualité des informations qu’elles pourraient publier sur Internet. La pluparts entre elles s’interrogent encore sur la validité et la faisabilité d’un site internet pour une commune : ­ Internet, pour nous (les communes), ça ne servira à rien : Cela a été entendu, mais de moins en moins souvent maintenant car le "retard" marocain en matière d'équipement informatique et Internet est en train d'être comblé, suite à l'action des différents gouvernements. ­ La commune n'a pas grand chose à publier : au contraire chaque commune a quelque chose d’unique à publier et la quantité d'informations qui peuvent être publiées dans un site Internet d'un village ou d'une ville sont quasiment sans limites. ­ La commune est déjà présente sur un site : C'est bien, mais est­ce vraiment suffisant ? ­ Il y a d'autres priorités : Le site Internet a peu de raisons d'être le projet prioritaire de la commune. Autant en termes d'investissement que d'efforts et de temps à y consacrer, les municipalités ont déjà suffisamment à faire. Mais, cela ne signifie pas qu'il n'y ait pas de place en même temps pour un projet peu couteux, avec des solutions open source, dans le domaine de la communication avec et pour les administrés. ­ C'est trop compliqué : En effet, il y a des choses à apprendre, mais les nouvelles techniques de création de sites (les CMS) permettent à des non­ spécialistes de s'initier rapidement à l'essentiel: la publication du contenu. ­ C'est trop cher : avec les outils open source c’est toujours beaucoup moins couteux. ­ On fera un petit site de type personnel : C'est une solution qui trouve rapidement ses limites car la principale difficulté vient du fait qu'il est difficile, voire même impossible, de se partager le travail (les créations et les mises à jour) et donc le risque est de se retrouver avec un site statique qui aura certes la valeur d'un annuaire papier, mais avec peu de mises à jour, et peu d'informations sur les actualités et évènements récents. ­ … 1.2 Objectifs d’un projet site communal :
  • 57. Mohamed OUALI 57 Projet de fin d’étude 2009/2010 Actuellement, plusieurs communes ne sont pas convaincues de l’utilité et de la nécessité d’un site web communal et par conséquent elles sont absentes sur Internet. Cependant, plusieurs bonnes raisons les invitent à mettre en place leur site internet : ­ La vitrine de votre commune sur Internet : Publier sur Internet, pour une commune et ses habitants c'est partager l'information et montrer qu'on existe pour les habitants, pour ses voisins, et aussi pour le reste du monde. ­ Un rôle de Service (un moyen d'information) : o Pour faire connaître la ville aux nouveaux et futurs habitants ; o garder un contact avec les anciens habitants ; o Mettre en valeur l’histoire, la géographie, l’environnement, la culture, toutes les particularités souvent méconnues, ainsi que le ou les grands projets de la municipalité ; o Portail de renseignements (Santé, Transport, Tourisme, …) ; ­ Pour mettre en commun les informations de référence : Figure 4.1 : les échanges du site communal Mises à disposition s: • par et pour la municipalité, • par et pour les associations, les acteurs économiques, • pour les résidents (et éventuellement par les résidents) • pour les visiteurs de passage ou de séjour, touristes et affaires • pour les visiteurs du site Internet, cherchant des informations sur la commune. ­ Moyen de communication :
  • 58. Mohamed OUALI 58 Projet de fin d’étude 2009/2010 Un site communal peut contribuer à rapprocher les élus et les citoyens, les écoles, les associations, tout ce qui concerne la vie de la commune. Il peut devenir le « portail » de référence pour toutes les informations, animations et évènements concernant la commune et ainsi faciliter la vie quotidienne en donnant une visibilité aux associations, aux entreprises, aux artisans et aux commerçants jusqu'à la possibilité de tenir à jour les informations les concernant. En plus, il peut jouer le rôle d’un moyen pour faire participer les habitants de la commune à un nouveau projet. ­ Pour l'activité municipale : Une partie du site peut être réservée aux élus pour communiquer facilement via Internet, en complément des courriels et des forums ou d’autres applications administratives. III.2 ANALYSE ET CAHIER DE CHARGE : 2.1 Analyse de l’existant : Avant de me lancer dans la conception du site communal, il était nécessaire, voire même indispensable, de faire une étude de l’existant afin de proposer, à cause de l’absence du client, un cahier de charge pour la démo site communal. L’absence du site communal, voire même la notion du site pour une commune, à cause des interrogations citées ci­dessus et d’autres contraintes, m’a obligé d’analyser les sites des arrondissements, les portails des grandes villes marocaines et les sites communaux entrants dans le cadre du projet CommunesPlone:  Exemples de sites analysés :  Portail de la ville de Casablanca : Le portail de casa est le site officiel de la ville de Casablanca. Les informations, concernant les démarches en ligne, présentées dans notre site communal dans le thème "renseignements" sont prises de ce site.
  • 59. Mohamed OUALI 59 Projet de fin d’étude 2009/2010 Figure 4.2 : Portail officiel de la ville de Casablanca  Portail de la ville de Fès : Figure 4.3 : Portail de la ville de Fès  Portail de la ville d’Ifrane :
  • 60. Mohamed OUALI 60 Projet de fin d’étude 2009/2010 Figure 4.4 : Portail d’Ifrane Après l’analyse de ces portails j’ai constaté que ces derniers contiennent une quantité très importante d’informations mais : ­ Pas de système de géolocalisation : pour permettre aux habitants, aux touristes et autres de localiser des lieux (des pharmacies de garde, gares de train, etc.) ­ Difficulté de trouver l’information : la navigation n’est pas bien organisée (sous forme de thèmes qui contient des sections) et par conséquence l’internaute est soumis au par hasard dans ses recherches. ­ Le contenu de site n’est pas indexé : l’absence d’un moteur de recherche sur le site rend la recherche très difficile. ­ Manque d’informations : impossible de mettre tout sur un seul portail. D’où, la nécessité d’un site communal pour chaque commune. ­ Pas d’informations sur les projets réalisés, en cours ou programmés (sauf dans le portail d’Ifrane). ­ Les mises à jour est associées au " Webmaster " : personne d’autre, sans connaissances techniques, ne peut contribuer aux mises à jour. ­ …  Sites CommunesPlone : Les sites communaux de ‘Seneffe’ et ‘Sambreville’ rentrent dans le cadre du projet CommunesPlone. Ils sont créés par le CMS Plone et le produit de canevas de site communal CPSkin2 avec des fonctionnalités très évoluées comme le système de géolocalisation qui guide les visiteurs et les permet de localiser des lieux de la commune.  Site communal de Seneffe :
  • 61. Mohamed OUALI 61 Projet de fin d’étude 2009/2010 Figure 4.5 : site communal de Seneffe  Site communal de Sambreville : Figure 4.6 : Site communal de Sambreville Les sites communaux présentés ci­dessus sont créés par le même outil et répondent aux mêmes besoins avec, certainement, une différence de contenu. Après l’analyse du contenu et de son organisation dans ces derniers, il apparaît clairement que se sont des sites puissants et très bien organisés sur les quelles je peux me baser pour créer notre site communal (démo). 2.2 Le cahier des charges proposé :
  • 62. Mohamed OUALI 62 Projet de fin d’étude 2009/2010 De l’analyse effectuée est né un cahier des charges pour la réalisation du site web communal (démo) qui peut servir, dans le futur, pour convaincre les responsables communaux de l’importance et de la nécessité d’avoir leur propre site qui aura comme objectifs principaux :  Contenir toutes les informations relatives à la commune, ainsi que les liens vers d’autres sites communaux, administratifs, associatifs, ou du secteur commercial (sites d’entreprises de la commune).  Permettre d’Informer en premier lieu les habitants de la commune : sur les services, les écoles, les activités associatives, culturelles, sportives, les commerces, les projets communaux, etc.  Servir de Guide pour l’extérieur de la commune : il est évident de penser au tourisme (hôtels, restaurants), ainsi qu’aux animations, expositions, fêtes.  Présenter les activités de tous les secteurs économiques présents (sociétés, artisans, etc.) sur le territoire communal.  Exposer les actions et services de la municipalité, ainsi que discuter (forums de discussion), afin de pouvoir favoriser la proximité avec les citoyens et la participation à la vie de la commune.  Permettre à des personnes sans connaissances techniques d'ajouter, de supprimer ou de modifier des pages directement via le site.  Le mode d'alimentation du site peut être organisé avec beaucoup de souplesse: alimentation centralisée (par le webmaster), décentralisée (par le collège communal ou les services) avec validation, décentralisée sans validation, par quelques personnes seulement, ...  Des "sous­sites" sont possibles: Passionnés, associations ou commerçants de la commune peuvent alimenter leurs propres pages au sein du site communal, avec un menu qui leur est propre et un accès sécurisé.  Intégrer un système de géolocalisation pour donner la possibilité d'illustrer avec des cartes dynamiques la localisation précise des bâtiments des administrations, des écoles, des associations, des commerces, des pharmacies, des gares de train...  Intégrer la gestion des flux RSS : Grâce à un flux RSS, le citoyen peut être rapidement informé lorsque du contenu est ajouté au site de la commune  Intégrer une application pour la gestion des organes délibératoires  … III.3 CONCEPTION & REALISATION :
  • 63. Mohamed OUALI 63 Projet de fin d’étude 2009/2010 Cette rubrique résume les points importants ainsi que la démarche suivie pour la réalisation de la "démo site web communal". 3.1 Rassembler les informations à publier : Toujours en gardant présent à l'esprit les objectifs de la démo site communal et à partir des sites analysés, ci­dessus, j’ai essayé de collecter quelques informations (document, texte, photos, …) qui vont être présentées dans le site. Les informations rassemblées peuvent être classées en grandes catégories : ­ Informations communales ­ informations sur les associations ­ patrimoine, art, culture, histoire ­ les activités sportives ­ secteur économique, tourisme ­ écoles ­ santé ­ et divers ... Les informations rassemblées dans cette étape sont à titre d’exemple et seront organisées par rubriques pour présenter, aux internautes, une navigation par thèmes. 3.2 Organiser l'information collectée : Cette étape à pour but d’organiser le contenu du site en fonctions des objectifs fixées. C’est une étape importante, car une bonne organisation du contenu facilite la navigation dans le site, et une bonne navigation pour le visiteur est synonyme de satisfaction. ­ Pourquoi privilégier une navigation par thème ? L'information reprise sur un site communal est très variée et comprend une masse importante de documents. Les thèmes permettent d'orienter presque instinctivement l'internaute sans qu'il aie à lire beaucoup d'information. Le libellé du thème doit être le plus explicite tout en gardant sont aspect "grand ensemble d'information". A vouloir être trop précis à ce niveau, on exclu certaines informations; ce qui conduit à devoir créer d'autres thèmes. Plus il y a de dossier thèmes à la racine du site, plus on s'oriente vers une navigation par rubrique (un dossier à la racine du site devient automatiquement un onglet ou une rubrique). ­ Les rubriques proposées : Afin de simplifier la navigation dans le site, j’ai organisé le contenu de la façon suivante :
  • 64. Mohamed OUALI 64 Projet de fin d’étude 2009/2010 Figure 4.7 : plan du site Comme le montre la figure ci­dessus notre site propose aux visiteurs une navigation par thèmes :  Vie communale : ce thème reprend ce qui est "officiel", les services publics, para public, le politique, l'enseignement, etc. Il contient les sections suivantes : o Vie politique : dans cette section le visiteur peut trouver comment contacter un membre du collège communal ou un conseiller