Agile in a Nutshell

Swapnali Patil
Globant
Published in
8 min readOct 8, 2021
(Image Ref: https://www.visual-paradigm.com/scrum/what-is-scrum/)

As many organisations are working on agile methodology and it is important to know these basic terms used in daily practice while working in agile environment. In the Agile Method, cross-functional project teams work together during a set amount of time, or a “sprint”, to accomplish tasks that need to be complete for an end goal. The following is a breakdown of what each part of the Agile Method means.

Without further ado, let’s get started.

Sprint

Sprint Flow
  • The sprint is a time-box of one month or less duration which the team produces a potentially shippable product
  • The core benefit of fixed sprints is that the entire team remains focused on a few prioritised goals, rather than attempting to understand every single detail of the system

User Story

User Story Representation
  • A user story is an informal and general explanation of a software feature written from the perspective of end user

Epic

(Image Ref: https://kanbanize.com/agile/project-management/tasks-epics-initiatives-themes)
  • A agile epic is a large series of work that can be broken down into smaller, more targeted tasks sometimes referred to as user stories

Features

Feature List
  • In agile development a feature is a chunk of functionality that delivers business value
  • It describes a specific solution to a requirement and delivers again a single or multiple story
  • The feature for a sprint becomes more detailed with input from customer’s, testers and developers working together

Product Backlog

“A product backlog is a list of new features changes to existing features, bug fixes, infrastructure changes or other activities that a team may deliver in order to achieve a specific outcome.”

-by Agile Alliance

Stand-up Meetings

  • Daily stand up is a time-boxed event that happens everyday at the same time and place where team meets so as to bring everyone up yo date on the information that is vital for coordination
  • This meeting is normally time-boxed to a maximum duration of 15 min though this may need adjusting for large teams

Sprint Review

At the end of each sprint, the scrums come together to present their work, and likely demonstrate functionality, to the users of their product. This can mean other people in the company or actual clients.

Sprint Retrospective

After the Sprint Review, the team will meet again and have a dialogue about what they thought went well during the Sprint, areas they can improve in, and what tasks, if any, need to be carried over into the next Sprint.

Agile Board

  • An agile board is a visual representation of progress of a software project. It helps you and your team to track the progress of your project and ensures transparency
  • the board is divided into columns like ToDo, InProgress, Done
  • Cards in each column reflect the current status of the task

Agile Team

Four prominent roles in an agile team includes the following:

  1. Product Owner
  • A product owner has a vision for the product and he/she is responsible for maximising the value of the product
  • Defines the goals of each sprint or iteration
  • Manages and prioritises the product backlog
  • Requires excellent communication skills

2. Scrum Master Or Team Leader

A scrum master/ team leader acts as a coach, facilitator, mentor and a teacher

Responsible for

  • Facilitating the team and required events
  • Obtaining resources required for teams
  • Protecting from impediments and obstacles

3. Team Members

  • Self-organising and cross functional groups of people who to the hands-on work of developing and testing the product
  • Team members accepts assignments, work on them independently and collaboratively
  • Perform work sprints as per the requirements provided by the product owner and coordinated by the scrum masters

4. Stakeholders

  • Stakeholders are not directly involved in the product development process
  • The roles here can be business executives, production support staff, investors, external auditors, program or portfolio managers or maintenance professionals
  • The input from stakeholders is key to direct the progress of the project in different directions

Agile Metrics

Using metrics, you can measure the development process, gagging productivity, work quality, predictability and health of the team and products that are being developed.

Sprint Burndown

(Image Ref: https://community.atlassian.com/t5/Jira-questions/Burn-Down-Chart-Not-Showing-Progress/qaq-p/734904)
  • Sprint burndown chart is a graphical way showing how much work is remaining in the sprint, typically in terms of task hours.
  • Time and work left to complete are the two main parameters of measurement

Velocity

(Image Ref: https://confluence.atlassian.com/jirasoftwareserver085/velocity-chart-981156731.html)
  • Velocity is an extremely simple, powerful method for accurately measuring the rate at which scrum development teams consistently deliver business value
  • Velocity is powerful because its a result metric
  • It is not a measure of effectiveness, efficiency, competency or anything else
  • It is merely a measure of the rate at which a given amount of problem statements are turned into tested software.

Lead Time and Cycle Time:

Lead and Cycle Time
  • Lead Time shows you the total time from the moment a story enters the system, in the backlog, until it is completed as part of a sprint or related to customer’s
  • Provides the exact end-to-end time calculation for every process
  • Cycle time measures the time for a task to go from ‘started’ or ‘in-progress’ to ‘done’
  • It is a very simple metric that can alert teams when items within sprints are not moving forward.

Cumulative Flow Diagram

(Image Ref: https://kanbanize.com/kanban-resources/kanban-analytics/cumulative-flow-diagram)
  • It is a Kanban metric which shows the status of tasks- in a sprint, a release or across software teams
  • Provides a clear visual representation of bottlenecks
  • The power of this metric is in its visual simplicity. You can grasp a immediately identify issues

Control Charts

(Image Ref: https://www.atlassian.com/blog/jira-software/6-key-ways-optimize-development-control-chart)
  • Control charts focus on the time duration from the ‘in-progress’ to ‘complete’ status of a task
  • It is efficient and flexible way to improve a teams processes because in the case if there are any changes you can discern the result instantly and make any further adjustments right away

Throughput

(Image Ref: https://getnave.com/throughput-run-chart-for-jira)
  • Throughput is often referred to a measure for story points for iterations and is used to measure average tasks proceeded in each unit time
  • You understand the effect of workflow on business performance and can get a better overview of the capacity of your team

Scrum Productivity Tools

Today in market various scrum productivity tools are available. Each is designed to help product development teams to follow the scrum/sprint methodology efficiently and accurately.

Popular scrum tools include:

  • Jira
  • nTask
  • QuickScrum
  • ScrumDo
  • Scrumwise
  • Vivify Scrum

So before wrapping, I would like to give you an example while developing ToDo App. Consider you are working on a project having a team with scrum master, iOS developers, Android developers, and QA team. So project starts with the below phases

  • Requirement

User Story: Create a ToDo App which can create, edit and delete the user’s tasks.

In this phase, all the story requirements are taken from the end-user or stakeholders.

  • Design

The design team starts working on designs for given requirements and takes approval from the stakeholders once the design is ready. Designers may suggest multiple options, out of which one is finalized for development.

  • Development

Once the design is finalized, in the sprint planning meeting all the stories with their story points are considered for development, depending upon sprint scope and resources available.

This given user story is divided into multiple stories and stories can be divided into multiple subtask if needed.

e.g.

Story 1: Design and backend handling for Task List Screen
Story 2: Design and backend handling for Create Task Screen
Story 3: Update or Delete existing tasks
Story 4: Write test cases for task list screen
Story 5: Write test cases for Create Task Screen
Story 6: Write test cases for update or delete existing tasks

The above stories can be divided into subtask if the respective person wish to

e.g. A person can devise Story 3 into the following subtasks:
Subtask 1: Display user option for edit/delete task on tapping on the task
Subtask 2: Handle the edit task design and save task in the database
Subtask 3: Delete task from the database and show the updated result on UI
Subtask 4: Add textfield validation while editing the task

Depending upon stories complexity story points are given to it.

In this phase developers start working on story or subtask and QA team start writing the test cases for these stories.

  • Testing

Once the feature is developed it will be sent to QA team for testing. QA team verify that all the story requirements are met by the product. If they find any requirements are missing they reopen the story and assign it back to the respective developer. If QA person saw bugs he will create a new bug on JIRA.

  • Maintenance

Developers take care of the reopened stories or newly added bugs and after fixing those they deliver new product to QA.

If QA team approves, then this product is launched on live environment.

During these phases, scrum master is responsible for tracking the progress of stories. Everyday team has scrum meetings and in that meeting team members discuss story progress if they have any blockers or sometimes they need approval for some scenarios which come while development. If any such scenarios come up in that case sprint scope affects and if you wish the sprint scope does not affect then the new story is created in a future sprint.

At the end of the sprint, scrum master drives one more meeting called sprint retrospective. In this meeting what things went well and which things need to improve are discussed. This is how agile works when they have any user story to work on.

Wrapping Up

Scrum sprints are more collaborative and adaptive than waterfall phases because sprints break software features and requirements into iterations to be tackled during short time periods. With frequent testing, immediate feedback, daily meetings and ongoing input and consideration of end-user stories and needs, sprints result in products with extremely relevant features.

So folks if you found this story helpful, please give me some claps👏 . Happy reading!!

--

--