16
Software Development Practices Patterns University of S˜ ao Paulo Presented by: Herez Moise Kattan Alfredo Goldman University of S˜ ao Paulo Institute of Mathematics and Statistics (IME) Department of Computer Science March 30, 2017 {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 1 / 16

Software Development Practices Patterns

Embed Size (px)

Citation preview

Page 1: Software Development Practices Patterns

Software Development PracticesPatterns

University of Sao Paulo

Presented by:Herez Moise KattanAlfredo Goldman

University of Sao PauloInstitute of Mathematics and Statistics (IME)

Department of Computer Science

March 30, 2017

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 1 / 16

Page 2: Software Development Practices Patterns

Agenda

1 Pair Programming

2 Mob Programming

3 Programming and review simultaneous in Pairs

4 Questionnaire

5 Metrics

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 2 / 16

Page 3: Software Development Practices Patterns

Pair Programming

By Lisamarie Babik - Ted and Ian Uploaded by Edward, CC BY 2.0:https://commons.wikimedia.org/w/index.php?curid=9546406

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 3 / 16

Page 4: Software Development Practices Patterns

Mob Programming

In early January, 2000 Hohman’s team began a series of weekly developerlunches. The team was in a transition toward using many of XP’s suggestedlightweight practices. As part of and in order to facilitate this transition,they developed a collaborative method called mob programming. The term“mob programming” is whimsically derived from the term “pair program-ming,” and indicates the practice of refactoring code in groups larger thantwo developers. The purpose for this refactoring focuses less on writingcode that we will use later and more on encouraging healthy discussion.

Hohman, M.; Slocum, A.: Mob Programming and the Transition to XP.(2001)

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 4 / 16

Page 5: Software Development Practices Patterns

Mob Programming

Mob Programming is a software development approach where the wholeteam works on the same thing, at the same time, in the same space, and atthe same computer [1]. Mob Programming, as Zuill [2] describes, is similarto pair programming [3], where two persons work on the same computerand collaborate on the same code at the same time. Mob also resemblesthe Randori [4] style of programming popular at Coding Dojos that is usedduring sessions to learn new Technologies [5].

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 5 / 16

Page 6: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 6 / 16

Page 7: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 7 / 16

Page 8: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 8 / 16

Page 9: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 9 / 16

Page 10: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 10 / 16

Page 11: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 11 / 16

Page 12: Software Development Practices Patterns

Mob Programming

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 12 / 16

Page 13: Software Development Practices Patterns

Programming and review simultaneous in Pairs

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 13 / 16

Page 14: Software Development Practices Patterns

Questionnaire

ccsl.ime.usp.br/wiki/SwarmQuestionnaire

A questionnaire, about the experience with Mob Programming at LAB XP,was answered by three teams.

Consent term, photos and all answers of the fourteen members of the treeteams are available online at the CCSL Wiki of the IME-USP:ccsl.ime.usp.br/wiki/SwarmQuestionnaire

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 14 / 16

Page 15: Software Development Practices Patterns

Metrics

Quality and velocity of the software development

Kattan, H. M.: Programming and review simultaneous in Pairs: a pairprogramming extension. Master Dissertation. In: Institute for TechnologicalResearch of the State of Sao Paulo (IPT). http://aleph.ipt.br/F. Orhttp://ipt.br, click on: Online Consultations, then click on: Library,(2015)

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 15 / 16

Page 16: Software Development Practices Patterns

References

1. Zuill, W.: Mob Programming: A Whole Team Approach. Experiencereport, Agile (2014)2. Zuill, W., Meadows, K.: Mob Programming - A Whole Team Approach.First edition of Book published on October (2016)3. Beck K.; Andres, C.: Extreme Programming Explained: Embrace Change.2nd Edition, Boston-USA. Addison-Wesley, 75p. (2004)4. Rooksby, J., Hunt, J., Wang, X.: The theory and practice of randoricoding dojos.In: Agile Processes in Software Engineering and Extreme Pro-gramming, vol. 179, pages 251-259. (2014)5. Wilson, A.: Mob Programming What’s works, what’s doesn’t. In: AgileProcesses in Software Engineering and Extreme Programming: proceedingsof the 16th International Conference on Agile Software Development, XP2015, pages: 319-325. held in Helsinki, Finland, in 25-29 May (2015)

{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 16 / 16