samedi 26 janvier 2013

Retour vers le futur : les AGL

Je ne donne  plus qu'un seul cours aux futurs analystes: Les AGL.  Le déclin des  AGL restent pour moi un mystère comparable à la disparition 'brutale'  des dinosaures.
La présentation est ici :



Les  années 80 - 90 : l'age d'or des AGL. 

Ils sont incontournables. Leur règne  repose sur l’omniprésence du COBOL dans l'informatique et de l'industrialisation basée sur la programmation structurée.  Sur 100 lignes de code COBOL , 20 lignes seulement contenaient la partie 'métier'  le reste étant des instructions destinées à insérer le programme dans son environnement.
Toute l'algorithmie  était exposée au sein du programme  sur un même listing.



La  programmation objet, l'avènement du langage JAVA, la généralisation des bases de données ont précipité le retrait des AGL.
L'utilisation du WEB comme support des applications métiers a achevé la mise au placard des AGL de cette génération. Ces architectures sont basées sur le design  MVC  : modèle-vue-controleur. Ce modèle impacte le traitement algorithmique des problèmes. L' intelligence des traitements est éparpillée dans les 4 coins de l'application et du framework. La devise  'diviser pour résoudre' de l'approche objet appliquée aux projets MVC aggrave encore plus cette dispersion.
Aussi les AGL classiques ont été mis au rebut en attendant la prochaine génération.


Le modèle économique.

Mais un des facteurs  moins connu, de la difficile percée des AGL,  est lié au modèle économique des sociétés de services  informatiques.Quand on veut augmenter la productivité d'un secteur, le choix peut se résumer à ceci :
Soit acheter des robot à des  fabriques  de robot pour augmenter la productivité: comme ceci:


Soit ajouter de la main d'oeuvre  sur des postes banalisés comme ceci:


Pour une société de service qu'est ce qui est le plus rentable, facile et  sûr  ? :  louer des prestataires.
Si le coût moyen d'un prestataire est de 1000 euro par jour, la SSII facturera 1000 X 20 jours = 20.000 euro par mois aux clients. Quel est le salaire du prestataire: prenons un jeune ingénieur à 3000 Euros par mois : la SSI va dépenser 3000 X 2 (les charges sociales) = 6000 euros.

Ce calcul est a rapprocher avec le coût d'un secteur recherche et développement capable de fabriquer un AGL qui s'adapte aux nouvelles technologies. Avec en plus un retour sur investissement très aléatoire.


Mais, on assiste actuellement au reveil des AGL avec deux approchent différentes.

Les AGL  basée sur la modélisation UML (exemple Blu age) .

 L'UML est maintenant mature, universel et maîtrisé. La toutefois la complexité demeure dans la maîtrise des design Pattern (modèle de conception) .
Dans les écoles d'ingénieur l'enseignement  de l'UML se fait en 10 jours: mais  l'UML ne remplace pas   la maîtrise des bases de l'algorithmie.

Ces AGL -UML  sont capablent de générer du code pour des cibles différentes (PC , tablette)etc .

Les AGL sous forme de DSL.

Les spécifications fonctionnelles.
Le facteur de réussite d'un projet repose en grande partie sur la qualité des spécifications fonctionnelles détaillées. Des DSL (langage de domaine métier ??)  permettent  à la Maîtrise d'ouvrage d'exprimer leurs règles de gestion avec les termes de leur métier. Des traducteurs automatiques vont transformer ces règles de gestion en langage informatique. Un exemple de cette méthode est le projet cucumber

La maîtrise d'ouvrage rédige ceci:


Le résultat sera sous la forme d'un test fonctionnel que le développeur devra résoudre.




Conclusion: les AGL sont de retour. Attention , ils ne sont pas des produits miracles. Le coût d'entrée est lourd avec le risque de se tromper de produit. Les AGL sont à utiliser avec des méthodes Agiles pour en tirer les meilleurs résultats et pour minimiser les risques.
C'est bon d’être vieux , le passé devient le futur .








Aucun commentaire: