Jump to content

Mob programming

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Mocha Snowman (talk | contribs) at 12:58, 29 October 2020 (Removing less pertinent examples. The description is not focused and not very clear.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
French Mob programming session

Mob programming (informally mobbing) 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. This is similar to pair programming where two people sit at the same computer and collaborate on the same code at the same time. With mob programming, the collaboration is extended to everyone on the team, while still using a single computer for writing the code and inputting it into the code base.[1]

The basic concept of mob programming is simple: the entire team works as a team together on one task at the time. That is: one team – one (active) keyboard – one screen (projector of course). [2]

— Marcus Hammarberg, Mob programming – Full Team, Full Throttle

It builds on principles of lean manufacturing, extreme programming, and lean software development. Early use of the phrase "mob programming" was made in Extreme Programming Perspectives.[3]

In addition to software coding, a mob programming team can work together to do almost all the work a typical software development team tackles, such as defining user stories or requirements, designing, testing, deploying software, and working with the customer and business experts. Almost all work is handled in working meetings or workshops, and all the people involved in creating the software are considered to be team members, including the customer and business experts.[4] Mob programming also works for distributed teams in the same virtual space using screen sharing.[5]

Examples

  • In the book Kanban In Action Sundén and Hammarberg discuss mob programming in relation to the agile process of Limiting Work In Progress [6]
  • Per Jansson on "This is the story about how we in our development team used mob programming as a way to develop software."[7]
  • Mob Programming, and the importance of fun at work discussed at SoCraTes UK 2014[8]
  • Woody Zuill and his team "discovered" programming as a group and it changed their whole process.[9]

See also

References

  1. ^ Zuill, Woody (2014). "Mob Programming: A Whole Team Approach". Agile2014 Conference Experience Reports: 11. {{cite journal}}: Unknown parameter |nopp= ignored (|no-pp= suggested) (help)
  2. ^ Hammarberg, Marcus. "Mob programming – Full Team, Full Throttle". CodeBetter. CodeBetter. Retrieved 9 September 2014. {{cite web}}: |archive-date= requires |archive-url= (help)
  3. ^ Moses Hohman; Andrew Slocum (2003). "Chapter 28. Mob Programming and the Transition to XP". Extreme Programming Perspectives. Addison-Wesley.
  4. ^ Nigri, Julien. "Le Mob Programming : Présentation". Soat (in French). Soat. Retrieved 9 September 2014.
  5. ^ Harrer, Simon; Christ, Jochen; Huber, Martin. "Remote Mob Programming". Retrieved 29 April 2019.
  6. ^ Joakim Sundén; Marcus Hammarberg (2014). Lexleigh, Beth; Kane, Cynthia (eds.). Kanban In Action. Shelter Island, NY: Manning Publications Co. p. 114. ISBN 9781617291050.
  7. ^ Jansson, Per. "Get a good start with mob programming".
  8. ^ Talwar, Samir. "Mob Programming, and the importance of fun at work". Codurance, Craft At The Heart. Codurance LTD. Retrieved 9 September 2014. {{cite web}}: |archive-date= requires |archive-url= (help)
  9. ^ Zuill, Woody. "Mob Programming with Woody Zuill". Hanselminutes Podcast. Hanselminutes. Retrieved 20 Feb 2017. {{cite web}}: |archive-date= requires |archive-url= (help)