Actualités
Rendez-vous le 25 juin à la MAS-Paris (13ème arrondissement) de 9h00 à 18h00 pour une journée dédiée à la gestion de contenu open source
Rendez-vous le Vendredi 14 juin à Vandoeuvre les Nancy pour assister à la journée DevelopR6.
Rendez-vous le 25 juin à la MAS-Paris (13ème arrondissement) de 9h00 à 18h00 pour une journée dédiée à la gestion de contenu open source
Rendez-vous le Vendredi 14 juin à Vandoeuvre les Nancy pour assister à la journée DevelopR6.
Vous avez besoin de mettre à jour votre Lecteur Flash Flash 7
l'actualité
des solutions
Développement dans le portail ou application tierce spécifique ? Les méthodes ne manquent pas pour gérer ses données. Mais où coder quoi ? Et si Liferay venait proposer une réponse ?
Titre volontairement tendancieux pour cet article, d'autant que ceux qui me connaissent savent que je suis très attentif au respect du périmètre d'une application. En effet, j'ai trop souvent vu dans mes missions de produits détournés de leur fonction, avec souvent de lourdes conséquences techniques, fonctionnelles et donc financières. Qu'il s'agisse d'un outil de GED dont la brique BPM sert à construire une plateforme de workflow, de CMS dont le plugin calendrier sert d'outil de gestion de projet, ou de portail utilisé comme serveur de SSO d'entreprise, les tentations sont aussi nombreuses que les risques.
Bien souvent, ces "erreurs" de conception partent de la même décision : aller au plus rapide car on n'a "pas le temps". Pas le temps de bien faire, pas le temps de comprendre une solution architecturée avec des briques spécialisées. La réalité projet est souvent complexe et ces décisions sont bien compréhensibles, d'autant plus qu'elles s'accompagnent quasiment toujours de la volonté de "mieux faire plus tard". Hélas cet espoir d'amélioration est souvent vain.
Pourtant quelques constats montrent que faire vite et bien est possible. Bien souvent, de nombreux modules d'un projet de portail se limitent techniquement à des actions simples : la lecture et l'écriture d'un modèle de données avec gestion des droits . Quelques exemples classiques :
Par rapport à ces besoins, il n'existait encore récemment que deux options industrielles :
Dans cette perspective, Liferay 6 apporte une solution industrielle intégrée pour répondre à des problématiques locales :
Liferay permet donc de développer rapidement un service métier avec son stockage, sa gestion de droits et ses interfaces d'accès et d'administration. Si simple et si rapide qu'on pourrait être tenté de généraliser le cas à tous les développements métier rencontrés. D'autant que l'ensemble est désormais parfaitement intégré dans Eclipse. Vous m'aurez anticipé, il est bien entendu hors de question de tout faire avec le Service Builder. Alors, comment choisir ?
J'ai passé un certain temps à échanger sur le sujet avec les développeurs et architectes Liferay durant le dernier Symposium International Liferay fin 2010 à Offenbach. Notre avis sur la question est assez simple. Liferay Service Builder (SB) n'est pas la réponse définitive à l'hébergement du besoin métier. Liferay SB existe avant tout afin de permettre à des TPE / PME n'ayant pas les moyens ou le temps de créer une application métier dédiée de pouvoir quand même adresser leur besoin dans un budget raisonnable. Toutefois, il est évident que, dès que le besoin grandit, il faut sortir le modèle de Liferay et construire une application dédiée. Les principales raisons sont les suivantes :
Liferay Service Builder est une solution réellement avantageuse de développement rapide permettant de manipuler un jeu de données simple. Il offre un avantage décisif à la solution lorsqu'il s'agit de choisir dans l'offre pléthorique des portails commerciaux. Les services développés sont robustes et permettent de mettre en ligne rapidement et à moindre frais les portlets simples que réclament souvent le métier et qui assurent l'acceptation du portail comme outil de travail.
Attention toutefois, développer certain services métier via le Service Builder peut induire l'effet inverse : coûts d'entretien importants, allongement des développement de nouvelles fonctionnalités.
Pour trancher entre le Service Builder et un développement spécifique "from scratch", la valeur est un facteur déterminant. Quelle est la valeur de chaque jeu de données concerné par le développement envisagé ? S'agit-il de données essentielles et à haute valeur pour mon activité ? Dans ce cas, l'option d'un développement spécifique est souvent préférable pour ses avantages en termes de maintenance et de souplesse d'évolution. Dans le cas contraire, le Service Builder devient une alternative rentable. Dans un projet de portail complexe, le choix du mode de développement pourra être mixte entre développement spécifiques et Service Builder.
Liferay Service Builder est donc doublement bénéfique. D'une part il permet de réaliser des développements économiques sur une plateforme de haut niveau D'autre part, il constitue un tremplin pour des données à fort potentiel en leur offrant une visibilité immédiate à coût réduit et en démontrant leur importance stratégique. Globalement, Liferay Service Builder contribue donc à maximiser la valeur des données d'un projet de portail en gardant la maîtrise du budget alloué.
Patrick NERDEN
Commentaires