Scrum
Scrum is one of several agile frameworks where members break their work into User Stories that can be completed within time-boxed iterations(Sprints), no longer than one month and most commonly two weeks. The scrum team assesses progress in daily quick meetings (daily scrums). At the end of each sprint, the team holds two meetings:
- Sprint Review to demonstrate stakeholders the work done and elicit feedback,
- Sprint Retrospective to reflect and improve
Scrum Core Principles are:
Emphasize collaboration: Scrum emphasizes the importance of collaboration and teamwork in software development, and encourages team members and stakeholders to work together and support each other throughout the development process. This may involve using a variety of collaboration tools and techniques, such as pair programming, collective code ownership, and daily stand-up meetings.
Embrace change: Scrum recognizes that software development projects are subject to change and uncertainty, and that it is impossible to predict and control all of the factors that may affect a project. Scrum therefore emphasizes the importance of embracing change and adapting to changing needs and priorities. This may involve using agile and lean techniques, such as iterative and incremental development, and continuous integration and deployment.
Deliver value quickly and continuously: Scrum focuses on delivering value quickly and continuously to customers, and on delivering high-quality software that meets the needs and expectations of customers. This may involve using agile and lean techniques, such as customer-driven development, and user-centered design and testing.
Encourage transparency and feedback: Scrum encourages transparency and feedback throughout the development process, and promotes open and honest communication among team members and stakeholders. This may involve using a variety of communication channels and tools, such as a product backlog, a burn-down chart, and retrospectives.
Provide support and accountability: Scrum provides support and accountability for team members and stakeholders, and helps to ensure that they have the skills, knowledge, and resources they need to be successful. This may involve using agile and lean techniques, such as coaching, mentoring, and professional development.
When To Choose Scrum?
It is a good approach to use in situations where you need to deliver high-quality, working software quickly and efficiently, and where you need to involve the whole team in the development process.
Scrum is particularly well-suited to projects with well-defined requirements, where the team can adapt to changes quickly and efficiently. It is also well-suited to projects where collaboration and communication are important, and where the team needs to work closely with stakeholders and customers.
Scrum is not well-suited to projects with highly complex or uncertain requirements, where the team needs more structure and guidance to navigate the complexity and uncertainty. In these cases, a more structured and disciplined approach, such as SAFe® (Scaled Agile Framework), may be more appropriate.
Scrum pros and cons
Pros:
Scrum promotes collaboration and communication, as it encourages regular meetings and discussions among the development team.
Scrum allows for flexible planning, as it allows teams to adjust their priorities and plans based on changing circumstances or new information.
Scrum encourages the use of agile and lean principles, which can help teams to quickly identify and address problems and improve the overall quality of the software.
Scrum provides a clear framework and set of roles and responsibilities, which can help to ensure that the development process stays on track and is successful.
Cons:
Scrum can be challenging to manage, as it involves coordinating the efforts of multiple teams and stakeholders.
Scrum can be time-consuming, as it requires regular meetings and updates to the project plan.
Scrum can be complex, especially for organizations with large and legacy systems, which can make it difficult to implement and maintain.
Scrum can be difficult to implement in a traditional organizational structure, as it requires a high level of collaboration and flexibility.
People Also Viewed