SlideShare a Scribd company logo
1 of 16
Download to read offline
30 mai 2011




  Olivier Tabone




     Pratiques de développement itératif

lundi 30 mai 2011
30 mai 2011




  Olivier Tabone




                    [Code, Test, Ship, Learn]+

lundi 30 mai 2011
Ripple Motion

   crée en 2008, 10
   personnes

   Editeur d’applis
   mobiles

   iPhone et iPad

   B2B, B2C

   principes “Agiles”
   pour viser juste et
   vite
                         €ssence, SkiGuide, et les autres
lundi 30 mai 2011
Modélisation simple
  cycle = 2 semaines                        amélioration du cycle ?
                                        4
                                                         en faire +
                                Learn                       faire mieux



                    Design                       Ship
                         1                              3




                             Test + Code
                                            2




lundi 30 mai 2011
Code

                                                 Test + Code




                    500 lignes écrites / jour / dev


            Comment les rendre utiles à
            l’utilisateur ?




lundi 30 mai 2011
Code

        •       Project Templates   Test + Code




lundi 30 mai 2011
Code

        •       Factorisation de code                         Test + Code

     code once, use many times




                                      Appli   500 lignes


                    Framework applicatif      1500 lignes


                    Libs “Features”           20 000 lignes


                    Libs “Base”               50 000 lignes




lundi 30 mai 2011
Code

        •       Gestion dépendances des libs                      Test + Code

                       2 ans 1/2 d’attente... pour quelques jours de boulot




                                            facilite la réutilisation des libs

lundi 30 mai 2011
Arithmétique des tests

                                                                  Test + Code




                             x nb de libs /
                                              =
                                applis




                    GHUnit                                  Hudson
                     10         x 150             = harnais de non régression

lundi 30 mai 2011
Anticipez les régression
                                                   Test + Code

                             configuration   Environment
        Appli                   outil CI       distant


                    App                       Production
                              conf “Prod”

                     Lib 1
                                               Staging


                     Lib 2
                                             Development
                                  conf
                             “Intégration”
                      ...

                                               tourne “la
                                                 nuit”
lundi 30 mai 2011
Ship Early, ship often

       •       Distribution “Over the air”              Ship



                                             feedback



                               cycle: 1-2
                                 jours

                    push
                                                   beta
                                                 testeurs
lundi 30 mai 2011
Get ready

       •       charge serveur difficile à évaluer             Ship




            delai : 1 - 3 semaines, l’appli sort en général
            le samedi soir...

lundi 30 mai 2011
Learn

       • Monitoring des applis                           Learn




                                         interne (Analytics-
                                                like)

                    monitoring externe
lundi 30 mai 2011
Learn


          • WWDC
                                                   Learn




        • Coding Dojo, Retrospectives, Code
                reviews, ... et autres pratiques
                Agiles




lundi 30 mai 2011
Q&A


                       Learn




      Design                      Ship
                                         $


                    Test + Code




lundi 30 mai 2011
Q&A




                    Merci



lundi 30 mai 2011

More Related Content

Viewers also liked

Analisis discurso completo
Analisis discurso completoAnalisis discurso completo
Analisis discurso completomarthalucia102
 
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-Rubí
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-RubíForo Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-Rubí
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-RubíBanco Popular
 
Un reloj de Sol para el I.E.S. La Jarcia
Un reloj de Sol para el I.E.S. La JarciaUn reloj de Sol para el I.E.S. La Jarcia
Un reloj de Sol para el I.E.S. La Jarciasergio_ortega
 
El lugar magico su nombre el bosque
El lugar magico su nombre el bosqueEl lugar magico su nombre el bosque
El lugar magico su nombre el bosquejorgetheviper
 
Horarios de Centro de Negocios Personales Semana Santa 2015
Horarios de Centro de Negocios Personales Semana Santa 2015Horarios de Centro de Negocios Personales Semana Santa 2015
Horarios de Centro de Negocios Personales Semana Santa 2015Banco Popular
 
Programme ateliers numériques automne 2013 - Office de Tourisme de l'Auxerrois
Programme ateliers numériques automne 2013 - Office de Tourisme de l'AuxerroisProgramme ateliers numériques automne 2013 - Office de Tourisme de l'Auxerrois
Programme ateliers numériques automne 2013 - Office de Tourisme de l'AuxerroisAnne-Sophie LATRY
 
Enfermedades de transmision_sexual
Enfermedades de transmision_sexualEnfermedades de transmision_sexual
Enfermedades de transmision_sexualwhanda geanini
 
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)Banco Popular
 
Historia de microsoft
Historia de microsoftHistoria de microsoft
Historia de microsoftkattymari
 
Presentación Veneseg Completa
Presentación Veneseg CompletaPresentación Veneseg Completa
Presentación Veneseg Completac_herault
 
Ipoi41 Analisis de la oferta hamb
Ipoi41 Analisis de la oferta hambIpoi41 Analisis de la oferta hamb
Ipoi41 Analisis de la oferta hambVacker Flicka
 
Tribus urbanas
Tribus urbanasTribus urbanas
Tribus urbanasvaleynata
 

Viewers also liked (20)

capacidades
capacidadescapacidades
capacidades
 
Recursos en Filología Catalana
Recursos en Filología CatalanaRecursos en Filología Catalana
Recursos en Filología Catalana
 
2012_2_CiBasico_Tema5FuentesPedagogíaYEducaciónSocial
2012_2_CiBasico_Tema5FuentesPedagogíaYEducaciónSocial2012_2_CiBasico_Tema5FuentesPedagogíaYEducaciónSocial
2012_2_CiBasico_Tema5FuentesPedagogíaYEducaciónSocial
 
Analisis discurso completo
Analisis discurso completoAnalisis discurso completo
Analisis discurso completo
 
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-Rubí
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-RubíForo Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-Rubí
Foro Impulsa Popular 2014 "Tendencia" - Antoni Gutiérrez-Rubí
 
Un reloj de Sol para el I.E.S. La Jarcia
Un reloj de Sol para el I.E.S. La JarciaUn reloj de Sol para el I.E.S. La Jarcia
Un reloj de Sol para el I.E.S. La Jarcia
 
El lugar magico su nombre el bosque
El lugar magico su nombre el bosqueEl lugar magico su nombre el bosque
El lugar magico su nombre el bosque
 
Horarios de Centro de Negocios Personales Semana Santa 2015
Horarios de Centro de Negocios Personales Semana Santa 2015Horarios de Centro de Negocios Personales Semana Santa 2015
Horarios de Centro de Negocios Personales Semana Santa 2015
 
Programme ateliers numériques automne 2013 - Office de Tourisme de l'Auxerrois
Programme ateliers numériques automne 2013 - Office de Tourisme de l'AuxerroisProgramme ateliers numériques automne 2013 - Office de Tourisme de l'Auxerrois
Programme ateliers numériques automne 2013 - Office de Tourisme de l'Auxerrois
 
Enfermedades de transmision_sexual
Enfermedades de transmision_sexualEnfermedades de transmision_sexual
Enfermedades de transmision_sexual
 
La famille
La familleLa famille
La famille
 
Narrativa ficticia
Narrativa  ficticiaNarrativa  ficticia
Narrativa ficticia
 
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)
Horarios especial por el Día del natalicio de Juan Pablo Duarte (26 de enero)
 
Historia de microsoft
Historia de microsoftHistoria de microsoft
Historia de microsoft
 
Unidad I
Unidad IUnidad I
Unidad I
 
Presentación Veneseg Completa
Presentación Veneseg CompletaPresentación Veneseg Completa
Presentación Veneseg Completa
 
Alzira perros
Alzira perrosAlzira perros
Alzira perros
 
Hikikomoris
HikikomorisHikikomoris
Hikikomoris
 
Ipoi41 Analisis de la oferta hamb
Ipoi41 Analisis de la oferta hambIpoi41 Analisis de la oferta hamb
Ipoi41 Analisis de la oferta hamb
 
Tribus urbanas
Tribus urbanasTribus urbanas
Tribus urbanas
 

More from CocoaHeadsRNS

CocoaHeads Rennes #16: OHHTTPStubs
CocoaHeads Rennes #16: OHHTTPStubsCocoaHeads Rennes #16: OHHTTPStubs
CocoaHeads Rennes #16: OHHTTPStubsCocoaHeadsRNS
 
CocoaHeads Rennes #14: iOS7 Controllers Transitions
 CocoaHeads Rennes #14: iOS7 Controllers Transitions CocoaHeads Rennes #14: iOS7 Controllers Transitions
CocoaHeads Rennes #14: iOS7 Controllers TransitionsCocoaHeadsRNS
 
CocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par CeledevCocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par CeledevCocoaHeadsRNS
 
CocoaHeads Rennes #13 : Magical Record
CocoaHeads Rennes #13 : Magical RecordCocoaHeads Rennes #13 : Magical Record
CocoaHeads Rennes #13 : Magical RecordCocoaHeadsRNS
 
CocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPodsCocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPodsCocoaHeadsRNS
 
CocoaHeads Rennes #10 : Mock Objects
CocoaHeads Rennes #10 : Mock ObjectsCocoaHeads Rennes #10 : Mock Objects
CocoaHeads Rennes #10 : Mock ObjectsCocoaHeadsRNS
 
CocoaHeads Rennes #10 : Notifications
CocoaHeads Rennes #10 : NotificationsCocoaHeads Rennes #10 : Notifications
CocoaHeads Rennes #10 : NotificationsCocoaHeadsRNS
 
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeadsRNS
 
CocoaHeads Rennes #7 : Intégration continue pour les nuls
CocoaHeads Rennes #7 : Intégration continue pour les nulsCocoaHeads Rennes #7 : Intégration continue pour les nuls
CocoaHeads Rennes #7 : Intégration continue pour les nulsCocoaHeadsRNS
 
CocoaHeads Rennes #6
CocoaHeads Rennes #6CocoaHeads Rennes #6
CocoaHeads Rennes #6CocoaHeadsRNS
 
CocoaHeads Rennes #5 : iOS & Android
CocoaHeads Rennes #5 : iOS & AndroidCocoaHeads Rennes #5 : iOS & Android
CocoaHeads Rennes #5 : iOS & AndroidCocoaHeadsRNS
 
CocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOSCocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOSCocoaHeadsRNS
 
CocoaHeads Rennes #4 : la rotation sur iOS
CocoaHeads Rennes #4 : la rotation sur iOSCocoaHeads Rennes #4 : la rotation sur iOS
CocoaHeads Rennes #4 : la rotation sur iOSCocoaHeadsRNS
 
Cocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOSCocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOSCocoaHeadsRNS
 
CocoaHeads Rennes #3 : Bien débuter sur iOS
CocoaHeads Rennes #3 : Bien débuter sur iOSCocoaHeads Rennes #3 : Bien débuter sur iOS
CocoaHeads Rennes #3 : Bien débuter sur iOSCocoaHeadsRNS
 
CocoaHeads Rennes #2 : Xcode 4
CocoaHeads Rennes #2 : Xcode 4CocoaHeads Rennes #2 : Xcode 4
CocoaHeads Rennes #2 : Xcode 4CocoaHeadsRNS
 
CocoaHeads Rennes #1 : Grand Central Dispatch
CocoaHeads Rennes #1 : Grand Central DispatchCocoaHeads Rennes #1 : Grand Central Dispatch
CocoaHeads Rennes #1 : Grand Central DispatchCocoaHeadsRNS
 
CocoaHeads Rennes #1 : internationalisation
CocoaHeads Rennes #1 : internationalisationCocoaHeads Rennes #1 : internationalisation
CocoaHeads Rennes #1 : internationalisationCocoaHeadsRNS
 

More from CocoaHeadsRNS (18)

CocoaHeads Rennes #16: OHHTTPStubs
CocoaHeads Rennes #16: OHHTTPStubsCocoaHeads Rennes #16: OHHTTPStubs
CocoaHeads Rennes #16: OHHTTPStubs
 
CocoaHeads Rennes #14: iOS7 Controllers Transitions
 CocoaHeads Rennes #14: iOS7 Controllers Transitions CocoaHeads Rennes #14: iOS7 Controllers Transitions
CocoaHeads Rennes #14: iOS7 Controllers Transitions
 
CocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par CeledevCocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par Celedev
 
CocoaHeads Rennes #13 : Magical Record
CocoaHeads Rennes #13 : Magical RecordCocoaHeads Rennes #13 : Magical Record
CocoaHeads Rennes #13 : Magical Record
 
CocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPodsCocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPods
 
CocoaHeads Rennes #10 : Mock Objects
CocoaHeads Rennes #10 : Mock ObjectsCocoaHeads Rennes #10 : Mock Objects
CocoaHeads Rennes #10 : Mock Objects
 
CocoaHeads Rennes #10 : Notifications
CocoaHeads Rennes #10 : NotificationsCocoaHeads Rennes #10 : Notifications
CocoaHeads Rennes #10 : Notifications
 
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
 
CocoaHeads Rennes #7 : Intégration continue pour les nuls
CocoaHeads Rennes #7 : Intégration continue pour les nulsCocoaHeads Rennes #7 : Intégration continue pour les nuls
CocoaHeads Rennes #7 : Intégration continue pour les nuls
 
CocoaHeads Rennes #6
CocoaHeads Rennes #6CocoaHeads Rennes #6
CocoaHeads Rennes #6
 
CocoaHeads Rennes #5 : iOS & Android
CocoaHeads Rennes #5 : iOS & AndroidCocoaHeads Rennes #5 : iOS & Android
CocoaHeads Rennes #5 : iOS & Android
 
CocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOSCocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOS
 
CocoaHeads Rennes #4 : la rotation sur iOS
CocoaHeads Rennes #4 : la rotation sur iOSCocoaHeads Rennes #4 : la rotation sur iOS
CocoaHeads Rennes #4 : la rotation sur iOS
 
Cocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOSCocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOS
 
CocoaHeads Rennes #3 : Bien débuter sur iOS
CocoaHeads Rennes #3 : Bien débuter sur iOSCocoaHeads Rennes #3 : Bien débuter sur iOS
CocoaHeads Rennes #3 : Bien débuter sur iOS
 
CocoaHeads Rennes #2 : Xcode 4
CocoaHeads Rennes #2 : Xcode 4CocoaHeads Rennes #2 : Xcode 4
CocoaHeads Rennes #2 : Xcode 4
 
CocoaHeads Rennes #1 : Grand Central Dispatch
CocoaHeads Rennes #1 : Grand Central DispatchCocoaHeads Rennes #1 : Grand Central Dispatch
CocoaHeads Rennes #1 : Grand Central Dispatch
 
CocoaHeads Rennes #1 : internationalisation
CocoaHeads Rennes #1 : internationalisationCocoaHeads Rennes #1 : internationalisation
CocoaHeads Rennes #1 : internationalisation
 

CocoaHeads Rennes #2 : Pratiques de développement itératif

  • 1. 30 mai 2011 Olivier Tabone Pratiques de développement itératif lundi 30 mai 2011
  • 2. 30 mai 2011 Olivier Tabone [Code, Test, Ship, Learn]+ lundi 30 mai 2011
  • 3. Ripple Motion crée en 2008, 10 personnes Editeur d’applis mobiles iPhone et iPad B2B, B2C principes “Agiles” pour viser juste et vite €ssence, SkiGuide, et les autres lundi 30 mai 2011
  • 4. Modélisation simple cycle = 2 semaines amélioration du cycle ? 4 en faire + Learn faire mieux Design Ship 1 3 Test + Code 2 lundi 30 mai 2011
  • 5. Code Test + Code 500 lignes écrites / jour / dev Comment les rendre utiles à l’utilisateur ? lundi 30 mai 2011
  • 6. Code • Project Templates Test + Code lundi 30 mai 2011
  • 7. Code • Factorisation de code Test + Code code once, use many times Appli 500 lignes Framework applicatif 1500 lignes Libs “Features” 20 000 lignes Libs “Base” 50 000 lignes lundi 30 mai 2011
  • 8. Code • Gestion dépendances des libs Test + Code 2 ans 1/2 d’attente... pour quelques jours de boulot facilite la réutilisation des libs lundi 30 mai 2011
  • 9. Arithmétique des tests Test + Code x nb de libs / = applis GHUnit Hudson 10 x 150 = harnais de non régression lundi 30 mai 2011
  • 10. Anticipez les régression Test + Code configuration Environment Appli outil CI distant App Production conf “Prod” Lib 1 Staging Lib 2 Development conf “Intégration” ... tourne “la nuit” lundi 30 mai 2011
  • 11. Ship Early, ship often • Distribution “Over the air” Ship feedback cycle: 1-2 jours push beta testeurs lundi 30 mai 2011
  • 12. Get ready • charge serveur difficile à évaluer Ship delai : 1 - 3 semaines, l’appli sort en général le samedi soir... lundi 30 mai 2011
  • 13. Learn • Monitoring des applis Learn interne (Analytics- like) monitoring externe lundi 30 mai 2011
  • 14. Learn • WWDC Learn • Coding Dojo, Retrospectives, Code reviews, ... et autres pratiques Agiles lundi 30 mai 2011
  • 15. Q&A Learn Design Ship $ Test + Code lundi 30 mai 2011
  • 16. Q&A Merci lundi 30 mai 2011