O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

淺談 Startup 公司的軟體開發流程 v2

37.071 visualizações

Publicada em

talk at http://www.accupass.com/go/AgileTourHsinchu2015

Publicada em: Tecnologia
  • Entre para ver os comentários

淺談 Startup 公司的軟體開發流程 v2

  1. 1. Startup (v2) https://ihower.tw 2016/3/24
  2. 2. Who am I? • a.k.a. ihower • https://ihower.tw • Instructor at ALPHA Camp • https://alphacamp.co • Web developer since 2002
  3. 3. ( )
  4. 4. Warning:
  5. 5. https://en.wikipedia.org/wiki/Systems_development_life_cycle ( )
  6. 6. ( ) software development life cycle • Requirement • Implementation • Deployment • Operations
  7. 7. 1.
  8. 8. • idea PO • Scrum iterations 6 • beta • feedback • iteration • BD ....etc • fb • •
  9. 9. Lean Startup
  10. 10. Lean Startup 101 • • Build -> Measure -> Learn • • Business Model
  11. 11. From Problem to Solution https://twitter.com/leanplc/status/702910036243320832
  12. 12. Lean Startup (cont.) • • • Lean Startup !=
  13. 13. https://twitter.com/ValaAfshar/status/628406092339519488 1~3
  14. 14. Life’s too short to build something nobody wants – Ash Maurya, Running Lean
  15. 15. User Stories • User Story( ) (functionality/feature) https://ihower.tw/blog/archives/2090
  16. 16. • • • •
  17. 17. • ( ) ( ) ( )
  18. 18. • Java connection pool • user stories
  19. 19. • Hackpad Quip • •
  20. 20. live demo
  21. 21. • Lean Startup: MVP • User Stories • Quip Hackpad
  22. 22. 2.
  23. 23. • User Stories •
  24. 24. (cont.) • • Frequent, early, small release • feedback • Fail often fail early
  25. 25. PM iOSArt WebArt iOS WebAndroi d QA
  26. 26. • Milestone-based Waterfall • Scrum Agile • Kanban Lean
  27. 27. Milestone-based 306 ...
  28. 28. Waterfall Feedback • • • •
  29. 29. Waterfall 0.0 20.0 40.0 60.0 80.0 100.0 1.0 A B C D
  30. 30. 1.0 feedback ?
  31. 31. 0.0 20.0 40.0 60.0 80.0 100.0 1.0 A B C D
  32. 32. 0.0 20.0 40.0 60.0 80.0 100.0 1.0 A B C D
  33. 33. 0.0 20.0 40.0 60.0 80.0 100.0 1.0 A B C D
  34. 34. 0.0 20.0 40.0 60.0 80.0 100.0 1.0 A B C D
  35. 35. Scrum • Product Owner Scrum Master Team member • 1~4 • planning meeting • demo retrospective meeting • Feedback
  36. 36. Task Board
  37. 37. • Event-driven • • • UI • (iOS, Android, Web) • App Store • Feedback ?
  38. 38. Kanban • • WIP (Work in Process) (TOC ) • • Cycle Time ( )
  39. 39. Kanban
  40. 40. http://blog.crisp.se/2009/06/26/henrikkniberg/1246053060000
  41. 41. A
  42. 42. http://www.infoq.com/minibooks/kanban-scrum-minibook
  43. 43. Continuous Deliver ( Continuous Deployment) • code commit • iOS • (well-tested) • Fail often fail early • repeatable reliable • alert
  44. 44. Feedback
  45. 45. ?
  46. 46. Lean Startup Cycle ? ?
  47. 47. Speed of iteration beats Quality of iteration
  48. 48. UX/UI • Wireframe • https://moqups.com/ • Mockup (plus ) • http://www.invisionapp.com/ • Prototyping (plus ) • HTML ( bootstrap)
  49. 49. https://dribbble.com/shots/1107830-From-Wireframe-to-Interface
  50. 50. vs.
  51. 51. Development • • • ( Git) • Pull request and Code Review • Continous Integration (CI)
  52. 52. ? • in-house • commercial • open source
  53. 53. Hello Startup, O’Reilly
  54. 54. Don't reinvent the wheel
  55. 55. • Operating systems • Programming languages • CS 101: basic data structures (map, list, set), sorting algorithms • Web technologies: HTTP servers, server-side and client-side frameworks • Data systems: databases, NoSQL stores, caches, message queues • Software delivery: version control, build systems, deployment automation • Libraries for common data formats: XML, HTML, CSV, JSON, URLs • Utility libraries: date/time manipulation, string manipulation, logging • Secure Libraries: cryptography, password storage, credit card storage • Operations/Office software: SaaS (google, gmail, slack, quip, dropbox…etc)
  56. 56. Library Framework https://www.facebook.com/kobeengineer/photos/a.1634720690097535.1073741828.1632027893700148/1697488120487458/?type=3
  57. 57. Boring • boring • MySQL PostgreSQL MongoDB • iOS, Android native Web React Native • Web Web framework Rails Django • macroservice macro framework • Server-Side Rendering SPA • Isomorphic javascript • overengineering monolith • SOA SOA ( team10 ) • http://www.infoq.com/cn/articles/every-architect-should-study-conway-law
  58. 58. http://martinfowler.com/bliki/MicroservicePremium.html
  59. 59. Use Cloud Hosting • 2015 startup • PaaS: Heroku • IaaS • Amazon Web Services • Google • Microsoft Azure • Linode or Digital Ocean
  60. 60. • Why? • : • : continuous delivery • TDD API
  61. 61. ? • 100% coverage • Unit Test • GUI Happy Path
  62. 62. Test Pyramid http://watirmelon.com/2012/01/31/introducing-the-software-testing-ice-cream-cone/ http://martinfowler.com/bliki/TestPyramid.html developer QA XD salesforce ?
  63. 63. Why? • low-level debug • high-level debug • view • developer QA
  64. 64. DHH Way • 100% test coverage • Code-to-test 1:2 1:3 • 1/3 • Active Record associations, validations, or scopes. • ( Unit Test ) • Cucumber • TDD (DHH 20% TDD) • Model DB Fixtures • Controller • Views system/browser testing https://signalvnoise.com/posts/3159-testing-like-the-tsa http://david.heinemeierhansson.com/2014/test-induced-design-damage.html
  65. 65. Git • 2015 ? • • Feature branch • commit CI • Code Review • Release branch beta user (staging server) • Production
  66. 66. CI 3-rd party
  67. 67. Code review Github Pull Request
  68. 68. Git flowhttp://nvie.com/posts/a-successful-git-branching-model/
  69. 69. ‧master: production ‧develop: master 82
  70. 70. (1) ‧Feature branches – bugs – develop – merge develop – develop ( merge rebase) 84
  71. 71. (2) ‧Release branches – release bugs – develop – merge master develop 87
  72. 72. (3) ‧Hotfix branches – release master – master – merge master develop 88
  73. 73. pros and cons • Git • feature, release, hotfix branches • Open Source
  74. 74. Github flow ‧master stable/production ‧ master branch feature branch ‧ pull request code review ‧ master 92 http://ihower.tw/blog/archives/7798
  75. 75. https://guides.github.com/introduction/flow/index.html
  76. 76. http://ihower.tw/blog/archives/7798 ‧ ( ) ‧ CI ? ‧ Staging Server ? ‧ Github flow feature branch CI staging server ‧ branch staging branch CI branch master 94
  77. 77. • Scrum ( iteration ) • release branch Git flow • Kanban ( iteration ) • Github flow
  78. 78. Git • Github flow Gitflow • desktop/mobile software Gitflow • Gitflow • Web app: Github flow https://ihower.tw/git/
  79. 79. Feature Toggle • • Feature branch ? • ! UI ! • admin production
  80. 80. • : Scrum Kanban • • Wireframe • • Git Github flow git flow
  81. 81. 3.
  82. 82. https://twitter.com/jambay/status/652837690262446082 Shipping
  83. 83. • 2015 FTP ? • Git Continuous Delivery • Build Staging Production • Application Development http:// capistranorb.com/ (Ruby)
  84. 84. Monitor • Server • Server • Server • Server Log
  85. 85. Slack LINE
  86. 86. Slack • commit • code review • CI • • •
  87. 87. Monitor • Infrastructure&Application Metrics • Server Status (HTTP error rate) • Response Time • Exception&Error rate •
  88. 88. • • Monitor Slack
  89. 89. 4.
  90. 90. • • (Measure and Learn) • •
  91. 91. ? • priority • integrations • • tracking code • • Warn-Up • User-facing metrics • A/B Testing
  92. 92. AARRR • • • • •
  93. 93. Acquisition (signup) • Owned Media • Landing Page • Copy Writing • SEO • Paid Media • Facebook Ads • Google Adwords • Facebook fanspage • EDM • Earned Media • Community Share •
  94. 94. Activation • • On Boarding • • • • sandbox Basecamp project
  95. 95. Conversion Rate https://keen.io/guides/conversion-analysis/
  96. 96. Conversion Funnel https://keen.io/guides/intro-to-funnel-analysis/
  97. 97. Retention • Active Users (DAU/WAU/MAU) • Retention rate = / • • : Email • Gamification Reputation System • addiction trigger action reward investment
  98. 98. Retention rate https://keen.io/blog/47823687779/how-to-do-a-retention- analysis/
  99. 99. 1. 2. 3. • ( MVP PMF) • (Retention rate) • ( Growth) • UV (Unique Visitor) • Conversion Rate • ( UX) • ( ) or ( upsell)
  100. 100. • E-commerce • SaaS • Free Mobile App • Media Site • User-Generated Content • Two-sided Marketplaces
  101. 101. • Landing Page • Landing Page signup !! • Segment your customers • Email marketing • Customer Support https://segment.com/academy/intro/navigating-the-sea-of-customer-data-tools/
  102. 102. • : Google Analytics • : Funnel analytic • Mixpanel • Keen.IO • : Heatmapping Customer Survey http://firstround.com/review/the-tools-early-stage-startups-actually-need-to-understand-their- customers/
  103. 103. Data-Driven Project • ? • ? • ?
  104. 104. HEART Framework http://www.dtelepathy.com/ux-metrics/ • Happiness: Net Promoter Score (NPS) • How likely are you to recommend us to a friend? • 0-6 : Detractors • 7-8:Passives • 9-10: Promoter • Engagement: CTR Active Users • Adoption: • Retention: Churn rate • Task Success: Profile
  105. 105. Event Data • Event Data = Action + State + Time • Action • State User Device Item Record Product Form https://keen.io/guides/data-modeling-guide/
  106. 106. A/B Testing • vs. • • randomness independence • significance testing ( p-value) • • feature flag • Big changes release: Facebook • PR eg. Facebook crash app http://mjtsai.com/blog/2016/01/07/facebook-tests-users-reaction-to-crashes/
  107. 107. • AARRR • • •
  108. 108. • OLTP Clickstream, user events ( Mixpanel, GA) • OLTP clickstream data • why ? 1. scale 2. UI • • Data Science Data Mining startup data insight
  109. 109. https://www.youtube.com/watch?v=cYwXkzPVhP0 Ask the Product Manager play 0~1:XX and 3:00 ~
  110. 110. ? • PM code ? • do the right thing do the thing right ? • ? https://blog.alphacamp.co/2016/03/21/the-importance-of-project-manager/ https://blog.alphacamp.co/2014/12/17/good-product-manager/
  111. 111. - http://kf013099.blogspot.tw/2015/11/blog-post.html sprint failed planning meeting scrum sprint
  112. 112. Common Agile Practice Isn’t for Startups • Common Agile Practice is for Delivery • Most Startups are About Discovery • Keep the spirit of Agile, and discount the dogma http://jpattonassociates.com/common-agile-isnt-for-startups/
  113. 113. 7 Agile Best Practices that You Don’t Need to Follow • TDD • Pair Programming • Emergent Design and Metaphor • Daily Standups • Collective Code Ownership • Writing All Requirements as Stories • Relying on a Product Owner http://swreflections.blogspot.tw/2013/05/7-agile-best-practices-that-you-dont.html
  114. 114. • • • PM ( ) .... orz • startup
  115. 115. • startup PM • startup scope • • Metrics
  116. 116. • PM • PM User Stories App http://blog.xdite.net/posts/2015/07/17/mckinsey-problem-solving-framework (cont.)
  117. 117. • ? User Stories PM • ? ? • PM http://blog.xdite.net/posts/2015/07/17/mckinsey-problem-solving-framework (cont.)
  118. 118. • Why? • • priority • http://blog.xdite.net/posts/2015/07/17/mckinsey-problem-solving-framework (cont.)
  119. 119. https://ihower.tw • • Lean Startup: MVP • User Stories • Quip Hackpad • • : Scrum Kanban • • Wireframe • • Git Github flow git flow • • • Monitor Slack • • AARRR • • • • Startup
  120. 120. • Udacity Product Design • Data-Driven Product • http://shop.oreilly.com/product/0636920040149.do • hello, startup • • • • Intro to Growth Hack • http://courses.growthschool.com/

×