Actualités

[23/04/2014] Pour sa 3ème édition le CMSday prend une nouvelle envergure

Rendez-vous le Mardi 17 juin 2014 à Paris. Une surface d'exposition doublée, plus de 1 000 visiteurs attendus, 3 nouveaux co-organisateurs, le CMSday sera cette année, le rendez-vous phare de la gestion de contenu open source et des stratégies digitales.

[11/04/2014] Smile gagne un Jedox Award

Smile reçoit le trophée de Meilleur Partenaire Jedox de l'année.

[10/04/2014] Smile co-organisateur du Bargento 2014

Smile et NBS System s’associent pour l’organisation du Bargento qui se tiendra le 7 octobre prochain à Paris.

Toutes les actualités picto
       

Vous avez besoin de mettre à jour votre Lecteur Flash Flash 7

Guillemet ouvrant l'actualité des solutions
et des technologies open source Guillemet fermant
picto

Retour sur la nouvelle version de Jahia, la 6.5 xCM

La documentation fournie par Jahia affirme : « Comme précédemment, Jahia XCM 6.5, permet de créer des projets Web. Mais les projets web d'aujourd'hui (site web ou intranet) sont de plus en plus complexes et nécessitent plus que des pages web et du contenu web : ils ont besoin d'applications web intégrées et qui répondent à des besoins ou des communautés de pratique spécifiques.

1. Jahia 6.5 : Une évolution révolutionaire

La documentation fournie par Jahia affirme : « Comme précédemment, Jahia xCM 6.5, permet de créer des projets Web. Mais les projets web d'aujourd'hui (site web ou intranet) sont de plus en plus complexes et nécessitent plus que des pages web et du contenu web : ils ont besoin d'applications web intégrées et qui répondent à des besoins ou des communautés de pratique spécifiques. Il s'agit même parfois d'applications web à part entière chargées de générer et de manipuler le contenu. »

Effectivement, le socle technologique de Jahia est désormais entièrement rénové. Et nous sommes convaincus que cette rénovation apportera de très fortes plus-values tant à l'intégrateur que nous sommes qu'à nos clients. Voici quelques exemples concrets des avancées de cette nouvelle version qui ouvrent largement les possibilités de mise en œuvre du produit, fluidifient son intégration technique et assouplissent son utilisation au quotidien :

  • Souplesse des workflows : intégration d'un moteur JBPM
  • Fluidité de contribution : trois modes de visualisation des contenus, « Live », « Preview », et « Edit »
  • Productivité et réutilisabilité du code : modularisation des services et mise à disposition d'un Studio
  • Ouverture : finalisation du stockage complet en JCR et intégration d'un modèle de données entièrement rénové
  • Puissance au service des métiers : outre l'intégration de portlets (Pluto), de Gadgets (Shinding), Jahia 6.5 apporte une capacité de gestion des règles métiers avec Jboss Drools

Architecture de Jahia 6.5 en bref :

Jackrabbit 2 (upgrade)

Apache Tika (nouveau)

Pluto 2.02 (upgrade)

Xwiki (nouveau)

GWT 2.03 (upgrade)

Apache Shindig (nouveau)

EH Cache 1.7 (upgrade)

jBPM (nouveau)

Spring 2.5.6 with MVC part (upgrade)

Apache Camel (nouveau)

JODConverter (nouveau)

Logging (nouveau)

 

Drools (upgrade)

Nota : xCM est utilisé pour eXtended Content Management, et engloble WCM (Web Content Management), DMS (Document Content Management), DAM (Digital Asset Management), etc.

2. Drools, de quoi s'agit-il ?

Drools est un logiciel libre édité par JBoss et distribué sous licence Apache (http://www.jboss.org/drools.html).
Drools est constitué de plusieurs modules :

  • Guvnor – interface d’administration Web (Business Rules Management System)
  • Expert – moteur de règles : ce module va exécuter les règles modélisées dans Guvnor
  • Planner – Moteur de planification automatique : grâce à la définition de contraintes, solver calcule et propose des solutions
  • Flow – Moteur de workflow

L’utilisation d’un moteur de règles et d’un moteur de programmation par contraintes permet de faire évoluer ces règles et ces contraintes en écrivant un simple fichier textuel. Ce dernier décrit en langage humainement compréhensible le comportement que doit adopter le système.
Quand votre métier évolue, vous avez le droit d’exiger que l’évolution du système s’opère par simple paramétrage et non par un recours systématique à l'intervention d’un intégrateur ou la modification d’un logiciel par un éditeur.
C’est ce que Drools nous permet de faire.

Smile utilise Drools (Expert, Flow, et Guvnor) pour optimiser la gestion des règles, en faciliter la compréhension par les utilisateurs et améliorer la maintenabilité de cette partie des développements. Nous mettons également en œuvre Drools planner dans certains projets pour compléter l'expérience métier des utilisateurs et leur apporter une véritable aide à la décision.

3. Drools dans Jahia : la genèse d'une idée de génie

Drools est intégré à Jahia depuis la version 6.0. Maintenant que le produit est modulaire, chaque nouveau composant peut être aisément associé à des règles qui régiront dynamiquement son comportement. Les développeurs vont ainsi pouvoir tirer parti de la puissance du moteur de règles pour programmer l'intelligence associée à chaque module développé pour la solution. Il devient également possible de coordonner tout cela avec des règles globales, dans le cadre d'une architecture allant au-delà du « xCM » et intégrant par exemple des applications tierces dans une architecture orientée services.

Pourquoi intégrer Drools dans un xCM tel que Jahia 6.5 est-il selon nous une idée de génie ? Tout simplement parce que Drools est la meilleure solution pour gérer cette part d'intelligence qui n'a pas sa place dans un workflow et qu'il est coûteux à terme de réaliser en développement spécifique !
Un fichier de règle bien structuré et bien pensé est lisible, partageable et aisément maintenable. Attention néanmoins : bien modéliser, écrire et organiser des règles cela s'apprend, parfois dans la douleur. Smile prend soin de former son personnel sur ces technologies, et il est particulièrement important ici de savoir ce que l'on fait et de réfléchir avant d'agir.

Un xCM doté d'un moteur de règles intégré en plus du BPM, c'est tout simplement un outil qui vous permet d'intégrer toute la logique fonctionnelle dont vous avez besoin, sans recours à des développements spécifiques et donc avec une garantie accrue de maintenabilité et des coûts totaux (TCO) optimisés.

4. Comment Drools est-il intégré à Jahia 6.5

Drools a été intégré dans Jahia 6 pour améliorer et faciliter la gestion des évènements. Un évènement dans jahia est crée à la suite d'une action d'un utilisateur, d'une commande ou d'un déclencheur temporel. L'évènement créé est passé à un registre d'écouteurs d'évènements (Listener registry). Ce dernier va déclencher tous les écouteurs abonnés à l'évènement et ainsi exécuter une logique métier. Drools a été intégré comme un écouteur d'évènement, c'est à dire un listener (Groovy event listener) qui déclenchera le mécanisme de Drools. Ce listener va donner la main à Drools et lui permettra d'inférer sur les différentes règles existantes et réaliser des actions. Des exemples de règles sont disponibles dans /etc/repository/rules et l'architecture montrant l'intégration de Drools est disponible ici.

Un petit schéma pour visualiser tout cela :

Le listener "Groovy" est un proxy sur l'API Drools intégré dans Jahia.

5. Et après?

Le champ des possibilités est largement ouvert, tout les composants nécessitant le déclenchement de comportements conditionnels logiques automatisés tireront avantage du moteur de règles. A nous d'inventer avec vous « la vie qui va avec ».

Philippe Brière
picto

Commentaires

Soyez la premiere personne à ajouter un commentaire sur cet article.
Ecrire un nouveau commentaire