Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Le développement côté utilisateur

615 views

Published on

Cours donné aux licences webdeveloppement à l'INSSET de Saint Quentin le Mardi 2 Octobre 2012.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Le développement côté utilisateur

  1. 1. LEDÉVELOPPEMENT CÔTÉ UTILISATEUR David Buros Développeur – No Parking
  2. 2. About.me Développeur PHP depuis 5 ans.Quatre belles expériences en entreprise. Du code, mais pas que. Veille, veille, veille !
  3. 3. LINFORMATICIEN « Rush middle ! » ww.web2mag.info/wp-content/uploads/2011/09/Fotolia_18567847_Subscription_XL.jpg
  4. 4. « Faire comprendre votre travail, cest déjà votre travail »« Plus vous communiquerez et plus on vous fera confiance » « Les non techniciens sont vos amis. Et souvent vos collègues »« Gardez à lesprit pour qui vous travaillez »
  5. 5. Vous êtes des ARTISANS Pas des TRADERSNi des chefs de projets. (petite digression right now)
  6. 6. EXERCICE N° 1 EXPLIQUEZ… en une cinquantaine de mots, Internet à votre grand-mère. Bien entendu, vous adapterez votre langage. Postulat de départ : elle nest pas sourde et a toute sa tête. 10 minutes
  7. 7. LE CLIENT« Bleu le bouton, heu non rouge, heu non vert, heuuuu http://referencechecknz.co.nz/wp-content/uploads/networking2.jpg
  8. 8. PAR DÉFINITION, LE CLIENTNE SAIT PAS CE QUIL VEUT. Et ne le saura sûrement vraiment jamais. Va falloir vous y faire. Désolé :-/
  9. 9. Le client ne sait pas dire ce  Faites lui dire ce quil ne veut  quil veut ? surtout pas ! Vous ne parlez pas le même  Entendez-vous sur un  langage ? dictionnaire de termes !La communication passe mal  Choisissez un interlocuteur  et les infos se perdent ? unique et rencontrez-vous IRL ! Votre boite pratique le  Ca vous plait ? Tant mieux.  développeur black-box ? Sinon changez, vite !
  10. 10. Cest [presque] gagné si vous comprenez le métier de votre client. =http://www.azprocede.fr/Schema_GC/galleries/Usines_Procedes_Produits/raffinerie_ariel_texas_bas_bp.jpg
  11. 11. EXERCICE N° 2 IMAGINEZ … dans les grandes lignes, les aménagements que vousapporteriez à votre épicerie fine pour attirer les personnes mal voyantes du foyer qui se trouve de lautre côté de la rue. Postulat de départ : budget illimité. 15 minutes
  12. 12. LE PROJET« Dépêche toi de commencer, cest pour hier ! » http://qse.free.fr/IMG/jpg/tunnel.jpg
  13. 13. Leffet papillon tunnel 1. Réunion ↓ 2. Cahier des charges fonctionnelles ↓ 3. Cahier des charges techniques ↓ 4. 5. 6... Faille spatio-temporelle de 6 mois ↓ 1 247. Site terminé ↓« Ha, mais javais pas demandé ça (le client)» ↓ Goto étape 1
  14. 14. - LE MANIFESTE AGILE -« Les individus et leurs interactions plus que les processus et les outils » « Des logiciels opérationnels plus qu’une documentation exhaustive » « La collaboration avec les clients plus que la négociation contractuelle »« L’adaptation au changement plus que le suivi d’un plan »
  15. 15. Product OwnerScrum Master Backlog Sprint
  16. 16. User StoryEn tant que ROLE, je souhaite ACTION pour BUT.« En tant que client, je souhaite uploader des documents pour compléter  ma bibliothèque »
  17. 17. EXERCICE N° 3 PLANIFIEZ… un sprint ! Ecrivez les user stories, faites un planning poker et mettez en place le backlog en vous basant sur les deux dernières semaines.Postulat de départ : utiliser votre propre projet ou devenez américain et recréez Facebook, Github ou Twitter. 1 heure
  18. 18. LA QUALITÉLOGICIELLE
  19. 19. LES OUTILS « Les mains dans le cambouis » http://www.lizardheadone.com/Engine.html
  20. 20. OUTILS MAITRISES ≠OUTILS ADAPTES ≠PRISE DE RISQUEINCONSCIDEREE
  21. 21. EXERCICE N° 4 CONCEVEZ… une plateforme demailing 3.0 en utilisant un maximum doutils et de librairies externes. Postulat de départ : internet et coup de bigot à une proximité autorisé. 20 minutes
  22. 22. LES TESTS « Finalement, on gagne du temps » http://www.historyofinformation.com/narrative/restating-the-problem.php
  23. 23. TESTS UNITAIRESclass Request { /* CODE */ public function getPost($name = null) { if (null === $name) { return $this->_post; } return array_key_exists($name, $this->_post)?$this->_post[$name]:null; }}class RequestTest extends PHPUnit_Framework_TestCase { /* CODE */ public function testGetPost() { $this->assertInternalType(array, $this->object->getPost()); $this->assertNull($this->object->getPost(test)); $this->object->setPost(array(test => value)); $this->assertEquals(value, $this->object->getPost(test)); $this->assertEquals(array(test => value), $this->object->getPost()); }}
  24. 24. Behavior Driven Development
  25. 25. TESTS FONCTIONNELS
  26. 26. EXERCICE N° 5 TESTEZ… fonctionnellement, en BDD puis unitairement une méthodepermettant denvoyer un SMS à un utilisateur en cas de tweet insultant à son égard. Postulat de départ : seul le langage du Capitaine Haddock est autorisé. 15 minutes
  27. 27. LE VERSIONNING « Retour vers le futur » http://events.2hweb.net/scrapbook04su.html
  28. 28. CENTRALISE VS DISTRIBUE
  29. 29. EXERCICE N° 6 DEPLOYEZ… votre application en ligne en utilisant les fonctionnalités offertes par un gestionnaire de version. Postulat de départ : pensez au crash ;) 5 minutes
  30. 30. ?Contact : david.buros@noparking.net
  31. 31. EXTRABONUSPour les curieux
  32. 32. INTEGRATION CONTINUE « Errors, you shall not pass » http://getsocialwithamy.com/wp-content/uploads/2012/02/Vermillion_River_Kootenay_National_Park_Canada.jpg
  33. 33. 1 : Commitez votre travail de la journée. 2 : Faite un build. 3 : Mergez vos branches.4 : Mettez les sources en production en un clic.5 : Allez vous reposer, demain on recommence.
  34. 34. LE DEVOP « La tête dans les nuages » http://adnm-grp.com/services/solutions-et-lhebergement.html
  35. 35. DEV + OP
  36. 36. Cloud Computing IaaS - PaaS Chef - Puppet Capistrano

×