Les portails : la synthèse

 

Ce document a comme finalité la présentation díun état des lieux non exhaustif de ce que le terme de portail induit et de proposer une base de débat. Je ne prétends en aucun cas faire le tour complet de ce qui se fait et doit se faire. Ce document est un travail de recherche ayant comme base díapproche, un séminaire auquel jíai participé, sur ce thème, proposé par la société Sysdeo http://www.sysdeo.com/ et présenté par Pascal Grojean.

 

Organisation de ce document 

 

Les portails : la synthèse___________________________________________ 1

Définition____________________________________________________ 2

Historique____________________________________________________ 3

Les concepts de base díun portail_________________________________ 7

Quelques éléments nécessaires__________________________________ 8

Les espaces de liberté émergents________________________________ 10

Architecture díun portail_________________________________________ 12

Les mécanismes de fonctionnement díun portail_____________________ 18

Les solutions disponibles______________________________________ 22

Exemple de session sur le  portail Liferay___________________________ 26

Exemple 1 de configuration (code)________________________________ 28

Exemple 2 simple et complet (code)_______________________________ 30

 

 

 

 

 

Auteur : Jacquenod Frédéric

24/11/2004


 

 

Définition

 

Que signifie le terme portail ?

 

Ceci doit faire líobjet díun vrai débat, díune vraie discussion.

En effet chacun possède sa propre image de ce quíest un portail.

La réponse à cette question va entraÓner des choix techniques et organisationnels totalement différents.

Un sondage récent du journal du net concernant la vision de ce quíest un portail indique que :

 

ÿ   54% des sondés se le représentent comme un gestionnaire de contenus ;

ÿ   25% comme un serveur díapplications ;

ÿ   21% comme un élément de partage et de travail collaboratif.

 

Líévolution depuis une dizaine díannées des outils informatiques a fait évoluer cette représentation.

On le voit díailleurs, dans les définitions suivantes :

 

ÿ   Le site de líacadémie de Caen http://www.etab.ac-caen.fr/cdti-orne/circos/laigle/rech/#portail définit la notion de portail ainsi :

 

´ Un portail est une page WEB  qui donne accès à un ensemble de sites intéressant pour une population donnée.ª

 

ÿ   Líuniversité de Lausanne http://my.unil.ch/jahia définit la notion de portail ainsi :

 

´ Le portail MyUNIL est un bureau virtuel, adaptatif, donc dynamique, personnalisé, proposant un accès unifié à diverses sources d'information et services, permettant d'interagir avec d'autres personnes, applications ou contenus pertinents et intégrant les activités administratives et académiques. ª

 

A noter que le portail mis en place est réalisé à partir du logiciel open source jahia http://www.jahia.org/jahia/Jahia.

 

 

Qui a raison ? Qui est le plus proche de la réalité ?

Un petit historique de líévolution des portails permet peut-Ítre díy voir plus clair.


 

Historique

 

Dans les années 1998, avec líavènement des technologies Web, notamment les outils permettant de réaliser des intranets, de nombreuses entreprises (dans ce terme, jíinclus évidemment les administrations de toutes sortes) ont mis en place des espaces de publications électroniques (on ne parle pas alors de portail).

 

Souvent, dans la mÍme entreprise, plusieurs espaces ont été créés, sans concertation, à des fins propres à chaque service.

La plupart du temps, ces mises en place, se sont faÓtes sans mettre dans la ´ confidence ª les informaticiens concernant les choix techniques. Pour cause, ces choix techniques ayant été effectués par des responsables plus proches de la partie communication que de la partie technique (cela se retrouve encore de nos jours).

Résultat, dans une mÍme entreprise, des outils différents ont été installés pour effectuer un travail identique mais sans mise en commun de quoi que ce soit (technique, contenu, personnel).

Líoutil ´ intranet ª devait permettre une mise en commun de contenus, de savoirs faire, voir mÍme de personnels, alors que dans ces cas, líeffet a été contraire et a tendu plutÙt vers une segmentation de líentreprise et une hétérogèneÔsation des outils.

 

Ces outils, malgré tout, se sont trouvés Ítres très utiles et les besoins sont devenus croissants, les problèmes aussi Ö

Les premiers outils se sont alors révélés des choix discutables car peu évolutifs, compliqués à mettre en úuvre. Un éléments a été aussi le plus souvent oublié, líélément humain. Il est une chose de choisir, díinstaller, des outils de publications, mais, encore faut il, ensuite, pouvoir mettre les contenus à jour, les suivre, les modifier Ö Souvent cette partie a aussi été oubliée. On parle de líavant, du pendant mais pas de líaprès.

 

De fait, les directions díentreprise ont repris la main sur ces déploiements et ont tenté de rationaliser tout cela. Pour ce faire, la partie technique a été remise en avant afin de proposer des choix homogènes et proches des demandes plus complexes des utilisateurs.

Les premiers portails sont alors apparus proposant un point díaccès unique et homogène aux informations permettant ainsi, de fédérer, de rassembler, de capitaliser toute la chaÓne de la partie technique à la partie humaine, en passant par les savoirs.

Ces nouveaux choix techniques ont dš prendre en compte les nouvelles demandes des utilisateurs telle la personnalisation de leur navigation, la sophistication des outils comme la recherche díinformations.

 

Historiquement, les intranets des entreprises se sont transformés en portails pour rationaliser toute la chaÓne. Líévolution des techniques et des besoins les a fait évoluer. On peut les classer en 4 catégories :


ÿ    Portail de 1ère génération : portail díagrégation (centralisation des informations dispersées)

 

 

ÿ    Portail de 2ème génération : portail personnalisé (adaptation du portail au profil de líutilisateur implicitement ou explicitement ñ on parle parfois de portail pré-portlets). Ce type de portail pouvait supporter les canaux sans-fil de type Wap (Wireless Application Protocol).

 


ÿ    Portail de 3ème génération : portail díintégration (accès à des applicatifs, gestion de contenus, agrégation, personnalisation, recherche avancée, outils collaboratifs, accès universel Ö) basé sur les portlets.

 

 

ÿ    Portail de 4ème génération : portail díunification. Dans les années à venir, ils :

 

¸     Seront multi-supports (pda, téléphonie) appelé aussi MAG (Multichannel Access Gateway) ;

¸     proposeront des applications métiers en síappuyant sur líapproche SOA (Service-oriented architecture) ;

¸     se baseront sur des composants (portlets) multi-fournisseurs (WSRP Web Services for Remote Portlets) pour la communication et líintégration inter-portails ;

¸     déploieront des applications composites ;

¸     Ö

 


 

On trouve la définition officielle de ce quíest un portail de 4ème génération en lisant le draft JSR168 (Java Specification Requests http://www.jcp.org/aboutJava/communityprocess/review/jsr168/) concernant les portlets (composants du portail) :

 

A portal is a web based application that commonly provides personalization, single sign on, content aggregation from different sources and hosts the presentation layer of Information Systems. Aggregation is the action of integrating content from different sources within a web page. A portal may have sophisticated personalization features to provide customized content to users. Portal pages may have different set of portlets creating content for different users.

 


 

Les concepts de base díun portail

 

Il existe 3 grands types de portails :

 

ÿ    B2B : Business to Business (Portail orienté partenaire ou client díentreprises) ;

ÿ    B2C : Business to Consumer (portail grand public) ;

ÿ    B2E : Business to Employee (portail destiné aux collaborateurs de líentreprise dans le cas díune université, cela concerne les étudiants et personnels).

 

Quel que soit le type de portails, il existe 3 concepts principaux qui déterminent ce quíil doit Ítre :

 

ÿ    Le rÙle : que líon peut définir comme le ciblage de líutilisateur, son profil. Un utilisateur peut posséder plusieurs profils selon son implication au sein du portail, allant du simple utilisateur non référencé à líadministrateur du portail. Selon ces rÙles, les possibilités ne seront pas les mÍmes.

ÿ    Les portlets : ce sont les composants ou ingrédients qui sont proposés sur le portail, ils forment les contenus proposés. Ils sont personnalisables et doivent respecter la norme JSR168 ou WSRP. Ce sont des servlets spécialisées.

ÿ    Les templates : elles permettent de standardiser líagencement et líorganisation des éléments du portail.

 

Le portail doit remplir un certain nombre de missions :

 

ÿ    Fédérer les services (un point díentrée unique pour tous les services (données et applications)) ;

ÿ    Simplifier líaccès aux informations (moteur de recherche Ö) ;

ÿ    Sécuriser les transactions et les contenus ;

ÿ    Proposer des outils collaboratifs (forums Ö) ;

ÿ    Evolutif (tant techniquement que rédactionnel) ;

ÿ    Ne pas Ítre frustrant en tentant de tout centraliser sans proposer díespaces de liberté, ne pas rendre líinformation et sa publication ´ stalinienne ª.

 

Pour que ces enjeux et ces missions soient remplis par le produit portail mis en place, il est nécessaire de bien penser au rÙle que doit jouer ce portail, on parle de taxonomie du portail.


 

Quelques éléments nécessaires

 

ß       Pour Ítre un succès, le portail doit avant tout Ítre utile, simple à

utiliser, personnalisable, réactif, à jour tout en proposant des outils à la pointe.

 

ß       Pour cela, un élément important est le suivi de ce portail. Il est

essentiel que le maÓtre díouvrage prenne conscience quíaussi beau que puisse Ítre le produit, il níaura díintérÍt pour les utilisateurs que si il vit.

Son développement futur, la mise à jour des informations, líajout díoutils Ö sont des éléments aussi importants que la mise en place et qui nécessitent un potentiel humain à la hauteur (quantitativement et qualitativement) des enjeux. Il est nécessaire de posséder des outils díadministration qui permettent notamment de collecter les informations ainsi que le personnel pour les analyser et en déduire les comportements des utilisateurs pour une meilleure adhérence du produit aux besoins.

 

ß       Pour une bonne gestion et un développement du portail, il est  nécessaire de

permettre une administration ´ conjointe ª. Une délégation des droits díadministration doit Ítre possible.

 

ß       Un portail de 4ème génération, comme celui díune université ouverte

vers le monde se doit díÍtre multilingues.

 

ß       Avec líarrivée des technologies mobiles, le portail doit Ítre

multi-supports (PDA, téléphonie Ö).

 

ß       Certains portails, et cela peut Ítre utile dans le cadre díune

université, proposent la possibilité de synchroniser son poste local avec son ´ poste distant ª à travers le portail. Vous pouvez ainsi travailler en offline et ensuite synchroniser les contenus. Selon líoutil, cette synchronisation peut  síeffectuer de manière unidirectionnelle ou bi-directionnelle.

 

ß       Un élément à ne pas oublier : la communication autour de ce

portail afin de le faire connaÓtre, díexpliquer son intérÍt et díexpliquer líintérÍt quíil y a à líutiliser.

 

Résumé

 

Un portail de base peut ou doit comporter (non exhaustif et modulable) :

 

ÿ    une sécurisation des accès de type SSO (Single Sign On) ;

ÿ    un profilage de líutilisateur pour une consultation d'informations personnalisée ;

ÿ    une administration et une gestion des contenus (moteur de recherche, ajout, mise à jour, validation et publication de documents et/ou de données Ö) avec possibilité de délégation ;

ÿ    des espaces de travail collaboratif (mél, agenda, forum Ö) ;

ÿ    des applications ´ locales ª (demandes de congés, relevé de carrière, réservation de billets via le CE, menu cantine, consultation de son dossier personnel, de ses notes Ö) ;

ÿ    des applications métiers (accès à des outils de gestions Ö) ;

ÿ    une disponibilité 24h/24h, 7j/7j ;

ÿ    une évolutivité des contenus et des outils ;

ÿ    une accessibilité pour tous et par tous les environnements (OS, navigateurs, PDA Ö) ;

ÿ    des espaces de liberté ;

ÿ    Ö

 


 

Les espaces de liberté émergents

 

Pour laisser un espace de liberté au sein de ces portails, des outils sont parfois proposés. Ils permettent aussi díaméliorer la communication et de simplifier son échange comme les blogs ou les wiki (attention aux débordements dans les contenus voir líaffaire récente de blogs de la radio skyrock en France).

Des logiciels très simples et facilement installables sont disponibles pour mettre en ligne ces sites web díun ´ nouveau ª type.

 

ÿ    Les blogs (contraction de web logs) sont des sites web personnels composés

principalement de líactualité en rapport avec son créateur un peu comme un journal intime. Ces éléments sont très prisés des entreprises, qui donnent ainsi un espace díexpression à ses employés avec un lien sur le portail de cette mÍme entreprise. En France, le journal Libération a lancé la mode en proposant un blog à ses journalistes durant les élections américaines.

 

 

ÿ    Le WiKi, dont le nom provient du mot WikiWiki qui signifie ´ vite ª en hawaÔen,

est  un site web collaboratif o˜ tout intervenant peut ajouter, modifier les pages de la communauté de manière très simple. A la différence du blog, le wiki exprime la voix díun groupe et non pas díun individu. Outre-atlantique, les entreprises utilisent ce système, en France il en existe peu. Par contre, il en existe un connu qui est ouvert à tous : CraoWiki (http://wiki.crao.net/).

 

 


 

Architecture díun portail

 

Le terme architecture peut englober de nombreux points qui vont du graphisme aux choix techniques.

 

Du cÙté utilisateur, ce portail doit Ítre personnalisable tant dans son contenu que dans sa présentation. Ne pas oublier que líutilisateur est au cúur du système et que le portail est fait pour quíil puisse líutiliser dans les meilleures conditions.

 

ÿ    Graphisme

 

Une ligne directrice est fournie par les responsables du projet mais, il peut Ítre nécessaire de proposer à líutilisateur (comme le font les portails jahia ou liferay), une personnalisation de son environnement comme cela existe le plus souvent sur les postes de travail de type PC via une conservation de ses préférences. On parle de skin (Ensemble de paramètres et d'images définissant l'apparence d'une application, díune page web Ö).

Malgré tout, quels que soient les outils díaccès et notamment les outils mobiles (PDA, Portable ...) il faut garder en mémoire que líécran níest pas un espace extensible à líinfini.

Pour palier à ce problème, il existe des astuces pour organiser une page. Cette organisation à líécran se nomme layout.

Le plus souvent les pages proposent des onglets (pane).

On peut retrouver ces recommandations dans les documents associés au développement du portail ESUP (Environnement numérique de travail díaccès intégré aux services pour les étudiants et le personnel de líenseignement supérieur) à líadresse http://www.esup-portail.org/.

 


 

ÿ    Accessibilité

 

Il existe des recommandations pour l ëaccessibilité aux données quíil peut Ítre utile de consulter et díessayer de suivre comme líindique le site de líADAE (Agence pour le Développement de líAdministration Electronique http://www.adae.gouv.fr).

Ces recommandations sont proposées par le W3C sous líacronyme WAI (Web Accessibility Initiative) à líadresse http://www.w3.org/WAI.

 


 

ÿ    Les Portlets

 

Pour mettre en úuvre ces éléments, les portails de 3ème et 4ème génération utilisent des portlets. Ces éléments ont été initiés en 1999 par Apache dans le projet de développement díun portail open source nommé jetspeed (http://portals.apache.org/).

 

 

Les portlets sont les composants JAVA que líon retrouve au sein du portail au niveau applicatifs (voir la définition ci-dessous).

 

Définition

 

´ Module intégré à un portail d'entreprise, qui permet à l'utilisateur de disposer, dans la mÍme fenÍtre, d'un accès centralisé et convivial à différentes ressources (données, applications, sites Web, etc.), de modifier l'interface du portail selon ses besoins et de personnaliser ainsi son environnement de travail. ª

 

Un portlet (ou une portlet) est líéquivalent díun servlet mais à líintérieur díun portail.

Un portlet est construit sur la base díune applet mais uniquement pour une utilisation au sein díun portail.

Le mot Portlet provient de la contraction de PORTail et appLET.


 

Rappel

 

ß       Une applet est un petit programme, en langage JAVA conÁu pour Ítre téléchargé via un réseau à chaque fois quíil doit Ítre utilisé à travers un navigateur. Une applet est donc exécutée cÙté client. En franÁais, on parle díapplette ou díappliquette.

ß       Une servlet est une applet qui síexécute cÙté serveur.

 

Les règles de développement des portlets sont définies au sein de deux communautés JCP (Java Community Process) et OASIS (Organization for the advancement of structured information standards)

 

ÿ    JSR168 (Java Specification Requests 168)

http://www.jcp.org/en/jsr/ soutenu par Ibm, Sun, Apache, palm Ö dans le but de líintégrer dans J2EE.

 


 

ÿ    WSRP (Web services remote portal)

http://www.oasis-open.org soutenu par Ibm, Sun, Oracle, Citrix, Microsoft Ö

 

 

-       Les Web Services sont décrits dans un document WSDL (Web Services Description Language) en XML (eXtensible Markup Langage) qui permet de décrire les web services et la faÁon díy accéder. Sa version actuelle est la 1.1 que vous pouvez retrouver sur le site du W3C http://www.w3.org/TR/wsdl.

 

-       Pour communiquer, les web services utilisent le protocole SOAP (Simple Object Access Protocol) dont la version actuelle est 1.2. Vous retrouvez là aussi les spécifications sur le site du W3C http://www.w3.org/TR/soap/. Vous pouvez aussi, obtenir des informations sur le site http://www.w3schools.com/soap qui propose un tutorial assez bien fait.

 

-       Pour publier et rechercher ces Web Services, le protocole UDDI (Universal Description, Discovery and Integration) est utilisé. Ce protocole est défini par le groupement OASIS (vu précédemment) et a pour but de rendre interopérable les web services entre toutes les plateformes et applications à travers líinternet. Il se base sur les travaux du W3C à travers líutilisation de SOAP, XML, HTTP et de líIETF (Internet Engineering Task Force http://www.ietf.org) pour des protocoles comme le DNS (Domain Name Service). Vous pouvez obtenir les informations à líadresse : http://www.uddi.org/.

 

Logo

Adresse Web

 

http://www.w3.org/TR/wsdl

 

http://www.w3.org/TR/soap/

 

http://www.uddi.org/

 

Pour mieux comprendre les implications des Web Services vous pouvez consulter le site :

http://www.service-architecture.com/web-services/articles/index.html


 

 

Les mécanismes de fonctionnement díun portail

 

On le voit, les portails utilisent essentiellement la technologie Java en se basant sur les portlets.

Les portlets se situent au niveau de la couche application du portail.

 

ÿ   MVC (Model View Controller)

 

Du point de vue mise en place, les portlets sont encapsulés dans une architecture MVC. Ce mode de fonctionnement est apparu en 1979 avec smalltalk-80 et développé par Trygve Reenskaug.

 

 

Vous retrouvez le descriptif díorigine à líadresse http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html

ainsi quíun document sur les origines du MVC à líadresse de son créateur qui pointe sur un Ö Wiki http://c2.com/cgi/wiki?ModelViewControllerHistory

 

Définitions

 

ÿ   Le modèle représente l ëensemble des données utilisées par líapplication indépendamment de la présentation graphique (gérée par la vue) et des interactions de líutilisateur (gérées par le cont