I was inspired about SCRUM methodology back in 2018 when for the first time I read a book named “The SCRUM Field Guide” which written by Mitch Lacey. Back in the day I used to be an engineer and I could not realize all benefits of adapting this methodology and was blindly following what team lead was saying. Nowadays when I’m in charge of success of more than 20 people, that’s where I had to come back to this book and write down all important notes which I would like to share. As well as to share how and where scrum methodology and agile principles started.
Why would you put Toyota Supra on the cover of this article?
That you will know in the last part of the article.
“The SCRUM Field Guide” is a book authored by Mitch Lacey. This book is a comprehensive guide to implementing SCRUM methodology in software development projects. It is an essential resource for anyone who wants to learn about SCRUM, from beginners to experienced practitioners. The book covers all aspects of SCRUM, including its history and principles, the roles and responsibilities of team members, the sprint planning process, and the daily SCRUM meetings. The author also provides guidance on how to deal with common challenges that development teams encounter during SCRUM implementation.
SCRUM principles include transparency, inspection, and adaptation. These principles help teams to work collaboratively and effectively and ensure that they are always working towards the project’s goals. The SCRUM methodology is based on an iterative, incremental approach, and it emphasizes the importance of communication, feedback, and continuous improvement.
- Product Owner: The Product Owner is responsible for maximizing the value of the product and the work of the development team. They are responsible for creating and maintaining the product backlog, ensuring that it is prioritized, ordered, and refined.
- Scrum Master: The Scrum Master is responsible for ensuring that the Scrum framework is followed, and for removing any obstacles that may impede the development team’s progress. They facilitate the Scrum events, including the daily scrum, sprint planning, sprint review, and sprint retrospective.
- Development Team: The Development Team is responsible for delivering a potentially releasable product increment at the end of each sprint. The team is self-organizing, cross-functional, and accountable for delivering the product backlog items. The team works collaboratively, and each member has a clear understanding of their role and responsibilities.
It’s worth noting that while these are the primary roles in a Scrum team, there may be other roles or positions within a team, depending on the needs of the project.
- Implementing Product Backlog Items: The development team is responsible for implementing the product backlog items during the sprint. They must work together to ensure that each item is completed to the Definition of Done, meaning that it meets the team’s quality standards and is ready for release.
- Self-Organization: The development team is self-organizing, which means that they have the autonomy to determine how they will complete their work. They must work collaboratively to identify the best way to implement each product backlog item and make decisions as a team.
- Delivering a Potentially Releasable Increment: The development team must deliver a potentially releasable increment of the product at the end of each sprint. This means that the product should be in a state that it could be released to users or customers if necessary.
- Continuous Improvement: The development team must continuously improve their processes and practices to increase their efficiency and effectiveness. They should regularly review their performance and make adjustments to their approach as needed.
It’s important to note that while each team member may have individual responsibilities, the team is responsible for the collective delivery of the product. The team must work together to ensure that the product is delivered to a high standard, and each member must be willing to support and collaborate with their teammates to achieve this goal.
- Product Owner:
- Clearly communicate the product vision, goals, and priorities to the development team.
- Develop and maintain the product backlog, ensuring that it is prioritized, refined, and visible to the team.
- Make decisions regarding the product backlog and accept or reject the work done by the development team.
- Work with stakeholders to ensure that the product meets their needs and expectations.
- Continuously refine the product backlog based on feedback and changing market conditions.
- Scrum Master:
- Ensure that the Scrum framework is understood and followed by the team and stakeholders.
- Facilitate the Scrum events, including sprint planning, daily scrum, sprint review, and sprint retrospective.
- Help the team identify and remove any obstacles that may be impeding their progress.
- Encourage a culture of continuous improvement and help the team to identify areas for improvement.
- Serve as a coach and mentor for the team, helping them to improve their processes and practices.
- Development Team:
- Collaborate with each other and the Product Owner to understand the product vision and goals.
- Self-organize to determine the best way to implement each product backlog item.
- Work together to complete the work planned for each sprint, ensuring that each item is implemented to the Definition of Done.
- Continuously improve their processes and practices to increase their efficiency and effectiveness.
- Be willing to take on tasks outside of their specific skill set or expertise to help the team achieve their goals.
These are just a few examples of individual responsibilities for each role in a Scrum team. It’s important to note that each team may have slightly different responsibilities depending on their unique situation and project requirements.
If you would like to define and agree more precisely what everyone have to be responsible for in your team or department do no hesitate to reach me out for organizing Roles workshop. 👨🏻💻 My consultancy services.
- Part 1 - Define the Sprint Goal: During the first part of sprint planning, the team works with the Product Owner to define the sprint goal. The sprint goal is a short statement that describes the purpose of the sprint and what the team hopes to achieve. The goal should be specific, measurable, achievable, relevant, and time-bound. The team should also review the product backlog items and identify those that are most important to achieve the sprint goal.
- Part 2 - Plan the Sprint: During the second part of sprint planning, the team works to plan how they will achieve the sprint goal. The team should identify the tasks needed to complete each product backlog item and estimate the effort required for each task. The team should then decide how many product backlog items they can commit to completing during the sprint.
The following are the steps involved in the second part of sprint planning:
- Review the product backlog items and prioritize them based on the sprint goal.
- Discuss and clarify each product backlog item and identify any dependencies or risks.
- Break down each product backlog item into smaller, more manageable tasks.
- Estimate the effort required for each task, using techniques such as planning poker or relative sizing.
- Determine the team’s capacity for the sprint, taking into account any holidays, vacations, or other commitments.
- Decide how many product backlog items the team can commit to completing during the sprint.
- Create a sprint backlog, which is a list of the product backlog items and the tasks required to complete them.
By the end of sprint planning, the team should have a clear understanding of what they need to achieve during the sprint, as well as a plan for how they will achieve it. The team should also have a sprint backlog that they can use as a guide throughout the sprint.
- Time and Place: The daily Scrum meeting should be held at the same time and place every day to establish a routine. The meeting should be time-boxed to no more than 15 minutes.
- Attendees: The daily Scrum meeting should be attended by the development team members and the Scrum Master. The Product Owner may also attend but should be there as an observer only.
- Three Questions:
The daily Scrum meeting should focus on answering three questions for each team member:
- What did you do yesterday?
- What will you do today?
- Are there any impediments in your way?
The team members should be concise in their answers and stick to the facts. They should avoid going into too much detail or discussing issues that are not relevant to the three questions.
- Collaborative Discussion: After each team member has answered the three questions, the team can have a collaborative discussion about any issues that have been raised. The discussion should be focused on identifying solutions and helping each other to overcome any obstacles that may be impeding progress.
- Scrum Master’s Role: The Scrum Master’s role in the daily Scrum meeting is to facilitate the meeting and help the team to stay focused on the three questions. The Scrum Master should also take note of any impediments that are raised and work to remove them as quickly as possible.
It’s important to note that the daily Scrum meeting is not a status update or a report to the Scrum Master. Instead, it’s an opportunity for the development team to collaborate and plan their work for the day. By answering the three questions and having a collaborative discussion, the team can ensure that they are making progress towards achieving the sprint goal.
Guidance on how to deal with some common challenges that development teams may encounter during Scrum implementation. Here are some examples:
- Resistance to Change: One of the biggest challenges in implementing Scrum is resistance to change from team members and stakeholders. The book advises teams to communicate the benefits of Scrum and to involve team members in the process to help them feel more invested in the new approach.
- Lack of Clarity on Roles and Responsibilities: Another common challenge is a lack of clarity on roles and responsibilities, which can lead to confusion and conflicts. The book advises teams to clearly define the roles and responsibilities of each team member and to ensure that everyone understands their role in the Scrum process.
- Difficulty Estimating and Planning: Estimating and planning are critical to the success of a Scrum project, but they can be challenging, especially for complex projects. The book advises teams to use relative estimation techniques, such as story points, and to involve the entire team in the estimation and planning process.
- Poor Communication and Collaboration: Effective communication and collaboration are essential for Scrum teams, but they can be challenging, especially if team members are distributed or have different backgrounds and perspectives. The book advises teams to hold regular meetings, such as the daily Scrum, sprint reviews, and retrospectives, to facilitate communication and collaboration, and to establish ground rules for communication.
- Unforeseen Dependencies and Risks: Scrum teams may encounter unforeseen dependencies and risks that can derail their progress. The book advises teams to conduct regular risk assessments and to identify and address dependencies as early as possible.
- Unrealistic Expectations: Finally, teams may face unrealistic expectations from stakeholders or from their own team members, which can lead to burnout or project failure. The book advises teams to manage expectations by setting realistic goals and communicating clearly with stakeholders.
- Embrace Transparency: Transparency is a key principle of Scrum, and it’s important for team members to be open and honest about their progress, challenges, and concerns. The book advises teams to use visual aids such as burndown charts, task boards, and sprint backlogs to help communicate progress and keep everyone informed.
- Focus on the Sprint Goal: The sprint goal is the objective that the team is working towards during the sprint. The book advises teams to stay focused on the sprint goal and to prioritize their work accordingly. This can help to prevent scope creep and ensure that the team is making progress towards achieving the sprint goal.
- Collaborate and Communicate: Collaboration and communication are critical for Scrum teams to work effectively together. The book advises teams to hold daily Scrum meetings, sprint reviews, and sprint retrospectives to facilitate communication and collaboration. The book also advises teams to establish ground rules for communication, such as active listening and respectful dialogue.
- Continuously Improve: Scrum is an iterative process, and there is always room for improvement. The book advises teams to continuously review their processes and practices and look for ways to improve. The sprint retrospective is a valuable tool for identifying areas for improvement and implementing changes.
- Adapt to Change: Scrum is designed to be flexible and adaptable, and the book advises teams to embrace change and be willing to adjust their plans as needed. The Product Owner may need to reprioritize the product backlog, or the team may need to adjust their sprint plan based on new information or changing circumstances.
Examples of using SCRUM
- Scrum in a Marketing Agency: One example from the book describes how a marketing agency used Scrum to improve their project management processes. The agency used Scrum to manage a variety of projects, including website redesigns, SEO campaigns, and email marketing. The book provides a detailed account of how the agency implemented Scrum, including how they organized their teams, how they prioritized their work, and how they adapted the process to fit their specific needs.
- Scrum in a Healthcare Company: Another example from the book describes how a healthcare company used Scrum to develop a new software application. The company used Scrum to manage a cross-functional team that included developers, product managers, and clinical experts. The book provides a detailed account of how the team used Scrum to develop the application, including how they managed their backlog, how they conducted sprint reviews, and how they integrated feedback from users.
- Scrum in a Software Development Company: A third example from the book describes how a software development company used Scrum to manage a large-scale software development project. The company used Scrum to manage a team of over 100 developers and testers, working on a complex software system. The book provides a detailed account of how the team used Scrum to manage the project, including how they organized their teams, how they managed their backlog, and how they conducted sprint reviews and retrospectives.
The story of how Toyota implemented Scrum methodology is often cited as an early example of Agile development and has become a key reference point for the Agile community. However, it’s worth noting that Scrum as a formal methodology was not created until several decades later, so what Toyota did was not exactly Scrum, but rather a similar Agile approach.
The person who is often credited with introducing the Agile methodology to Toyota is Taiichi Ohno, who was an engineer and executive at the company in the 1940s and 1950s. Ohno is widely regarded as the father of the Toyota Production System (TPS), which is the precursor to Lean manufacturing and Agile development. Ohno’s approach to product development emphasized continuous improvement, waste reduction, and lean manufacturing principles. He believed that teams of cross-functional workers could collaborate more effectively and innovate more quickly than traditional hierarchical structures. Ohno’s ideas were heavily influenced by the work of W. Edwards Deming, an American statistician who helped to popularize quality control techniques in Japan after World War II. Deming’s philosophy of “continuous improvement” became a key part of the TPS and continues to be a core principle of Agile development. While Ohno is often cited as the key figure behind Toyota’s Agile approach, it’s worth noting that many other individuals and teams at Toyota contributed to the development and refinement of these ideas over the years. The company’s success was the result of a collaborative effort and a commitment to innovation and continuous improvement at all levels.
The story goes that Toyota was facing increasing competition in the automotive industry in the 1970s and needed to find a way to improve its product development process. In response, the company implemented what is now known as the Toyota Production System (TPS), which emphasized continuous improvement, waste reduction, and lean manufacturing principles.
As part of TPS, Toyota introduced a system of small, cross-functional teams that were responsible for developing new products from start to finish. These teams were empowered to make decisions and to work collaboratively, with a focus on continuous improvement and problem-solving.
Although this approach was not formally called Scrum, it shares many of the same principles and practices. For example, the teams were self-organizing and cross-functional, and they worked in short cycles to deliver working products incrementally. They also had daily stand-up meetings to coordinate their work and to identify and address any obstacles.
Overall, the story of how Toyota implemented Agile principles has become an important part of the history of Agile development, and has inspired many organizations to adopt similar approaches to product development and project management.
Here are some additional details on how Toyota implemented its Agile approach:
- Cross-Functional Teams: Toyota created small, cross-functional teams that were responsible for developing new products from start to finish. Each team included members from different areas of the company, including design, engineering, and manufacturing.
- Empowerment: The teams were empowered to make decisions and to work collaboratively, with a focus on continuous improvement and problem-solving. This allowed them to respond quickly to changing market conditions and to innovate more effectively.
- Short Cycles: The teams worked in short cycles, or iterations, to deliver working products incrementally. This allowed them to get feedback from customers and to adjust their approach as needed.
- Daily Stand-Up Meetings: The teams had daily stand-up meetings to coordinate their work and to identify and address any obstacles. These meetings were short and focused, and helped the teams stay aligned and on track.
- Continuous Improvement: Toyota emphasized continuous improvement as a key part of its Agile approach. The teams were encouraged to experiment and to learn from their successes and failures, and to incorporate what they learned into their future work.
- Waste Reduction: Finally, Toyota focused on reducing waste in all aspects of its product development process. This meant eliminating unnecessary steps, reducing lead times, and minimizing defects and errors.
Toyota’s Agile approach was a key factor in its success in the automotive industry, and has inspired many other companies to adopt similar approaches to product development and project management. I hope that it was useful and you were able to find something new for yourself. If you are facing certain management, delivery or IT department/team challenges - do not hesitate to contact me I always happy to help, check out my consultancy page.
Photo by @yasfeelsme