SlideShare a Scribd company logo
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
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
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
Mob Programming
In early January, 2000 Hohman’s team began a series of weekly developer
lunches. The team was in a transition toward using many of XP’s suggested
lightweight 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 than
two developers. The purpose for this refactoring focuses less on writing
code 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
Mob Programming
Mob Programming is a software development approach where the whole
team works on the same thing, at the same time, in the same space, and at
the same computer [1]. Mob Programming, as Zuill [2] describes, is similar
to pair programming [3], where two persons work on the same computer
and collaborate on the same code at the same time. Mob also resembles
the Randori [4] style of programming popular at Coding Dojos that is used
during sessions to learn new Technologies [5].
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 5 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 6 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 7 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 8 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 9 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 10 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 11 / 16
Mob Programming
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 12 / 16
Programming and review simultaneous in Pairs
{herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 13 / 16
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 tree
teams 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
Metrics
Quality and velocity of the software development
Kattan, H. M.: Programming and review simultaneous in Pairs: a pair
programming extension. Master Dissertation. In: Institute for Technological
Research of the State of S˜ao Paulo (IPT). http://aleph.ipt.br/F. Or
http://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
References
1. Zuill, W.: Mob Programming: A Whole Team Approach. Experience
report, 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 randori
coding 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: Agile
Processes in Software Engineering and Extreme Programming: proceedings
of the 16th International Conference on Agile Software Development, XP
2015, 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

More Related Content

Similar to Software Development Practices Patterns

Introduction to Mob Programming
Introduction to Mob ProgrammingIntroduction to Mob Programming
Introduction to Mob Programming
Herez Moise Kattan
 
How to Translate from English to Khmer using Moses
How to Translate from English to Khmer using MosesHow to Translate from English to Khmer using Moses
How to Translate from English to Khmer using Moses
International Journal of Engineering Inventions www.ijeijournal.com
 
Time-Space Model Groupware or digital collaboration refers to ...
Time-Space Model Groupware or digital collaboration refers to ...Time-Space Model Groupware or digital collaboration refers to ...
Time-Space Model Groupware or digital collaboration refers to ...Videoguy
 
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
Sebastian Dennerlein
 
icssp-web
icssp-webicssp-web
icssp-web
AbsoluteSavant
 
How to use R easily as GIS tools!
How to use R easily as GIS tools!How to use R easily as GIS tools!
How to use R easily as GIS tools!
Omar F. Althuwaynee
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
ijceronline
 
InnovateHER Workshop, GDSC, DY PATIL- RAIT
InnovateHER Workshop, GDSC, DY PATIL- RAITInnovateHER Workshop, GDSC, DY PATIL- RAIT
InnovateHER Workshop, GDSC, DY PATIL- RAIT
hrishitapandeyqmp
 
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
IJERA Editor
 
MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2
Tom Mens
 
Sanket 895 presentation
Sanket 895 presentationSanket 895 presentation
Sanket 895 presentationsanketsp
 
Open Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development ProjectsOpen Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development Projects
Daniel Nüst
 
Spreadsheets and Database Packages
Spreadsheets and Database PackagesSpreadsheets and Database Packages
Spreadsheets and Database Packages
SURBHI SAROHA
 
oXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docxoXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docx
alfred4lewis58146
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development Processes
Christoph Matthies
 
GPSS interactive learning environment
GPSS interactive learning environmentGPSS interactive learning environment
GPSS interactive learning environment
Servicio de Difusión de la Creación Intelectual (SEDICI)
 
Approaches of Data Analysis: Networks generated through Social Media
Approaches of Data Analysis: Networks generated through Social MediaApproaches of Data Analysis: Networks generated through Social Media
Approaches of Data Analysis: Networks generated through Social Media
Janna Joceli Omena
 
A Flowchart-based Programming Environment for Improving Problem Solving Skill...
A Flowchart-based Programming Environment for Improving Problem Solving Skill...A Flowchart-based Programming Environment for Improving Problem Solving Skill...
A Flowchart-based Programming Environment for Improving Problem Solving Skill...
Cynthia Velynne
 

Similar to Software Development Practices Patterns (20)

Introduction to Mob Programming
Introduction to Mob ProgrammingIntroduction to Mob Programming
Introduction to Mob Programming
 
How to Translate from English to Khmer using Moses
How to Translate from English to Khmer using MosesHow to Translate from English to Khmer using Moses
How to Translate from English to Khmer using Moses
 
Time-Space Model Groupware or digital collaboration refers to ...
Time-Space Model Groupware or digital collaboration refers to ...Time-Space Model Groupware or digital collaboration refers to ...
Time-Space Model Groupware or digital collaboration refers to ...
 
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
Web 2.0 Messaging Tools for Knowledge Management? Exploring the Potentials of...
 
icssp-web
icssp-webicssp-web
icssp-web
 
How to use R easily as GIS tools!
How to use R easily as GIS tools!How to use R easily as GIS tools!
How to use R easily as GIS tools!
 
Analysis Report
 Analysis Report  Analysis Report
Analysis Report
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
InnovateHER Workshop, GDSC, DY PATIL- RAIT
InnovateHER Workshop, GDSC, DY PATIL- RAITInnovateHER Workshop, GDSC, DY PATIL- RAIT
InnovateHER Workshop, GDSC, DY PATIL- RAIT
 
Technical report jada
Technical report jadaTechnical report jada
Technical report jada
 
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
Comparing Speech Recognition Systems (Microsoft API, Google API And CMU Sphinx)
 
MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2MOD2014-Mens-Lecture2
MOD2014-Mens-Lecture2
 
Sanket 895 presentation
Sanket 895 presentationSanket 895 presentation
Sanket 895 presentation
 
Open Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development ProjectsOpen Source and GitHub for Teaching with Software Development Projects
Open Source and GitHub for Teaching with Software Development Projects
 
Spreadsheets and Database Packages
Spreadsheets and Database PackagesSpreadsheets and Database Packages
Spreadsheets and Database Packages
 
oXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docxoXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docx
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development Processes
 
GPSS interactive learning environment
GPSS interactive learning environmentGPSS interactive learning environment
GPSS interactive learning environment
 
Approaches of Data Analysis: Networks generated through Social Media
Approaches of Data Analysis: Networks generated through Social MediaApproaches of Data Analysis: Networks generated through Social Media
Approaches of Data Analysis: Networks generated through Social Media
 
A Flowchart-based Programming Environment for Improving Problem Solving Skill...
A Flowchart-based Programming Environment for Improving Problem Solving Skill...A Flowchart-based Programming Environment for Improving Problem Solving Skill...
A Flowchart-based Programming Environment for Improving Problem Solving Skill...
 

Recently uploaded

Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 

Recently uploaded (20)

Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 

Software Development Practices Patterns

  • 1. 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
  • 2. 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
  • 3. 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
  • 4. Mob Programming In early January, 2000 Hohman’s team began a series of weekly developer lunches. The team was in a transition toward using many of XP’s suggested lightweight 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 than two developers. The purpose for this refactoring focuses less on writing code 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
  • 5. Mob Programming Mob Programming is a software development approach where the whole team works on the same thing, at the same time, in the same space, and at the same computer [1]. Mob Programming, as Zuill [2] describes, is similar to pair programming [3], where two persons work on the same computer and collaborate on the same code at the same time. Mob also resembles the Randori [4] style of programming popular at Coding Dojos that is used during sessions to learn new Technologies [5]. {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 5 / 16
  • 6. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 6 / 16
  • 7. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 7 / 16
  • 8. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 8 / 16
  • 9. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 9 / 16
  • 10. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 10 / 16
  • 11. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 11 / 16
  • 12. Mob Programming {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 12 / 16
  • 13. Programming and review simultaneous in Pairs {herez, gold}@ime.usp.br (IME - USP) Software Development Practices Patterns March 30, 2017 13 / 16
  • 14. 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 tree teams 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
  • 15. Metrics Quality and velocity of the software development Kattan, H. M.: Programming and review simultaneous in Pairs: a pair programming extension. Master Dissertation. In: Institute for Technological Research of the State of S˜ao Paulo (IPT). http://aleph.ipt.br/F. Or http://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
  • 16. References 1. Zuill, W.: Mob Programming: A Whole Team Approach. Experience report, 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 randori coding 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: Agile Processes in Software Engineering and Extreme Programming: proceedings of the 16th International Conference on Agile Software Development, XP 2015, 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