Jean-Marc Vanel - Conseil, formation,
outils logiciels, développements
L'Intelligence Artificielle appliquée au Développement logiciel
English - Nouvelles
- Services - Outils
- Formations - Audit -
Séminaires - Vision -
Carrières - Contact -
Agenda
-
Développeurs
Ou va l'informatique ?
Si vous aimez notre métier, et voulez faire une belle et intéressante carrière,
lisez ceci. De puissantes forces économiques et techniques vont bouleverser la
façon de travailler en informatique dans les 5 ans qui viennent. D'un point de
vue économique, les décideurs tolèrent de plus en plus mal de payer très cher
des fonctionalités plutôt simples, ou alors d'être dépendants de toutes sortes
d'infrastructures et de frameworks. D'un point de vue technique, malgrès un
papillonement de nouveautés, il y a très peu de concepts nouveaux. Après avoir
anticipé les nouveautés de ces 15 dernières années: Orienté Objet, XML,
Logiciel Libre, frameworks et Services Web, je sais ce qui va venir. On va
enfin mettre la sémantique au premier plan, les sémantiques métier et celles de
l'infrastructure aussi. Ce qui signifie utiliser certaines techniques issues de
l'Intelligence Artificielle pour gérer les développements et l'infrastructure.
Plus que les développements off-shore, c'est cela qui va changer la vie des
développeurs. Bientôt, il n'y aura plus de postes de développement à "basse
technologie". Car les développements faisant appel à des compétences métiers,
ce seront les experts métiers qui les feront eux-même grâce à des outils
intelligents. Vous ne pourrez pas espérer rester en poste grâce à la maîtrise
d'un ou plusieurs frameworks (à moins d'en être l'auteur).
Après 4 ans d'exploration, j'ai trouvé un cocktail de techniques qui marche:
- celles du Web Sémantique pour modéliser le monde tel qu'il existe;
- les moteurs à base de règles pour remplacer la programmation procédurale.
Pour orchestrer tout ceci, nous développons des frameworks Open Source; pour
l'instant c'est en Java, mais nous voulons réduire la fracture du langage, et
visons à développer des outils dans, et pour, les principaux langages.
Nous pensons que l'Orienté Objet (et UML), qui convient pour développer un
logiciel d'infrastructure, est mal adapté à la modélisation métier. Dans ce
domaine, les formats du Web Sémantique, et la Logique de
Description issue de 20 de recherche en IA, sont sont nettement plus
adaptés. D'ailleurs on peut trouver des milliers de modèles sur Swoogle, et très peu de choses en UML.
Projets Open Source
Si vous voulez vous initier aux technologies du Web Sémantique et des
moteurs à base de règles, essayez ces deux projets Open Source en Français, en
développement actif.
EulerGUI est un environnement de développement Open Source pour les
ontologies et l'IA, centré sur le langage N3.
EulerGUI est une plaque tournante centrée sur le format N3 (RDF à syntaxe
simple), qui permet d'exprimer des données, des modèles, des règles et des
requêtes. EulerGUI peut lire du RDF(S), N3, OWL, UML XMI, eCore XMI; via RDBToOnto
on peut aussi importer des tables SQL. EulerGUI peut exécuter des règles N3
avec 3 moteurs différents (Prolog, Drools/Java, CWM/Python).
Manuel de EulerGUI: http://eulergui.svn.sourceforge.net/viewvc/eulergui/trunk/eulergui/html/documentation.html
Le projet compagnon est Déductions, qui inclut des règles N3 pour générer
des formulaires, convertir UML en OWL, etc.
Déductions permet de générer une application simple, sur plateforme Swing, à
partir d'un modèle OWL, UML, RDFS, eCore, ou SQL. D'autres plateformes sont
prévues: PHP, eclipse - RCP, J2EE. C'est l'Architecture pilotée par les modèles
(MDA) sans lourde infrastructure.
Manuel
du générateur Déductions
Architecture de l'application générée:
http://deductions.svn.sourceforge.net/viewvc/deductions/html/runtime-architecture.html
Attention: Déductions n'est pas encore utilisable en production.