Augmentez votre productivité par un facteur 10 !

Le saut le plus important, en termes de productivité, pour les développements logiciels au cours des dernières décennies a été le passage des langages machine à ceux de troisième génération. Depuis, les nouveaux langages n'ont eu que de très faibles impacts sur la productivité et n'ont pas véritablement élevé le niveau d'abstraction. Par exemple, la productivité moyenne avec le langage Java ne dépasse que de 20% celle relevée avec le Basic (Software Productivity Research).

Les langages de modélisation traditionnels, tels que UML, n'ont pas véritablement changé cette situation, dans la mesure où les principaux modèles utilisés sont à un niveau d'abstraction équivalent à celui des langages de programmation qu'ils supportent. Les bénéfices obtenus par la modélisation visuelle sont absorbés par les ressources qu'il faut consacrer pour maintenir les modèles et compléter le code partiellement généré : le couplage n'est pas entièrement automatique. De fait, une partie des définitions de structures sont dupliquées dans des modèles statiques tandis que la majeure partie de la conception - la dynamique, les comportements, la vision utilisateurs, les interactions, etc. - et du code sont maintenus à la main.

Les méthodes propres à un domaine augmentent le niveau d'abstraction tout en réduisant l'espace de conception, le plus souvent à une seule gamme de produits pour une entreprise donnée. Avec une méthode spécifique au domaine, le problème est résolu une fois pour toutes, avec une modélisation visuelle de la solution qui utilise les concepts usuels du domaine. Les produits logiciels finaux sont générés automatiquement, à partir d'un niveau d'abstraction élevé, en utilisant des générateurs de code eux-mêmes spécifiques au domaine. Le passage des concepts métiers au langage de programmation, via la méthode de conception, se fait en douceur. Après une attente de dix ans, un gain important de productivité est à nouveau possible !