SlideShare une entreprise Scribd logo
Rex Flex Spring & Agilité*
    Toulouse JUG - 21 avril 2011




 Nicolas Deverge – Bert Poller
                                   * Et des chats
>qui sommes-nous ?
Nicolas – Architecte Java, Agiliste
twitter.com/ndeverge

Bert – Architecte Java
skype: bpoller
>contexte
• Diatta Consulting
• Ingénierie en restauration collective
>architecture client
• Flex – On n’est pas expert
>architecture client
• Flex – On n’est pas expert
• PureMVC ++
>architecture client
• Flex – On n’est pas expert
• PureMVC ++
• Codage Maison : Automapper VO<->DTO,
  Cache DTO
>architecture client
• Flex – On n’est pas expert
• PureMVC ++
• Codage Maison : Automapper VO<->DTO,
  Cache DTO
• Découpage en modules
>architecture client
• Flex – On n’est pas expert
• PureMVC ++
• Codage Maison : Automapper VO<->DTO,
  Cache DTO
• Découpage en modules
• Remoting avec BlazeDS
Vues          VO
                        *.mxml
Présentation,
Logique des vues
et métier

                    Mediators
                    Mediators                             Commands
                                                          Commands



Façade,
Logique technique   ActionHandler/                          Gestion de           Gestion de
                                      VO Mapping
                        Actions                             notification          modules


Gestion de
données                                    API d’appels
                     Proxies
                    Proxies                asynchrones


                    Remote Services
                    Remote Services         DTO                            Notification
Services d’appel
au serveur                                                                 Notification de vue
(générés)
                                                                           Retour asynchrone

                                                                           Appel directe
>architecture client/ Agilité
What’s hot ?
•Graphisme vectoriel, animations
•ActionScript et MXML simples à apprendre
>architecture client/ Agilité
What’s hot ?
•Graphisme vectoriel, animations
•ActionScript et MXML simples à apprendre

What’s not ?
•Temps de compilation
•Refactoring assez limité
•Adobe Flashbuilder 4 sous Windows et Mac (pas
Linux)
>architecture serveur
•Au début MDA (Xtext, Acceleo)
•Spring 3 – IoC classique
•Full Hibernate 3.6 - mapping en hbm.xml
>architecture serveur
•Au début MDA (Xtext, Acceleo)
•Spring 3 – IoC classique
•Full Hibernate 3.6 - mapping en hbm.xml
•Spring-Flex
   •Intégration BlazeDS, Spring-Security, Log4j
>architecture serveur
•Au début MDA (Xtext, Acceleo)
•Spring 3 – IoC classique
•Full Hibernate 3.6 - mapping en hbm.xml
•Spring-Flex
   •Intégration BlazeDS, Spring-Security, Log4j
•Dozer : mapping domain <-> DTO
>architecture serveur
•Au début MDA (Xtext, Acceleo)
•Spring 3 – IoC classique
•Full Hibernate 3.6 - mapping en hbm.xml
•Spring-Flex
   •Intégration BlazeDS, Spring-Security, Log4j
•Dozer : mapping domain <-> DTO
•DataProviders codés maison
>architecture serveur
•Au début MDA (Xtext, Acceleo)
•Spring 3 – IoC classique
•Full Hibernate 3.6 - mapping en hbm.xml
•Spring-Flex
   •Intégration BlazeDS, Spring-Security, Log4j
•Dozer : mapping domain <-> DTO
•DataProviders codés maison
•HSQLDB en dev+test, MySQL en prod
BlazeDS




          DTO
Façade




          Domain
Service



 DAO



 BDD
>architecture serveur
Flyway :   - initialisation du schéma bdd
           - migration des données
>architecture serveur
Flyway :      - initialisation du schéma bdd
              - migration des données
en sql :             et      en java :




       import org.springframework.jdbc.core.JdbcTemplate;
       import com.googlecode.flyway.core.migration.java.JavaMigration;

       /**Example of a Java-based migration.*/
       public class V1_2__Another_user implements JavaMigration {
       public void migrate(final JdbcTemplate jdbcTemplate) throws Exception {
       jdbcTemplate.execute("INSERT INTO test_user (name) VALUES ('Obelix')");
         }
       }
>architecture serveur/ Agilité
What’s hot ?
•Flyway (migration de schéma bdd)
•Data Provider (données métier, TU)
>architecture serveur/ Agilité
What’s hot ?
•Flyway (migration de schéma bdd)
•Data Provider (données métier, TU)
What’s not ?
•Mille feuilles
•Xml a go go <-> @Entity + @AutoWired
>scrum/ Agilité
>scrum/ Agilité
What’s hot ?
•Radiateur d’information (post-it)
•Daily scrum
•Revue de sprint
•Gizmo
>scrum/ Agilité
What’s hot ?
•Radiateur d’information (post-it)
•Daily scrum
•Revue de sprint
•Gizmo
What’s not ?
•Rétrospective
•Adoption du support informatique
(GreenHopper)
•Product owner proxy
>build
>build
What’s hot ?
•Maven profiles
•Intégration continue
•Documentation intégrée (mvn site, umlGraphDoc)
•Conception émergente
>build/ Agilité
What’s hot ?
•Maven profiles
•Intégration continue
•Documentation intégrée (mvn site, umlGraphDoc)
•Conception émergente

What’s not ?
•Adoption limitée de TDD
•Pas assez de TU
>références
•   Chats : lolcats.com, icanhascheezburger.com
•   Tag cloud : www.tagxedo.com
•   Diatta Consulting : www.diatta-consulting.com
•   Flyway : code.google.com/p/flyway
•   PureMVC : puremvc.org
•   Spring Source : www.springsource.com
•   Hibernate : www.hibernate.org
•   UMLGraph : www.umlgraph.org
>copyright



Présentation sous licence
  Creative Commons CC BY-NC 2.0
  creativecommons.org/licenses/by-nc/2.0/fr/

Contenu connexe

Tendances

HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
CARA_Lyon
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
Abdoulaye Dieng
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Aurelien Navarre
 
Architecture de services web de type ressource
Architecture de services web de type ressourceArchitecture de services web de type ressource
Architecture de services web de type ressource
Antoine Pouch
 
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
Ouadie LAHDIOUI
 
Architecture java j2 ee a partager
Architecture java j2 ee a partagerArchitecture java j2 ee a partager
Architecture java j2 ee a partager
aliagadir
 
Cours JSP
Cours JSPCours JSP
Cours JSP
herynantenaina
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
Boubker ABERWAG
 
Workshop Spring - Session 1 - L'offre Spring et les bases
Workshop Spring  - Session 1 - L'offre Spring et les basesWorkshop Spring  - Session 1 - L'offre Spring et les bases
Workshop Spring - Session 1 - L'offre Spring et les bases
Antoine Rey
 
De Maven à SBT ScalaIO 2013
De Maven à SBT ScalaIO 2013De Maven à SBT ScalaIO 2013
De Maven à SBT ScalaIO 2013Stephane Manciot
 
Symfony with angular.pptx
Symfony with angular.pptxSymfony with angular.pptx
Symfony with angular.pptx
Esokia
 
Configuration Management avec Drupal 8
Configuration Management avec Drupal 8Configuration Management avec Drupal 8
Configuration Management avec Drupal 8
Aurelien Navarre
 
Microbox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien RoyMicrobox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien Roy
ekino
 
Les Servlets et JSP
Les Servlets et JSPLes Servlets et JSP
Les Servlets et JSP
Korteby Farouk
 
Utilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérienceUtilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérience
louschwartz
 
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchéesDrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
Aurelien Navarre
 
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
Aurelien Navarre
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejsnaholyr
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?
Antoine Rey
 

Tendances (20)

HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
 
Architecture de services web de type ressource
Architecture de services web de type ressourceArchitecture de services web de type ressource
Architecture de services web de type ressource
 
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
Real-Time applications avec la spécification Java (JSR 356) et le protocole W...
 
Architecture java j2 ee a partager
Architecture java j2 ee a partagerArchitecture java j2 ee a partager
Architecture java j2 ee a partager
 
Cours JSP
Cours JSPCours JSP
Cours JSP
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
Workshop Spring - Session 1 - L'offre Spring et les bases
Workshop Spring  - Session 1 - L'offre Spring et les basesWorkshop Spring  - Session 1 - L'offre Spring et les bases
Workshop Spring - Session 1 - L'offre Spring et les bases
 
De Maven à SBT ScalaIO 2013
De Maven à SBT ScalaIO 2013De Maven à SBT ScalaIO 2013
De Maven à SBT ScalaIO 2013
 
Symfony with angular.pptx
Symfony with angular.pptxSymfony with angular.pptx
Symfony with angular.pptx
 
Configuration Management avec Drupal 8
Configuration Management avec Drupal 8Configuration Management avec Drupal 8
Configuration Management avec Drupal 8
 
Microbox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien RoyMicrobox : Ma toolbox microservices - Julien Roy
Microbox : Ma toolbox microservices - Julien Roy
 
Jsp
JspJsp
Jsp
 
Les Servlets et JSP
Les Servlets et JSPLes Servlets et JSP
Les Servlets et JSP
 
Utilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérienceUtilisation de ZK avec Java - Retour d’expérience
Utilisation de ZK avec Java - Retour d’expérience
 
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchéesDrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
 
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
DrupalCamp Nantes 2016 - Migrer un site Drupal 6 ou Drupal 7 vers Drupal 8
 
Réu technodejs
Réu technodejsRéu technodejs
Réu technodejs
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?
 

Similaire à ToulouseJUG - REX Flex, Spring & Agilité

System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
Microsoft Technet France
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Jasmine Conseil
 
System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...
Microsoft Technet France
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
Benoît de CHATEAUVIEUX
 
Session GWT Devoxx France 2012 Cobra
Session GWT Devoxx France 2012 CobraSession GWT Devoxx France 2012 Cobra
Session GWT Devoxx France 2012 Cobra
DNG Consulting
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
Christophe Furmaniak
 
Continuité de service informatique : comment ça fonctionne ?
Continuité de service informatique : comment ça fonctionne ?Continuité de service informatique : comment ça fonctionne ?
Continuité de service informatique : comment ça fonctionne ?
Trader's - Quick Software Line
 
Migration des réseaux d agence : les apports de Windows Server 2012 R2
Migration des réseaux d agence : les apports de Windows Server 2012 R2Migration des réseaux d agence : les apports de Windows Server 2012 R2
Migration des réseaux d agence : les apports de Windows Server 2012 R2
Microsoft
 
Meetup - Construire des applications serverless avec Azure
Meetup - Construire des applications serverless avec AzureMeetup - Construire des applications serverless avec Azure
Meetup - Construire des applications serverless avec Azure
Samir Arezki ☁
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
CARA_Lyon
 
Sécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentielSécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentiel
Microsoft Décideurs IT
 
Sécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentielSécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentiel
Microsoft Technet France
 
Intellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsIntellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server Internals
Neil Armstrong
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
davrous
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Cellenza
 
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private CloudLe Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Microsoft Technet France
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
Vincent Biret
 
System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...
Microsoft Technet France
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
Xavier MARIN
 
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenterMSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
MickaelLOPES91
 

Similaire à ToulouseJUG - REX Flex, Spring & Agilité (20)

System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
 
System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
 
Session GWT Devoxx France 2012 Cobra
Session GWT Devoxx France 2012 CobraSession GWT Devoxx France 2012 Cobra
Session GWT Devoxx France 2012 Cobra
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
Continuité de service informatique : comment ça fonctionne ?
Continuité de service informatique : comment ça fonctionne ?Continuité de service informatique : comment ça fonctionne ?
Continuité de service informatique : comment ça fonctionne ?
 
Migration des réseaux d agence : les apports de Windows Server 2012 R2
Migration des réseaux d agence : les apports de Windows Server 2012 R2Migration des réseaux d agence : les apports de Windows Server 2012 R2
Migration des réseaux d agence : les apports de Windows Server 2012 R2
 
Meetup - Construire des applications serverless avec Azure
Meetup - Construire des applications serverless avec AzureMeetup - Construire des applications serverless avec Azure
Meetup - Construire des applications serverless avec Azure
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
Sécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentielSécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentiel
 
Sécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentielSécurité Active Directory: Etablir un référentiel
Sécurité Active Directory: Etablir un référentiel
 
Intellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsIntellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server Internals
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
 
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private CloudLe Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 
System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...System Center Operations Manager et la supervision des applications (.Net et ...
System Center Operations Manager et la supervision des applications (.Net et ...
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenterMSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
MSCS : Windows Server 2016 Quoi de neuf pour votre datacenter
 

Plus de Nicolas Deverge

Le Lean Startup depuis les tranchées
Le Lean Startup depuis les tranchéesLe Lean Startup depuis les tranchées
Le Lean Startup depuis les tranchées
Nicolas Deverge
 
BBL - Scala Intro / Coding Dojo
BBL - Scala Intro / Coding DojoBBL - Scala Intro / Coding Dojo
BBL - Scala Intro / Coding Dojo
Nicolas Deverge
 
A story of my incoming product using LeanStartup
A story of my incoming product using LeanStartupA story of my incoming product using LeanStartup
A story of my incoming product using LeanStartup
Nicolas Deverge
 
How to bootstrap your idea when you are a developer
How to bootstrap your idea when you are a developerHow to bootstrap your idea when you are a developer
How to bootstrap your idea when you are a developer
Nicolas Deverge
 
L'agilité en quelques slides
L'agilité en quelques slidesL'agilité en quelques slides
L'agilité en quelques slides
Nicolas Deverge
 
AgileIUT
AgileIUTAgileIUT
AgileIUT
Nicolas Deverge
 

Plus de Nicolas Deverge (6)

Le Lean Startup depuis les tranchées
Le Lean Startup depuis les tranchéesLe Lean Startup depuis les tranchées
Le Lean Startup depuis les tranchées
 
BBL - Scala Intro / Coding Dojo
BBL - Scala Intro / Coding DojoBBL - Scala Intro / Coding Dojo
BBL - Scala Intro / Coding Dojo
 
A story of my incoming product using LeanStartup
A story of my incoming product using LeanStartupA story of my incoming product using LeanStartup
A story of my incoming product using LeanStartup
 
How to bootstrap your idea when you are a developer
How to bootstrap your idea when you are a developerHow to bootstrap your idea when you are a developer
How to bootstrap your idea when you are a developer
 
L'agilité en quelques slides
L'agilité en quelques slidesL'agilité en quelques slides
L'agilité en quelques slides
 
AgileIUT
AgileIUTAgileIUT
AgileIUT
 

Dernier

De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
Université de Franche-Comté
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Laurent Speyser
 
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO Technology
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
AlbertSmithTambwe
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
OCTO Technology
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
UNITECBordeaux
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
AlbertSmithTambwe
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
abderrahimbourimi
 
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
OCTO Technology
 

Dernier (9)

De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
 
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO TALKS : 4 Tech Trends du Software Engineering.pdf
OCTO TALKS : 4 Tech Trends du Software Engineering.pdf
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
 
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
 

ToulouseJUG - REX Flex, Spring & Agilité

  • 1. Rex Flex Spring & Agilité* Toulouse JUG - 21 avril 2011 Nicolas Deverge – Bert Poller * Et des chats
  • 2.
  • 3. >qui sommes-nous ? Nicolas – Architecte Java, Agiliste twitter.com/ndeverge Bert – Architecte Java skype: bpoller
  • 4. >contexte • Diatta Consulting • Ingénierie en restauration collective
  • 5. >architecture client • Flex – On n’est pas expert
  • 6. >architecture client • Flex – On n’est pas expert • PureMVC ++
  • 7. >architecture client • Flex – On n’est pas expert • PureMVC ++ • Codage Maison : Automapper VO<->DTO, Cache DTO
  • 8. >architecture client • Flex – On n’est pas expert • PureMVC ++ • Codage Maison : Automapper VO<->DTO, Cache DTO • Découpage en modules
  • 9. >architecture client • Flex – On n’est pas expert • PureMVC ++ • Codage Maison : Automapper VO<->DTO, Cache DTO • Découpage en modules • Remoting avec BlazeDS
  • 10. Vues VO *.mxml Présentation, Logique des vues et métier Mediators Mediators Commands Commands Façade, Logique technique ActionHandler/ Gestion de Gestion de VO Mapping Actions notification modules Gestion de données API d’appels Proxies Proxies asynchrones Remote Services Remote Services DTO Notification Services d’appel au serveur Notification de vue (générés) Retour asynchrone Appel directe
  • 11. >architecture client/ Agilité What’s hot ? •Graphisme vectoriel, animations •ActionScript et MXML simples à apprendre
  • 12. >architecture client/ Agilité What’s hot ? •Graphisme vectoriel, animations •ActionScript et MXML simples à apprendre What’s not ? •Temps de compilation •Refactoring assez limité •Adobe Flashbuilder 4 sous Windows et Mac (pas Linux)
  • 13. >architecture serveur •Au début MDA (Xtext, Acceleo) •Spring 3 – IoC classique •Full Hibernate 3.6 - mapping en hbm.xml
  • 14. >architecture serveur •Au début MDA (Xtext, Acceleo) •Spring 3 – IoC classique •Full Hibernate 3.6 - mapping en hbm.xml •Spring-Flex •Intégration BlazeDS, Spring-Security, Log4j
  • 15. >architecture serveur •Au début MDA (Xtext, Acceleo) •Spring 3 – IoC classique •Full Hibernate 3.6 - mapping en hbm.xml •Spring-Flex •Intégration BlazeDS, Spring-Security, Log4j •Dozer : mapping domain <-> DTO
  • 16. >architecture serveur •Au début MDA (Xtext, Acceleo) •Spring 3 – IoC classique •Full Hibernate 3.6 - mapping en hbm.xml •Spring-Flex •Intégration BlazeDS, Spring-Security, Log4j •Dozer : mapping domain <-> DTO •DataProviders codés maison
  • 17. >architecture serveur •Au début MDA (Xtext, Acceleo) •Spring 3 – IoC classique •Full Hibernate 3.6 - mapping en hbm.xml •Spring-Flex •Intégration BlazeDS, Spring-Security, Log4j •Dozer : mapping domain <-> DTO •DataProviders codés maison •HSQLDB en dev+test, MySQL en prod
  • 18. BlazeDS DTO Façade Domain Service DAO BDD
  • 19. >architecture serveur Flyway : - initialisation du schéma bdd - migration des données
  • 20. >architecture serveur Flyway : - initialisation du schéma bdd - migration des données en sql : et en java : import org.springframework.jdbc.core.JdbcTemplate; import com.googlecode.flyway.core.migration.java.JavaMigration; /**Example of a Java-based migration.*/ public class V1_2__Another_user implements JavaMigration { public void migrate(final JdbcTemplate jdbcTemplate) throws Exception { jdbcTemplate.execute("INSERT INTO test_user (name) VALUES ('Obelix')"); } }
  • 21. >architecture serveur/ Agilité What’s hot ? •Flyway (migration de schéma bdd) •Data Provider (données métier, TU)
  • 22. >architecture serveur/ Agilité What’s hot ? •Flyway (migration de schéma bdd) •Data Provider (données métier, TU) What’s not ? •Mille feuilles •Xml a go go <-> @Entity + @AutoWired
  • 24. >scrum/ Agilité What’s hot ? •Radiateur d’information (post-it) •Daily scrum •Revue de sprint •Gizmo
  • 25. >scrum/ Agilité What’s hot ? •Radiateur d’information (post-it) •Daily scrum •Revue de sprint •Gizmo What’s not ? •Rétrospective •Adoption du support informatique (GreenHopper) •Product owner proxy
  • 27. >build What’s hot ? •Maven profiles •Intégration continue •Documentation intégrée (mvn site, umlGraphDoc) •Conception émergente
  • 28. >build/ Agilité What’s hot ? •Maven profiles •Intégration continue •Documentation intégrée (mvn site, umlGraphDoc) •Conception émergente What’s not ? •Adoption limitée de TDD •Pas assez de TU
  • 29.
  • 30. >références • Chats : lolcats.com, icanhascheezburger.com • Tag cloud : www.tagxedo.com • Diatta Consulting : www.diatta-consulting.com • Flyway : code.google.com/p/flyway • PureMVC : puremvc.org • Spring Source : www.springsource.com • Hibernate : www.hibernate.org • UMLGraph : www.umlgraph.org
  • 31. >copyright Présentation sous licence Creative Commons CC BY-NC 2.0 creativecommons.org/licenses/by-nc/2.0/fr/