Agile Scrum (OneID)

Long Do
8 min readOct 1, 2020

WHAT IS AGILE?

Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.

See Agile Manifesto: https://www.atlassian.com/agile/manifesto

WHAT IS SCRUM?

Refer: https://www.atlassian.com/agile/scrum

Scrum is a framework that helps teams work together. Much like a rugby team (where it gets its name) training for the big game, Scrum encourages teams to learn through experiences, self-organize while working on a problem, and reflect on their wins and losses to continuously improve.

Scrum Framework includes:

Scrum Roles:
- Development Team
- Product Owner
- Scrum Master
Scrum Artifacts:
- Product Backlog
- Sprint Planning
- Sprint Backlog
- Sprint (Daily Meeting & Burndown Chart)
- Review & Retrospective

Scrum roles

The development team: Redefining “developer”

The development team are the people that do the work. At first glance, you may think the “development team” means engineers. But that’s not always the case. According to the Scrum Guide, the development team can be comprised of all kinds of people including designers, writers, programmers, etc.

The development team’s responsibilities include:

- Delivering the work through the sprint.
- To ensure transparency during the sprint they meet daily at the daily scrum (sometimes called a standup)

The product owner: Setting a clear direction

Agile teams are, by design, flexible and responsive, and it is the responsibility of the product owner to ensure that they are delivering the most value. The business is represented by the product owner who tells the development what is important to deliver. Trust between these two roles is crucial.The product owner should not only understand the customer, but also have a vision for the value the scrum team is delivering to the customer. The product owner also balances the needs of other stakeholders in the organization.

The Scrum Guide defines the product owners responsibilities as:

- Managing the scrum backlog
- Release management
- Stakeholder management

The scrum master: Holding it all together

The scrum master is the role responsible for gluing everything together and ensuring that scrum is being done well. In practical terms, that means they help the product owner define value, the development team deliver the value, and the scrum team to get to get better. The scrum master is a servant leader which not only describes a supportive style of leadership but describes what they do on a day-to-day basis.

The scrum master focuses on

- Transparency
- Empiricism
- Self Organization
- Values

Scrum Artifacts

Agile scrum artifacts are information that a scrum team and stakeholders use to detail the product being developed, actions to produce it, and the actions performed during the project. The main agile scrum artifacts are product backlog, sprint backlog, and increments

The main agile scrum artifacts are:

  • Product backlog
  • Sprint backlog
  • Increments (or Sprint Goal)

Sprints

A sprint is a short, time-boxed period when a scrum team works to complete a set amount of work. Sprints are at the very heart of scrum and agile methodologies, and getting sprints right will help your agile team ship better software with fewer headaches.

How to plan and execute Scrum sprints

Sprint planning

Sprint planning is an event in scrum that kicks off the sprint. The purpose of sprint planning is to define what can be delivered in the sprint and how that work will be achieved. Sprint planning is done in collaboration with the whole scrum team.Sprint planning should be constrained no more than two hours for each week of the sprint.
Attendees: development team, scrum master, product ownerWhen: At the beginning of a sprint.Duration: Usually an hour per week of iteration–e.g. a two-week sprint kicks off with a two-hour planning meeting.Agile Framework: Scrum. (Kanban teams also plan, of course, but they are not on a fixed iteration schedule with formal sprint planning)Purpose: Sprint planning sets up the entire team for success throughout the sprint. Coming into the meeting, the product owner will have a prioritized product backlog.

Daily Scrum (Daily Stand-up)

Attendees: development team, scrum master, product ownerWhen: Once per day, typically in the morning.Duration: No more than 15 minutes. Don't book a conference room and conduct the stand up sitting down. Standing up helps keep the meeting short!Agile Framework: Scrum and Kanban.Purpose: Stand-up is designed to quickly inform everyone of what's going on across the team. It's not a detailed status meeting. The tone should be light and fun, but informative. Have each team member answer the following questions:- What did I complete yesterday?
- What will I work on today?
- Am I blocked by anything?

Iteration Review

Attendees:Required: development team, scrum master, product owner
Optional: project stakeholders
When: At the end of a sprint or milestone.Duration: 30-60 minutes.Agile Framework: Scrum and kanban. Like planning, review for kanban teams should be aligned with team milestones rather than on a fixed cadence.Purpose: Iteration review is a time to showcase the work of the team. They can be in a casual format like "demo Fridays", or in a more formal meeting structure. This is the time for the team to celebrate their accomplishments, demonstrate work finished within the iteration, and get immediate feedback from project stakeholders. Remember, work should be fully demonstrable and meet the team's quality bar to be considered complete and ready to showcase in the review.

Retrospective

Attendees: development team, scrum master, product ownerWhen: At the end of an iteration.Duration: 60 minutes.Agile Framework: Scrum and Kanban. Scrum teams do sprint retrospective based on a fixed cadence. Kanban teams can benefit from occasional retrospectives, too.Purpose: Agile is about getting rapid feedback to make the product and development culture better. Retrospectives help the team understand what worked well–and what didn't.

Product backlog

The product backlog is a list of new features, enhancements, bug fixes, tasks, or work requirements needed to build a product. It’s compiled from input sources like customer support, competitor analysis, market demands, and general business analysis.The product backlog is a “live” artifact in that it is updated on-demand as new information is available. It’s a cross-team backlog that is maintained and curated by the product owner between sprint cycles and as any new ideas arise. It contains tasks that were once in an active sprint but deprioritized and moved to the backlog.

Product increment

The product backlog is a list of new features, enhancements, bug fixes, tasks, or work requirements needed to build a product. It’s compiled from input sources like customer support, competitor analysis, market demands, and general business analysis.The product backlog is a “live” artifact in that it is updated on-demand as new information is available. It’s a cross-team backlog that is maintained and curated by the product owner between sprint cycles and as any new ideas arise. It contains tasks that were once in an active sprint but deprioritized and moved to the backlog.

Sprint backlog

The sprint backlog is a set of product backlog tasks that have been promoted to be developed during the next product increment. Sprint backlogs are created by the development teams to plan deliverables for future increments and detail the work required to create the increment.The sprint backlog is a set of product backlog tasks that have been promoted to be developed during the next product increment. Sprint backlogs are created by the development teams to plan deliverables for future increments and detail the work required to create the increment.

Product increment

A product increment is the customer deliverables that were produced by completing product backlog tasks during a sprint. It also includes the increments of all previous sprints. There is always one increment for each sprint and an increment is decided during the scrum planning phase. An increment happens whether the team decides to release to the customer. Product increments are incredibly useful and complementary to CI/CD in version tracking and, if needed, version rollback.Teams benefit from keeping all their work aligned to backlog items. For example, creating a branch and build for each backlog item. Teams that integrate their version control and CI/CD tools into their scrum tracking software can use information from those tools to better understand the progress of work. They can also reason about which backlog items are getting deployed and released to customers. This also lets the team reversely look at commits and then tie them back to a scrum increment to see the history and planning of that code.

Extended artifacts

In addition to the previously discussed official scrum artifacts, there exist some extended or meta artifacts. While not official per official scrum guidelines these extended artifacts add additional value and insight to a scrum cycle.

Burndown chart

A sprint burndown (or burnup) chart is not an official scrum artifact but many teams use it to communicate and track progress toward the sprint goal during the sprint. Burndown charts are graphs that display tasks completed over the duration of a sprint. Burndown charts are very useful in helping to gauge the active execution velocity of a team so they know whether they will complete what is planned or need to reprioritize the sprint tasks.

For more info, please go to https://www.atlassian.com/agile/scrum

Hope you have an overview of Agile Scrum

Thanks

--

--