Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Software Development, in 2015

Software Development, in 2015

Talk at Ochanomizu University, Program for Leading Graduate Schools, about mechanics to encourage teamwork for software development.

Soutaro Matsumoto

May 15, 2015
Tweet

More Decks by Soutaro Matsumoto

Other Decks in Programming

Transcript

  1. As a Programmer • Sketch ideas • Read articles •

    Discussion with teammate • Write programs with teammate • Deliver our product to customers
  2. As a PhD Student • Sketch ideas • Read papers

    • Discussion with supervisor • Write programs for my experiments • Write papers
  3. As a Programmer • Sketch ideas • Read articles •

    Discussion with teammate • Write programs with teammate • Deliver our product to customers
  4. My Team • 14 Programmers • 3 Designers • ~20

    Sales, Biz-dev, Support, Back office
  5. Sketch • To share and verify functionality • Use whiteboard

    and bold pen to control level of abstraction
  6. 14 Programmers, Working Together 1. Owns copies of the code

    on the computers 2. Write code separately 3. Review and revise the changes 4. Collect the changes
  7. GitHub • Web service for software development • One of

    the best places to collaborate with programmers
  8. • Review the change • Discuss by comments • Apply

    the change once approved • Changes are filed for future references
  9. Test and CI • Test is a program to ensure

    the program is working correctly • Continuous Integration ensures every changes are tested
  10. Build Software Together • Allow coding separately • Infrastructure to

    review the changes • Help to be sure nothing broken •
  11. • Post-it for each features • Put them on the

    wall for wider perspective • Status of the features • Priority of the features • Put numbers for estimation
  12. Retrospective • Review the week • Share experience in the

    team • Encourage to share tips/hacks
  13. Estimating • Predicate when a feature can be delivered •

    Encourage sharing analysis in the team
  14. References • Lean UX――ϦʔϯࢥߟʹΑΔϢʔβΤΫεϖϦΤϯεɾσβΠϯ - http://www.oreilly.co.jp/books/ 9784873116617/ • ϓϩτλΠϐϯά࣮ફΨΠυ εϚϗΞϓϦͷޮ཰తͳσβΠϯख๏

    - http://book.impress.co.jp/books/ 1114101013 • Flinto - https://www.flinto.com • Sketch 3 - http://bohemiancoding.com/sketch/ • GitHub - https://github.com • Travis CI - https://travis-ci.org • ΞδϟΠϧαϜϥΠʵୡਓ։ൃऀ΁ͷಓʵ • ΞδϟΠϧϨτϩεϖΫςΟϒζɹڧ͍νʔϜΛҭͯΔʮ;Γ͔͑ΓʯͷखҾ͖ • ͜Ε͚ͩ! KPT • Team Geek――GoogleͷΪʔΫͨͪ͸͍͔ʹͯ͠νʔϜΛ࡞Δͷ͔ - http://www.oreilly.co.jp/books/ 9784873116303/