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.

Agile iOS

4,784 views

Published on

A talk given at Swipe conference in Melbourne on the trials and tribulations of doing iOS development in large teams.

Published in: Technology
  • Be the first to comment

Agile iOS

  1. 1. Agile iOS Stewart Gleadow @stewgleadow
  2. 2. iOS somethingsomething Stewart Gleadow @stewgleadow
  3. 3. My ramblings aboutiOS development inlarge teams Stewart Gleadow @stewgleadow
  4. 4. Outline
  5. 5. Outline• [ObjectiveC release];
  6. 6. Outline• [ObjectiveC release];• Problems with iOS in large teams
  7. 7. Outline• [ObjectiveC release];• Problems with iOS in large teams• Team process
  8. 8. Outline• [ObjectiveC release];• Problems with iOS in large teams• Team process• Testing strategies
  9. 9. Outline• [ObjectiveC release];• Problems with iOS in large teams• Team process• Testing strategies• Design & development
  10. 10. iOS in large teams
  11. 11. iOS in large teams Building thewrong product
  12. 12. iOS in large teams Building the Low utilisationwrong product
  13. 13. iOS in large teams Building the Low utilisationwrong product Long lead time
  14. 14. iOS in large teams Building the Low utilisationwrong product Bugs and Long lead time regressions
  15. 15. iOS in large teams Building the Low utilisationwrong product Bugs and Long lead time regressionsMeetings
  16. 16. iOS in large teams Building the Low utilisationwrong product Bugs and Long lead time regressionsMeetings Documentation
  17. 17. Agile
  18. 18. “You keep using that word. I do not think it means what you think it means.”Agile
  19. 19. “You keep using that word. I do not think it means what you think it means.”be agile
  20. 20. Why is agilityimportant for iOSdevelopment?
  21. 21. Why is agilityimportant for iOSdevelopment?• Rich user experience
  22. 22. Why is agilityimportant for iOSdevelopment?• Rich user experience• New devices and platform
  23. 23. Visibility and Measurement
  24. 24. Visibility and Measurement
  25. 25. Visibility and Measurement
  26. 26. Everyone cares about the details
  27. 27. Everyone cares about the details
  28. 28. To Do Doing Done
  29. 29. Corner Cases
  30. 30. Normal Corner Cases
  31. 31. Normal Corner Cases No Old PersistentNetwork Devices State Slow Device Bad DataNetwork Capability Power Retina Multi- Usage Display Touch
  32. 32. Testing strategies
  33. 33. Delivering quality apps ...whose requirements change constantly
  34. 34. Delivering quality apps ...whose requirements change constantly External
  35. 35. Delivering quality apps ...whose requirements change constantly External Internal
  36. 36. Testing strategies
  37. 37. Testing strategies• Manual, automated, assisted
  38. 38. Testing strategies• Manual, automated, assisted
  39. 39. Testing strategies• Manual, automated, assisted
  40. 40. Testing strategies• Manual, automated, assisted
  41. 41. Manual testing using cucumber
  42. 42. Manual testing using cucumber Scenario: User tries posts a message before logging in
  43. 43. Manual testing using cucumber Scenario: User tries posts a message before logging in Given I am not logged in
  44. 44. Manual testing using cucumber Scenario: User tries posts a message before logging in Given I am not logged in When I try to post a message
  45. 45. Manual testing using cucumber Scenario: User tries posts a message before logging in Given I am not logged in When I try to post a message Then I should be prompted to sign in
  46. 46. UIIntegration Unit
  47. 47. UI 10%Integration 30% Unit 60%
  48. 48. Refactoring
  49. 49. Refactoring RedGreen Refactor
  50. 50. Refactoring Red Are we fighting the laws of physics?Green Refactor
  51. 51. Design & Development
  52. 52. How developers How designers see designers see developers
  53. 53. How developers How designerssee themselves see themselves
  54. 54. Photoshopdrivendevelopment
  55. 55. Photoshopdrivendevelopment
  56. 56. forü t tlorr¡ 5wViGet fast feedback
  57. 57. PrototypeTest Refine
  58. 58. Continuous feedback loops
  59. 59. “If you want to go fast, go alone. If you want to go far, go together.”
  60. 60. “If you want to go fast, go alone. If you want to go far, go together.” ...but we need to go far, quickly.
  61. 61. ThanksStewart Gleadow@stewgleadowsgleadow@thoughtworks.com

×