SCRUM - DavidMyrseth/BuketovPY GitHub Wiki

πŸ§‘β€πŸ’» Scrum Framework Overview

Scrum is an Agile framework used to manage complex projects, primarily in software development but adaptable to other industries. It focuses on delivering high-quality products through iterative cycles, continuous improvement, and collaboration. πŸ“Œ Core Principles of Scrum

Iterative Process: Scrum divides work into short, fixed-length cycles called sprints, usually lasting 2-4 weeks.

Flexibility and Adaptation: Scrum allows teams to adjust priorities and plans quickly in response to changes.

Transparency: Everyone involved in the project (team, stakeholders) has visibility into progress and work being done.

Continuous Improvement: The Scrum team regularly reflects on their performance and processes to improve in subsequent sprints.

πŸ§‘β€πŸ€β€πŸ§‘ Roles in Scrum

Scrum Master:

    Facilitates Scrum practices.

    Removes obstacles and impediments that the team faces.

    Ensures the Scrum process is being followed.

Product Owner:

    Owns the product backlog, which is a prioritized list of product requirements.

    Ensures the team is working on the most valuable tasks.

    Acts as the main point of contact for stakeholders.

Development Team:

    Composed of professionals who work together to deliver the product increment.

    They self-organize, collaborate, and determine how to accomplish tasks during the sprint.

πŸ“… Key Scrum Events

Sprint:

    A time-boxed period (usually 1-4 weeks) where the team works on a set of tasks and delivers a potentially shippable product increment.

    Sprints are consistent in length and occur one after another.

Sprint Planning:

    At the start of each sprint, the team and Product Owner meet to decide what items from the product backlog will be worked on in the sprint.

    The team creates a Sprint Backlog (a list of tasks for the sprint).

Daily Scrum (Daily Standup):

    A short, time-boxed (15-minute) meeting that happens every day during the sprint.

    The development team discusses what they’ve done, what they plan to do next, and any obstacles they are facing.

Sprint Review:

    At the end of the sprint, the team demonstrates the work completed to the Product Owner and stakeholders.

    Feedback is gathered, and adjustments may be made for the next sprint.

Sprint Retrospective:

    A meeting at the end of each sprint where the team reflects on what went well, what could be improved, and how to improve processes for the next sprint.

    This promotes continuous improvement and learning within the team.

πŸ“‹ Scrum Artifacts

Product Backlog:

    A dynamic, ordered list of all the features, fixes, enhancements, and requirements needed for the product.

    Managed and prioritized by the Product Owner.

Sprint Backlog:

    A list of tasks and items from the Product Backlog that the team commits to completing during the sprint.

    It is created and updated by the team during Sprint Planning and throughout the sprint.

Increment:

    The usable, potentially shippable product delivered at the end of each sprint.

    It must meet the Definition of Done (DoD), which ensures that all work is complete and tested.

βœ… Benefits of Scrum

Increased Flexibility: Scrum allows for quick responses to changes, both in requirements and market conditions.

Frequent Deliverables: Since work is done in sprints, the product is delivered in small, workable increments, giving stakeholders early access to the product.

Improved Communication: Daily standups and regular meetings foster transparency and collaboration among team members.

Focus on Continuous Improvement: Retrospectives ensure the team regularly reflects on how to improve both product and process.

Customer Satisfaction: Scrum emphasizes stakeholder involvement, which helps align the product with customer needs and expectations.

⚑ Key Scrum Metrics

Velocity: Measures the amount of work completed during a sprint, helping teams estimate how much work they can handle in future sprints.

Burn Down Chart: A graphical representation of work remaining versus time, helping teams track their progress toward completing the sprint goals.

Burndown Rate: The rate at which work is completed within a sprint, indicating how efficiently the team is progressing.

πŸ“ Scrum vs. Traditional Project Management

Traditional project management often uses a linear, waterfall approach where all tasks are planned upfront, and changes are costly.

Scrum encourages flexibility, continuous feedback, and regular reassessment of goals and tasks, making it more adaptable and suitable for complex, evolving projects.