Reasons NOT to use #MobProgramming as a software development strategy:
1. Mob programming may only be suitable for some types of projects, teams, or initiatives. It may be more effective for certain tasks or projects but less effective for others.
2. Mob programming may not be suitable in a distributed work world because it requires a high level of collaboration and communication. To communicate effectively, geographically dispersed teams may need a significant investment in tools and infrastructure.
3. The infrastructure required for #mobprogramming may be more complex or costly than traditional software development methods.
4. Team member preferences need to align with #mobprogramming. Team members may be more comfortable working independently and may not thrive in the collaborative environment of mob programming. Many developers prefer more solitude and privacy while working.
5. Varying skill levels could make it difficult for everyone to contribute effectively to the team using #MobProgramming. Some developers could hide or get lost on a team using Mobbing.
6. #MobProgramming is a counter-culture idea to organizations with strict hierarchies or rigid management structures. #Agile, #Scrum, and #MobProgramming require a collaborative and empowered approach to decision-making. Scrum Teams are self-organizing and self-managing.
7. #MobProgramming creates friction in organizations with a strong focus on individual accountability, as it relies on collective responsibility for the quality and delivery of the code.
8. The cost-benefit analysis for #MobProgramming is complex and challenging to quantify. While quality, delivery, and team happiness may improve, the cost to achieve these improvements must be part of the decision to use this practice.
9. Turnover on the team is a real possibility if developers are unhappy, unwilling, or unable to work as a mob on a team that uses #mobprogramming.
10. Stakeholders rightly question how multiple people at one keyboard can be more effective, efficient, and/or a better spend of money than individuals doing work independently. The capacity planning vs. value delivery mindsets cause friction in organizations. #mobprogramming
• • •
Missing some Tweet in this thread? You can try to
force a refresh
Advantage of #mobprogramming: 1. Increased collaboration on the Scrum Team - all team members are working on the task at hand, exchanging ideas, working together, and creating a shared understanding of the code and solution.
2. Transparent Codebase - team members can gain a deeper understanding of the system and code as a whole rather than just their own areas of responsibility. This entire team understanding removes "knowledge silos" and removes fragility from the team.
3. Faster Development: problems can be solved faster by working together, leading to value delivered sooner. Much of this happens through the Agile Principle - "Simplicity - the art of maximizing the amount of work not done - is essential."