Agile Day Tunisia 2012 - Quand le langage devient Agile
-
Upload
tunisia-scrum-user-group -
Category
Education
-
view
385 -
download
0
description
Transcript of Agile Day Tunisia 2012 - Quand le langage devient Agile
![Page 1: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/1.jpg)
Quand le langage devient agile [1]www.itserv.com.tnwww.itserv.com.tn
Quand le langage devient agilePrésenté par : Taha BEN SALAHConsultant Senior – IT [email protected]
Agile Agile dayday TunisiaTunisia ‐‐ 2 juin 20122 juin 2012
![Page 2: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/2.jpg)
Quand le langage devient agile [2]www.itserv.com.tnwww.itserv.com.tn
Agenda
• Introduction
• L’habit fait le moine
• A Langage, langage et demi
• LOP … au gaLOP
• Anatomie d’une onomatopée
• Quatuor : Plateformes, Frameworks, Librairies et Langages
![Page 3: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/3.jpg)
Quand le langage devient agile [3]www.itserv.com.tnwww.itserv.com.tn
Le GroupeSociétés IT SERV / AHEAD IT fondés en 2008
Fondateurs : Imed Elabed, Moez Boukhris, Mohamed Koubâa
Marché : Tunisie, Afrique du Nord; Europe (Nearshore)
Chiffre d’affaires
Secteurs d’intervention
Développementlogiciels spécifiques
ConsultingAMO / PMO
Expertise TélécomsIntégration de solutions
BSCS, SAP BO, ...
Développementlogiciels spécifiques
ConsultingAMO / PMO
Expertise TélécomsIntégration de solutions
BSCS, SAP BO, ...
Expertise en Systèmes d’Information
Quelques clients
![Page 4: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/4.jpg)
Quand le langage devient agile [4]www.itserv.com.tnwww.itserv.com.tn
Méthodes Agiles
• Agilité
• Pragmatisme
• Réactivité
• Participation Elargie
• Motivation
• Risque
![Page 5: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/5.jpg)
Quand le langage devient agile [5]www.itserv.com.tnwww.itserv.com.tn
L’HABIT FAIT LE MOINE« Donnes moi un point d'appui je soulèverai le monde » Archimèdes
![Page 6: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/6.jpg)
Quand le langage devient agile [6]www.itserv.com.tnwww.itserv.com.tn
Réussir un projet Agile
• Maitriser le produit – Intervention client
– Product Backlog « complet » (Scrum)
• Réactivité de mise en œuvre– Ressources adéquates
• Humaines
• Temps
• Outils de communication
• Outils de mise en œuvre
![Page 7: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/7.jpg)
Quand le langage devient agile [7]www.itserv.com.tnwww.itserv.com.tn
Prototypage
• Prototypage Réutilisable
• Maquettage propre à validation
• Outils intervenants– OS/Plateforme
– Outils de développement
– Compétences humaines
– Langage
-> Imposé(e) par le client ?
-> Imposés par la SS2I
-> Imposé par la façon de recruter
-> L’habit dont on ne parle presque jamais
![Page 8: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/8.jpg)
Quand le langage devient agile [8]www.itserv.com.tnwww.itserv.com.tn
Lequel est le plus rapide ?
+Chinois
Occidental+
• Quel est le langage le plus rapide
Mauvaise Question
![Page 9: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/9.jpg)
Quand le langage devient agile [9]www.itserv.com.tnwww.itserv.com.tn
• Quel est le langage le plus utilisé
Ze Best
L’Idéal
La réalité
•Quel est le langage le plus appropriéAu projetAu domaineA la SS2IAu développeur
Mauvaise Question
![Page 10: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/10.jpg)
Quand le langage devient agile [10]www.itserv.com.tnwww.itserv.com.tn
A LANGAGE, LANGAGE ET DEMILove Story
![Page 11: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/11.jpg)
Quand le langage devient agile [11]www.itserv.com.tnwww.itserv.com.tn
C redevient le langage le plus utilisé (2011)
![Page 12: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/12.jpg)
Quand le langage devient agile [12]www.itserv.com.tnwww.itserv.com.tn
Tendence
• Effervescence des projets Hard/Soft
• Effervescence des langages– Diversification des besoins : web, …
– Simplification des langages réputés « difficiles »
– Concision des langages réputés versatiles
![Page 13: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/13.jpg)
Quand le langage devient agile [13]www.itserv.com.tnwww.itserv.com.tn
Langages
• Domaine d’application• DSL (Domain Specific Programming Language)
• GPL (General Purpose Programming Language)
• Paradigmes de programmation• Procédurale
• Fonctionnelle
• Logique
• Orientée objet
• Orientée Aspects
• Orientée Composants
• …
![Page 14: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/14.jpg)
Quand le langage devient agile [14]www.itserv.com.tnwww.itserv.com.tn
Langages
• Spécificités– Structurée / Déstructuré
– Fortement / Faiblement Typé
– Déclaratif / Non déclaratif
– Reflexif / Non Reflexif
Tendance qui suscite les limites des langages existants
![Page 15: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/15.jpg)
Quand le langage devient agile [15]www.itserv.com.tnwww.itserv.com.tn
Donc ???
• Idéalement– Un langage propre au projet
• Résolution orientée problème
– Affute l’agilité et la réactivité• Moins de code
• Plus de visibilité
– Minimise les coups de développement • Sur les GROS projets
• Capitalise sur une BONNE spécification
![Page 16: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/16.jpg)
Quand le langage devient agile [16]www.itserv.com.tnwww.itserv.com.tn
Oui mais …
• Une bonne Librairie peut‐elle répondre au même besoin ?
inv([3-5i 0 ; 0 3-5i ]^2)
Matrix m=new Matrix(new Complex[][]{{new Complex(3,-5), new Complex(0,0)}, {new Complex(0,0), new Complex(3,-5)}});
m=m.multiply(m);m=m.inv();
![Page 17: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/17.jpg)
Quand le langage devient agile [17]www.itserv.com.tnwww.itserv.com.tn
À Méditer
• Une librairie est un DSL muni d’une syntaxe très particulière
![Page 18: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/18.jpg)
Quand le langage devient agile [18]www.itserv.com.tnwww.itserv.com.tn
LOP, … AU GALOPVous dites LOP, … LOL!!
![Page 19: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/19.jpg)
Quand le langage devient agile [19]www.itserv.com.tnwww.itserv.com.tn
Language Oriented Programming
• Définir (étendre) un langage qui répond au mieux àla problématique
• MLL : Middle Level Programming Language
Paradigme Traditionnel
Comprendre (‐)
Choisir (‐)
Programmer (+)
LOP
Comprendre (+)
Construire (+)
Décrire (‐)
Goulot d’ étranglement : Mapping du Monde réel Cas par cas x Nombre de développeurs
![Page 20: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/20.jpg)
Quand le langage devient agile [20]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Liberté– Enfin une conception indépendante des outils de programmation
– Utiliser les meilleures constructions pour chaque problème dans le même language• Versus : DotNet multi Language Paradigm
• Versus : Embeddable Languages Paradigm
• Versus : Scripting Paradigm
• => Mariage non réussi
![Page 21: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/21.jpg)
Quand le langage devient agile [21]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Séparation des préoccupations– Conception générale plus proche d’une spécification formelle
– Détection et résolution des problèmes conceptuels en amont
– Mise en place du langage• Simplifié par l’avancée considérable dans les outils
• Facilement définit
• Aussi puissant que l’on veuille
– Réalisation : traduction formelle triviale
![Page 22: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/22.jpg)
Quand le langage devient agile [22]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Productivité / Réactivité– Plus rapide que Bottom Up/ Top Down
– Très peu versatile particulièrement pour les systèmes complexes
– Taille réduite => plus simple à produire et àmaintenir
– Apprendre de l’échec des L4G• DSL => GPL
• Absence ou manque de spec formelle de la syntaxe
![Page 23: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/23.jpg)
Quand le langage devient agile [23]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Maintenabilité
– Automatisation (Langage) impose des erreurs récurrentes (repérables) et transversales• Choix des structures
• Choix / Implémentation des algos génériques
• Basé sur le DP : Strategy
– Quantification / Matérialisation des Design Patterns
– Capture des choix conceptuels dans des « Modules »
( ) ( )( ) )(int autreosoftTaillefSoftEffort enancema +=
![Page 24: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/24.jpg)
Quand le langage devient agile [24]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Portabilité– Langage intermédiaire
– Choix du langage « Hôte » le plus approprié ne contredit pas la possibilité d’autres interprétations
– Portage vers d’autres langages / OS possible/simple
![Page 25: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/25.jpg)
Quand le langage devient agile [25]www.itserv.com.tnwww.itserv.com.tn
Avantages
• Opportunités de réutilisation– Langage encapsule la « Connaissance du domaine »
• Structures de données
• Opérations / Opérateurs
– Réutilisable dans le même « contexte »
– Un langage « bien conçu » est plus réutilisable qu’un ensemble de fonctions
– Entreprises visant les « secteurs niches »
![Page 26: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/26.jpg)
Quand le langage devient agile [26]www.itserv.com.tnwww.itserv.com.tn
ANATOMIE D’UNE ONOMATOPÉEDo you speak LOP?
![Page 27: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/27.jpg)
Quand le langage devient agile [27]www.itserv.com.tnwww.itserv.com.tn
Qu’est que qu’un programme
• Une suite d’instructions déterministes qui produit une solution au problème énoncé
![Page 28: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/28.jpg)
Quand le langage devient agile [28]www.itserv.com.tnwww.itserv.com.tn
Qu’est que qu’un programme
• Un ensemble de mots, concepts, notions, réflexions inter‐reliées entre eux qui décrivent une solution au problème énoncé
• Un problème / besoin– Les besoins exprimés
– Les contraintes silencieuses
– La marge de manœuvre (le bon sens / callback client)
• Concept : la partie visible de l’iceberg
• Idéalement la solution à produire / à maintenir décrit le concept
![Page 29: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/29.jpg)
Quand le langage devient agile [29]www.itserv.com.tnwww.itserv.com.tn
L’arbre qui cache la forêt
• Gestion de Personnel (besoin exprimé)– contraintes silencieuses
• Concept : CRUD
• Concept : Recherche multi‐critère
• Concept : Navigation itérative
– Marge de manœuvre• Suppression Logique
• Contraintes d’unicité
• Layout des composants graphiques
![Page 30: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/30.jpg)
Quand le langage devient agile [30]www.itserv.com.tnwww.itserv.com.tn
Langage LOP
• Structure– AST (syntaxe abstraite)
– Concept et les relations qui les lient
• Editeur– Syntaxe concrète
– Layout / Affichage et disposition
– Edition / Modification
• Sémantique– Comportement
– Transformation / Interprétation
![Page 31: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/31.jpg)
Quand le langage devient agile [31]www.itserv.com.tnwww.itserv.com.tn
Structure
• Représentation Textuelle vs Représentation en Graphe– Pourquoi
• Il y’a 30 ans l’outil le plus développé été « vi »
• La manipulation au clavier demeure plus rapide
– Pourquoi pas• Parce que je le vaux bien
• Exemple Excel, Word
• Ambigüité de la représentation textuelle (grammaire)
![Page 32: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/32.jpg)
Quand le langage devient agile [32]www.itserv.com.tnwww.itserv.com.tn
Structure
• Décrit par le langage « Structure Language »– LOP est auto‐définit
• Meta Langage : Meta Level
• Définit des nœuds et des relations
• Chaque nœud définit un concept
![Page 33: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/33.jpg)
Quand le langage devient agile [33]www.itserv.com.tnwww.itserv.com.tn
Définition de concept
![Page 34: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/34.jpg)
Quand le langage devient agile [34]www.itserv.com.tnwww.itserv.com.tn
Editeur
• Langage « Editor Language »
• Représentation du graphe dans Editeur Texte enrichi
• Cellules qui peuvent remplacer les « séparateurs »dans un langage textuel
• Représentation « boxed » peut être remplacer par des composants plus riches– Color Chooser
– Symboles Mathématiques
– Graphiques/Charts, …
![Page 35: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/35.jpg)
Quand le langage devient agile [35]www.itserv.com.tnwww.itserv.com.tn
Editeur du concept « Method »
![Page 36: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/36.jpg)
Quand le langage devient agile [36]www.itserv.com.tnwww.itserv.com.tn
Convex Full Algo avec le langage Collections
![Page 37: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/37.jpg)
Quand le langage devient agile [37]www.itserv.com.tnwww.itserv.com.tn
Sémantique
• Langage « Transformation Language »
• Interprétation vs Compilation– Exécution directe
– Génération de code intermédiaire
– Génération de code natif
• Correspondance 1 à 1 des concepts vers le code généré
![Page 38: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/38.jpg)
Quand le langage devient agile [38]www.itserv.com.tnwww.itserv.com.tn
Template de Génération
![Page 39: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/39.jpg)
Quand le langage devient agile [39]www.itserv.com.tnwww.itserv.com.tn
Approches de génération
• Approche Itérative
• Approche à base de Templates
• Approche « Modèle de Recherce » / Search Pattern
• Support des trois modèles
![Page 40: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/40.jpg)
Quand le langage devient agile [40]www.itserv.com.tnwww.itserv.com.tn
Approches de génération
• Approche Itérative – ~Model Query Language
– Génération en profondeur des nœuds
– Parcours et génération • selon une correspondance 1 à 1
![Page 41: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/41.jpg)
Quand le langage devient agile [41]www.itserv.com.tnwww.itserv.com.tn
Approches de génération
• Approche à base de Templates– ~Velocity / XSLT
– Le modèle définit des hooks remplacé par les informations des nœuds
– « Fill in the blanks »
![Page 42: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/42.jpg)
Quand le langage devient agile [42]www.itserv.com.tnwww.itserv.com.tn
Approches de génération
• Approche « Modèle de Recherce »– Pattern Matching Approach
– Application ponctuelle/ciblée de la transformation
– Eq : Expression Régulièrs pour les Concepts
– Aka : Grammaire
![Page 43: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/43.jpg)
Quand le langage devient agile [43]www.itserv.com.tnwww.itserv.com.tn
Pour info
• Model Query Language, Pattern Maching Approachet Template Languges sont déjà supportés par les éditeurs proposant– Auto‐complete
– Refactoring
– Reference Checking
– Error Checking
![Page 44: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/44.jpg)
Quand le langage devient agile [44]www.itserv.com.tnwww.itserv.com.tn
Configuration et Scripting
• Extensibilité des applications complexes– VBScript, Python/Jython, Tcl, JavaScript, Lisp, …
• Utiliser MPS– Langage Script adapté aux besoins du client
– Editeur approprié
![Page 45: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/45.jpg)
Quand le langage devient agile [45]www.itserv.com.tnwww.itserv.com.tn
PLATEFORMES, FRAMEWORKS, LIBRAIRIES ET LANGAGES
Sonate Quator en C# Majeur
![Page 46: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/46.jpg)
Quand le langage devient agile [46]www.itserv.com.tnwww.itserv.com.tn
Choix du langage
• Choix du langage repose sur– Ease of code
– Disposition à la manipulations des• Collections
• Réseau
• DB
• UI
• Réinventer la roue ?– Se baser sur un (?) langage déjà existant
– Se baser sur une (?) Lib/ un (?) Fwk DSL
![Page 47: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/47.jpg)
Quand le langage devient agile [47]www.itserv.com.tnwww.itserv.com.tn
Base Langage
• Bon point de départ
• GPL– Garantit la complétude du langage final
• DSL– Garantit une bonne connaissance du domaine
• Ne pas oublier– La plupart des langages réussis ont un « Base Language »• C => C++ => Java => C#
![Page 48: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/48.jpg)
Quand le langage devient agile [48]www.itserv.com.tnwww.itserv.com.tn
Base Library
• Minimise les erreurs dues au développement de l’interpréteur
• Accélère la mise en place des fonctionnalité du langage
• Donnes des ailes à la librairie
![Page 49: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/49.jpg)
Quand le langage devient agile [49]www.itserv.com.tnwww.itserv.com.tn
Base Framework
• Simplifie la gestion de dépendance au programmeur final
• Se baser sur des best practices
• Evolution en parallèle du langage et du Framework
![Page 50: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/50.jpg)
Quand le langage devient agile [50]www.itserv.com.tnwww.itserv.com.tn
Base Platform
• Relayer les concepts délicats à des plateformes existantes– Sécurité, Montée en charge, .. => JEE
– Génération Multi‐Langage => .Net
![Page 51: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/51.jpg)
Quand le langage devient agile [51]www.itserv.com.tnwww.itserv.com.tn
Conclusion
• A bon chat bon rat
• Ne pas rester retissant % la création de langages– Les bons outils « commencent à exister »
• Diminuer le gap entre spécification, conception et réalisation
• Meilleur partenaire aux méthodes agiles
![Page 52: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/52.jpg)
Quand le langage devient agile [52]www.itserv.com.tnwww.itserv.com.tn
Mais
• Nouvelles compétences nécessaires en – Définition des langages
– Génération de code
– Phase de compréhension des besoins (Métier) plus longue =>• Plus intéressant pour un Editeur de Logiciel
– Maitrise du Métier
• Moins intéressant pour une SS2I– Maitrise de la techno
![Page 53: Agile Day Tunisia 2012 - Quand le langage devient Agile](https://reader033.fdocument.pub/reader033/viewer/2022051412/54815fe8b479596f578b4898/html5/thumbnails/53.jpg)
Quand le langage devient agile [53]www.itserv.com.tnwww.itserv.com.tn
SOYEZ AGILESMerci de votre attention