Agile Methodology & SCRUM

Master Agile methodology and SCRUM framework for project management. Learn the 4 values, fundamental principles, roles, ceremonies, and tools like Jira for effective team collaboration.

Agile Methodology & SCRUM

Managing a project following the Agile manifesto places the customer at the center of the project's life cycle. By including the customer in the project setup process, the Agile team can adjust the project's development based on the evolving customer needs over time.

The 4 Values of the Agile Method

The Agile methodology is built upon four core values that prioritize adaptability and human collaboration:

1

Team

Individuals and interactions over processes and tools

2

Application

Operational features over comprehensive documentation

3

Collaboration

Collaboration with customers over contractual negotiation

4

Adaptation

Adaptability to change over following a rigid plan

Fundamental Principles of the Agile Method

Productivity

Note:

Key productivity principles:

  • Regularly deliver functional solutions
  • Prioritize important tasks
  • Segment project production
  • Maintain a strict guideline during project development
  • Embrace simplicity and the art of maximizing the amount of work not done

Customer Communication

Note:

Customer-centered approach:

  • The customer is part of the team
  • Maintain continuous communication with the customer
  • Establish a trustworthy relationship with the customer

Communication

  • Team adaptation and improvement
  • Prioritize human contact
  • Human contact facilitates understanding of different stakeholder constraints
  • Verbal and non-verbal communication (face-to-face communication)
  • Self-responsibility of team members

SCRUM Framework

SCRUM is a framework for implementing the Agile methodology incrementally and iteratively.

SCRUM Schema

Roles

Backlogs

The Product Backlog

The Product Backlog is a registry from which the team selects tasks to be completed. The Product Backlog is filled by the Product Owner and may contain:

Note:

User Stories: User stories are simple tasks explaining a product feature. User stories can be broken down into sub-tasks that serve as steps toward completing the related user story.

Format: "As a..., I can..., so that..." or "As a..., I must..., so that..."

Example: "As a learner, I must log in to participate in my class."

User stories answer Who? What? Why?, and it's up to the developer to answer How?.

Note:

Epics: Epics are a group of user stories. Generally, epics represent a complete feature, whereas user stories represent fragments of a feature.

Example: An epic might be User Authentication and could contain multiple user stories related to login, registration, password reset, etc.

Product Backlog

The Sprint Backlog

The Sprint Backlog is a registry containing tasks to be performed to deliver a feature. Once a sprint is completed, the team gathers for Agile retrospective rituals to identify different improvement areas and define new tasks for the next sprint.

SCRUM Cycle

SCRUM Ceremonies

Sprint Planning

Sprint Planning is a SCRUM ritual that brings together the Product Owner and the development team to plan the upcoming sprint. Together, they create a task list to place in the Sprint Backlog, based on task priority or the previous iteration.

Note:

At the end of Sprint Planning, the development team knows which tasks need to be completed in the next sprint and has a clear understanding of the sprint goal.

Daily Meeting (Stand-up)

The Daily Meeting is a ritual primarily led by the development team and, as the name suggests, it occurs daily, generally before starting work on the project (also known as a Stand-Up Meeting). This ritual should not exceed 15 minutes for efficiency.

During this ritual, team members answer the following questions:

1

Yesterday

What did I do yesterday?

2

Obstacles

What obstacles did I encounter?

3

Today

What will I do today?

Note:

If a significant issue is raised, it should be addressed in a separate meeting to resolve it - don't let the daily meeting run over time.

Sprint Review

The Sprint Review is the only ritual that includes project stakeholders. This ritual brings together:

  • The customer
  • The SCRUM Master
  • The Product Owner
  • The development team

Note:

The review typically lasts 1 hour per week of the sprint, meaning that if a sprint lasts 2 weeks, the review will take 2 hours.

This ritual is used for the team to present the project's progress to all stakeholders. This way, the customer can express their impressions about the project and suggest any necessary adjustments.

Note:

It may happen that, at the end of a sprint, the Product Owner cancels this ritual for some reasons, including when the sprint encountered difficulties in being completed and is, therefore, not presentable.

Sprint Retrospective

The Sprint Retrospective is a ritual used by the development team to identify what happened during the last sprint. This ritual brings together:

  • The SCRUM Master
  • The development team

Note:

The purpose of this ritual is not to highlight what didn't work but to highlight what went well and the areas for improvement that the SCRUM Master can guide the team towards to correct what went wrong.

This ritual can last up to 4 hours due to its nature and importance for continuous improvement.

Organizational Tools

Jira

Jira Illustration

Jira is a collaborative service that allows the application of the Agile methodology through its design. It can be used with the SCRUM framework and KANBAN. If you need to work in Agile methodology using the SCRUM framework, Jira is by far the best candidate and is, for all intents and purposes, mandatory in any respectable industry-related organization.

Getting Started with Jira

Jira is an online service that provides a range of user-friendly tools accessible through a clean and ergonomic interface.

Note:

While it may seem complex at first, it is a highly comprehensive tool that will save you a lot of time in project management.

Let's take a look at the basic Jira interface:

Basic Interface

This is the interface that developers typically encounter. Note that this interface is specific to a SCRUM project; it is different for a Kanban project.

Sprint Planning Interface

Here is the interface used during Sprint Planning:

Product Backlog Interface

This interface represents the Product Backlog and is used to transfer tasks to the Sprint Backlog. This way, the team takes the priority tasks and moves them into the Sprint space. Once the Sprint begins, tasks are automatically transferred to the Board.

Sprint Board

Here is what the Board looks like when a Sprint starts:

Sprint Board

It resembles a Kanban board with columns typically like:

  • To Do - Tasks not yet started
  • In Progress - Tasks currently being worked on
  • Done - Completed tasks

Note:

At the end of the sprint (the end date can be defined when creating the sprint), tasks not completed are returned to the Product Backlog.

Summary

  • Agile methodology puts the customer at the center and values adaptability over rigid processes
  • SCRUM is a framework that implements Agile principles through defined roles and ceremonies
  • Product Owner manages the backlog and represents customer needs
  • Scrum Master facilitates the process and removes impediments
  • Development Team builds the product features
  • Ceremonies (Sprint Planning, Daily Standup, Sprint Review, Retrospective) ensure continuous communication and improvement
  • Jira is the industry-standard tool for managing Agile/SCRUM projects

Note:

This introduction covers the fundamental aspects of Agile and SCRUM. Both methodologies are extremely comprehensive and go beyond what has been presented here, but these basics will give you a solid foundation for effective project management.