Agile 2008 à Toronto, c’est bien. XP Day Paris et Valtech Days 2008 à Paris, aussi. Mais que faire lorsque vous êtes basé hors des capitales? Aujourd’hui, il vous faut convaincre votre manager de vous payer le déplacement pour Paris ou payer le déplacement de votre poche.
C’est partant de ce constat que XP France lance Agile Tour, une série de conférences francophones dans des villes de taille moyenne en France et en Suisse.
Agile Tour a lieu en octobre. Aujourd’hui, 25 présentateurs se sont manifestés, ce qui est bon signe. Mais il reste un peu de temps pour ceux d’entre vous qui souhaitent parler à des chefs d’entreprises, des responsables informatiques, des développeurs qui n’ont pas accès facilement aux présentations habituels.
Devenez donc orateur agile chez Agile Tour!
Le programme doit être bouclé pour début septembre. A vos claviers!
View Larger Map

La conférence Agile 2008 a lieu dans 3 semaines seulement! Ce sont déjà les tout derniers moments pour s’inscrire (plus de 1200 inscrits il y a une semaine, sur 1600 attendus).
Valtech sera présent à cette conférence. 3 des sujets que nous avons présentés ont été retenus:
Par ailleurs, Eric Lefèvre a co-organisé la track Breaking Acts, une serie de sessions cherchant à faire avancer nos connaissances sur l’agilité.
Nos collègues des autres filiales de Valtech ne sont pas en reste. En particulier, Valtech US assure 8 sessions (!), plus une pour Valtech UK:
Avec un total de 12 sessions, il semblerait que Valtech fournisse le plus gros contingent de présentateurs
Si vous vous rendez à Agile 2008, certains d’entre nous serons reconnaissables à leurs polos Valtech.
Si vous ne pouvez pas vous joindre à nous à Toronto, n’hésitez pas à assister à la présentation de Gilles sur TDR dans nos locaux, lundi 28.
Chers lecteurs, vous avez peut-être déjà entendu parler de Test-Driven Requirements, ou les spécifications pilotées par les tests. Que vous ayez assité ou non à une de nos matinées sur le sujet (la prochaine est le 11 septembre), nous vous invitons à assister dans nos bureaux à une présentation de Gilles Mantel “Test-Driven Requirements, au-delà des outils“.
Il s’agit d’un atelier qui sera présenté à la conférence Agile 2008 à Toronto, la semaine du 4 août.
L’objectif de cette session est de remettre la collaboration au centre de toute initiative de spécifications pilotées par les tests. Elle mettra l’accent sur la construction de spécifications en utilisant des tests qui capturent réellement les exemples fournis par l’utilisateur ou le Product Owner. Aucun outil informatique ne sera utilisé.
Lieu: Valtech, 80 avenue Marceau, Paris 8e
Date: lundi 28 juillet 2008, à 19h
L’accès est gratuit et ouvert à tous. Pensez simplement à vous inscrire.
Sur le site de XP France, vous trouverez une description détaillée de la soirée et les inscriptions.
A bientôt!
La dernière soirée du Paris JUG a provoqué quelques débats sur MDA, avec notamment le post d’Eric sur le positionnement de Valtech. Pour continuer sur la lancée d’Eric, Yann Letanou, Leader Technique chez Valtech Technology, nous propose un article riche sur les bénéfices du MD dans le cadre d’une SOA.
SOA et Approche Model-Driven
L’intérêt grandissant pour les architectures orientées-services amène à se poser la question de l’intérêt d’une approche MDA (Model-Driven Architecture) pour modéliser et au final générer le code permettant l’implémentation des différents composants logiciels.
Nous n’allons pas ici rentrer dans le détail du pour ou contre MDA pour SOA. A Valtech nous pensons que les approches de développement Agile permettent l’émergence d’un design et d’une architecture de bien meilleure qualité qu’une approche MDA. Cette dernière reporte toute la complexité d’écriture du code sur des modèles qui sont loin de permettre les mêmes nuances que du code. La complexité est également reportée sur les générateurs de code qui deviennent alors le point dur car très difficiles à maintenir et à faire évoluer. Au final, Cette élaboration de modèles très détaillés rend improductive l’équipe de développement, qui n’a pas les moyens d’agir au cœur des problèmes.
Toutefois, certaines approches dites « Model-Driven » peuvent être intéressantes lorsqu’elles permettent d’améliorer la productivité et la communication, à condition de ne pas être axées sur de la génération de code à tout va (qui nous ramène au point précédent). C’est par exemple le cas du « Model-Driven Testing » axé sur la génération des tests. C’est aussi le cas des approches centrées sur la génération de fichiers de paramétrage (typiquement à partir de schémas XML standardisés) permettant de configurer des composants logiciels « sur étagère » et à forte valeur ajoutée.
Les technologies utilisées pour implémenter des architectures de services (SOA) sont très axées sur ce type de composant logiciel avec notamment :
- Les moteurs d’orchestration de service, principalement utilisés pour l’automatisation des processus métier,
- Les bus d’intégration de services ESB, épines dorsales de la SOA,
- Les conteneurs de services avec notamment le standard SCA.
L’idée est donc de pouvoir obtenir des applications par paramétrage d’un certain nombre de ces composants logiciels, grâce à l’élaboration de modèles dédiés permettant de s’intégrer dans une démarche agile prenant pour le reste en charge le développement du code applicatif ainsi que le cœur des services. La démarche est ainsi toujours la même :
- On modélise et on paramètre graphiquement, avec un langage et un éditeur dédié,
- On génère le ou les fichiers XML,
- On déploie les fichiers générés dans le composant technique pour le configurer, parallèlement au déploiement du code écrit à côté,
- On supervise ensuite l’exécution.
Moteur d’orchestration : Génération BPEL à partir de BPMN
BPMN est une notation définie et standardisée par l’OMG; elle permet de modéliser des processus métier à partir d’un ensemble d’éléments de modélisation permettant de couvrir une large palette de besoin. BPEL est un standard de l’OASIS définissant une grammaire XML permettant de décrire des processus directement exécutable par un moteur d’orchestration BPEL. L’une des force de BPEL est de se baser sur de l’orchestration de webservices et de supporter via BPEL4People la gestion de tâches humaines à travers un workflow.
Toutefois la syntaxe BPEL est très complexe et des outils ont rapidement vu le jour pour offrir une notation graphique au-dessus de BPEL (ActiveBPEL par exemple). Cette notation graphique est cependant très proche du BPEL et il reste nécessaire de maitriser ce langage pour définir correctement un processus. De plus, cette proximité de la notation graphique par rapport au BPEL fait que les processus définis ainsi restent difficilement lisibles par des personnes non-aguerries aux subtilités du langage. L’OMG a donc défini un mapping BPMN à BPEL permettant de conserver les avantages descriptifs et documentaire du BPMN tout en ayant la possibilité d’en faire un exécutable à travers BPEL. Ainsi des outils comme Intalio BPMS autorisent ce niveau de modélisation et permettent à une personne non-initiée au BPEL de modéliser et de déployer des processus exécutables. Attention toutefois, cela reste un outil d’informaticiens qu’on ne mettra pas dans les mains d’un pur analyste. Néanmoins, il permet de s’abstraire en grande partie des subtilités du BPEL tout en offrant une puissance de modélisation permettant de développer et déployer rapidement des processus exécutables basés à la fois sur de l’orchestration de services et de la gestion de tâches humaine.

Génération XML pour le paramétrage d’un ESB
Nous pouvons résumer simplement un ESB comme un bus logiciel de médiation, basé sur les standards du Web, orienté-service (et non orienté-flux à la différence d’un EAI classique) permettant de mettre en relation les composants d’une SOA, indépendamment des types de protocoles et de messages utilisés.
L’ESB permet d’exécuter des médiations, qui peuvent être vues comme un assemblage de modules logiciels permettant de mettre en relation des composants logiciels. Par exemple, l’ESB peut permettre de gérer différentes versions d’un webservice déployé sur différents serveurs. La médiation consiste alors à définir les conditions permettant de savoir à quelle version du service chaque appel doit être routé. Le service peut être activé via différents protocoles de communication. La médiation définit alors ces protocoles et les transformations nécessaires permettant au final d’activer le bon webservice.
La médiation peut être décrite graphiquement, à l’aide d’un outil, comme par exemple Spagic, IDE Eclipse permettant de paramétrer l’ESB d’apache ServiceMix. On assemble alors un certain nombre de composants élémentaires, issus généralement des EIP (Enterprise Integration Patterns). Puis on génère à partir de cela les différents fichiers XML de description de la médiation que l’on peut alors déployer dans l’ESB. Le format de ces fichiers XML varie en fonction de l’éditeur. A ce titre, le standard JBI (Java Business Integration, JSR208) tente de standardiser les spécifications d’un ESB et donc le format de ces fichiers de configuration XML. Contrairement aux grands éditeurs du marché, plusieurs ESB open-source suivent aujourd’hui ce standard : c’est notamment le cas de Apache ServiceMix, de Sun OpenESB ou encore de Petals.

Génération XML pour le paramétrage d’un conteneur SCA
SCA (Service Component Architecture) est une spécification de l’Open-SOA définissant un modèle pour la création et l’assemblage de composants de service, indépendamment des langages de programmation utilisés pour leur implémentation. Cette initiative est fortement supportée par IBM, dont la suite SOA est basée sur ce modèle.
L’idée est que le développeur puisse définir des assemblages de composants de service, graphiquement, puis pour chaque composant spécifier son implémentation (par exemple, BPEL, Moteur de règle, code java, etc.). Cet assemblage forme un composite SCA, dont la description est réalisée à travers une syntaxe XML dédiée.
Une fois le composite créé, l’outil génère les fichiers XML puis effectue le déploiement dans un ou plusieurs conteneurs de services SCA, selon que les composants de l’assemblage sont tous locaux ou distants.

Vers un environnement de développement SOA unifié
L’idéal est ensuite de disposer d’un environnement unifié pour définir ces différents modèles puis générer les fichiers de paramétrage associés pour automatiquement les déployer dans la brique logicielle correspondante. Les éditeurs tendent également vers cette ambition, comme IBM avec sa suite basée sur Websphere Process Server, et BEA avec sa suite Aqualogic.
Côté Open-Source, le projet Eclipse STP (pour SOA Tool Platform) est aujourd’hui le candidat le plus crédible. Bien que STP ne soit pas parfait pour l’ensemble des briques que nous avons citées (mais c’est aussi le cas des autres), il reste une initiative particulièrement suivi par la communauté SOA.

Auteur: Yann Letanou.
Sonar, l’outil présenté jeudi dernier à Valtech, est un projet Open source de la société Hortis (basée en Suisse), hébergé sur Codehaus.
Sonar est un agrégateur de résultats d’analyse de règles de codage. Il s’interface avec des outils d’analyse de code et de test afin d’agréger leurs résultats, et les consolider afin de, par exemple, faire de l’analyse multi-projets. C’est d’ailleurs dans le cadre d’un parc de projets volumineux que Sonar prend tout son sens, en comparaison avec des outils comme Maven Dashboard.
Lire la suite »
Jeudi dernier, Freddy Mallet nous a fait le plaisir de nous présenter Sonar, l’outil de qualimétrie développé principalement par ses collègues de Hortis. Voici les slides, ainsi que quelques commentaires.
A Valtech, nous apprécions beaucoup cet outil, nettement en avance par rapport à ses concurrents Open Source comme XRadar, QALab ou Panopticode. Aujourd’hui, nous l’utilisons souvent à côté d’un outil tel que Maven Dashboard. Maven Dashboard est très bien pour obtenir des métriques sur un projet simple, mais devient plus difficile à gérer pour de multiples projets. (détail amusant: je suis actuellement sur un projet où travaille également David Vincente, le committer principal sur Maven Dashboard).
A mon avis, les avantages de Sonar sont les suivants:
c’est le plus complet des outils de qualimétrie open-source
le développement est actif; par exemple, XRadar, le plus ambitieux des autres outils OSS, sorti initialement il y a plus de 4 ans, était considéré mort l’année dernière (une nouvelle version est sortie récemment)
l’équipe est ambitieuse: de nombreuses fonctionnalités sont prévues et il semble y avoir les ressources qui conviennent pour les développer
l’équipe joue à fond le jeu avec la communauté open-source. Reconnaissant que Sonar ne peut se battre avec les spécialistes des logiciels de qualimétrie propriétaires tels que CAST ou Metrixware, ils ont cherché à s’attirer les faveurs des développeurs eux-mêmes. Le site principal est par exemple passé de http://sonar.hortis.ch/ à http://sonar.codehaus.org/ et la prochaine étape du développement verra l’introduction de plugins, ce qui permettra à un plus vaste public de contribuer.
Bref, Sonar arrive comme une bouffée d’air frais dans le monde des outils de qualimétrie. Même si son avenir n’est pas encore tout tracé (en particulier, Hortis a une partition délicate à jouer pour rentabiliser les frais de développement), la bienveillance et l’intérêt du monde open-source lui sont déjà assurés. Et le “mindshare“, dans le monde open-source, c’est le critère principal de réussite d’un projet.
Nous sommes fiers de vous annoncer notre nouveau site de syndication de blogs, Planet Valtech.
Ce site regroupe les blogs des consultants de Valtech France, ainsi que quelques autres, comme les blogs officiels de Valtech US et Valtech Allemagne (version anglaise uniquement).
Lire la suite »