Les applications métier collaboratives doivent être conçues pour évoluer facilement. Cette évolutivité est rendue possible notamment par la séparation des tiers, la formalisation des processus métiers, jusqu’alors sous-jacents, ou encore la mise en œuvre de moteurs de règles métier. Cependant la production d’applications nécessite toujours un temps considérable en programmation, et selon des études récentes, 50% du temps de développement est passé autour des interfaces homme-machine (IHM). Ces interfaces utilisateurs sont souvent de taille importante, complexes et difficiles à développer, maintenir et modifier : plus l’interface devient facile à utiliser, plus elle est difficile à réaliser.
Dans cette logique, l’offre Leonardi, suite au rachat de LYRIA par W4, est une brique de présentation dynamique pour la prise en charge des interfaces utilisateur. Basée sur un concept « model driven », cette solution propose d’accélérer la production des écrans de l’application et, en complément, d’y adjoindre les données de l’entreprise, tout en restant dans une logique d’évolutivité. Les IHM, ainsi produites, peuvent être exécutées avec différents afficheurs client léger (HTML, DHTML/AJAX) et client lourd (AWT, Swing, SWT), s’interfacer par le biais de connecteurs avec différents types de sources de données (fichiers XML, CSV, SGBDR, LDAP, EJB…) et s’exécuter sur différents systèmes d’exploitation (Windows, UNIX, Mac…).
Pour la mise en place de ces IHM, Leonardi Studio, fonctionnant sous ECLIPSE ou en tant qu’application indépendante, comporte un builder graphique de formulaire, qui intègre les fonctions suivantes :
- Import XMI de modèles UML,
- Découverte de bases de données relationnelles ou de serveurs Java,
- Création de schémas de bases de données à partir du modèle métier,
- Mise au point du modèle de données,
- Construction de l’arbre de navigation de l’application cliente,
- Exécution intégrée vers les différents afficheurs,
- Création des fichiers de déploiement (jar, war, plugin Eclipse),
- Création de comportements spécifiques en Java par héritage de templates,
- Gestion de ressources multilingues
Bien entendu, lorsque l’application est basée sur des processus de l’entreprise, ces derniers sont naturellement disponibles au sein du Studio Applicatif. Le programmeur peut ainsi composer des écrans mixant les informations contextuelles en provenance de l’avancement du processus en complément des données de l’entreprise. L’utilisateur final dispose ainsi de toute l’information dont il a besoin pour mener à bien les tâches qui lui incombent.
Les bénéfices de cette approche, notamment son architecture évolutive et ouverte, sont multiples:
Réduction des délais et des coûts
Elle permet de diminuer de manière considérable (jusqu'à 70%) les coûts et délais consacrés au développement d’IHM et, de manière induite, les coûts d’intégration et de maintenance évolutive.
Evolutivité
Le développement ainsi réalisé s'avère plus pérenne. L'application peut d'une part évoluer d'un point de vue fonctionnel en modifiant son modèle de données et d'autre part, l'aspect technique étant majoritairement masqué par le produit, une même application peut aisément passer à de nouvelles architectures en remplaçant les afficheurs et les connecteurs employés.
Extensibilité
Cette capacité lui permet, en outre, de résister aux futures évolutions technologiques dès lors que celles-ci sont intégrées au produit.
Ouverture
Le produit a été conçu pour être totalement ouvert, l’ensemble des comportements génériques peut être surchargé. L’intégration d’actions et de vues spécifiques peut être réalisée aisément. Au besoin, la création de nouveaux connecteurs, voire de nouveaux afficheurs est également possible.
Multilinguisme
Grâce à une gestion, dans des dictionnaires, des chaînes de caractères présentées à l’utilisateur et à la construction dynamique des vues de l’application, il est facile de créer des applications gérées dans différentes langues. Plusieurs utilisateurs peuvent être connectés en simultané dans des langues différentes.
Plus faible technicité requise
Le développement s'opérant à un niveau plus fonctionnel, la technicité requise s'avère moins importante, ce qui permet à des développeurs accoutumés à d'autres technologies de devenir plus rapidement opérationnels sur des projets basés sur les nouvelles technologies.
Portabilité
Grâce aux concepts de connecteurs et d’afficheurs ainsi qu’au choix de technologies portables (plate-forme Java et XML), les applications réalisées bénéficient d’une portabilité totale : technologie d’affichage, technologie d’accès à l’information, système d’exploitation.
Qualité
La production dynamique des vues de l’application permet d’assurer la qualité, l’homogénéité et l’ergonomie des affichages proposés à l’utilisateur final. Ces vues peuvent par ailleurs être personnalisées de différentes façons (spécialisation des ressources graphiques, ajout de filtres d’affichage, surcharge de la production de vues, utilisation de vues spécifiques…).
Les perspectives sont prometteuses et l’intégration de Leonardi dans W4 BPM Suite est en cours. L’objectif est de fournir la capacité à créer des applications métier plus rapidement et d’étendre le périmètre fonctionnel de la Suite. En parallèle, les gains de temps obtenus par l’utilisation de ce module complémentaire sont une bonne nouvelle, face à la pénurie de ressources actuelle : les équipes projet peuvent désormais mieux répondre aux attentes, voire développer plus de nouvelles applications.
|