Agile is an approach to management that helps organizations oversee change in a more efficient manner. Popularly used in project management and software development, Agile works by breaking down large projects into smaller and more manageable parts. These small parts of user functionality, also known as user stories, are prioritized and delivered in short time-frames called iterations.
Using an Agile approach helps organizations and teams to deal with turbulent or unpredictable project environments and adapt to new or sudden demands that may come their way. Agile gives them a natural roadmap to manage their project plans, results, and requirements more efficiently and deliver results in small increments.
Agile Iteration
An Agile iteration is a short time period of one to two weeks where a team refines a specific process to make it better. Software teams in an Agile iteration take their client user stories and transform them into a running prototype.
Teams perform their analysis, design, testing, and coding processes in these iterations that end up giving value to the end-user but also measuring their work progress on the way. Successive iterations help refine the product and the processes to ensure the final product matches the end-user needs.
Agile Manifesto
The Agile Manifesto is a philosophy introduced by 17 software practitioners who wanted to find a viable alternative to heavy software development and monotonous documentation.
Originally written in 2001, the Agile Manifesto offers an approach that encourages teams to value individuals, change management, and user interactions over comprehensive documentation, routine processes, and extensive upfront planning.
Agile Mindset
An Agile mindset is a combination of values, attitudes, traditions, and personal work habits that help manage change in unpredictable or dynamic environments.
Using this mindset, teams treat failures as learning opportunities, share their knowledge, and collaborate seamlessly. Having an Agile mindset is very useful when teams introduce Agile into their project management and software development processes.
Agile Software Development
Agile software development is a group of practices, frameworks, and principles that govern software development based on the Agile Manifesto. Teams and organizations implementing their software development processes using the Agile approach focus on the people and their style of work.
It also includes diverse programs and practices such as planning sessions, sprints, pair programming, test-driven development, Feature-Driven Development (FDD), and Scrum.
Agile Transformation
Agile transformation is the process of revamping an organization and its people by helping them adapt and prosper in a collaborative, proactive, and dynamic environment.
Agile transformation processes aim to infuse fresh energy into the organization by collaborative work practices, empowering employees, inviting diverse ideas, and putting end-user needs first.
b
Backlog
A backlog is a to-do list of tasks that an Agile team has to complete to achieve a specific goal or outcome. Listed in priority order, a backlog helps product development teams clarify the next action items they need to work on.
Examples of items present in a backlog can include bug fixes, changes to existing features, new functionality ready to be introduced, and user stories.
Backlog Grooming
Backlog grooming is the process of refining the items on a backlog to make sure they are prioritized and ready for prompt delivery. Also known as backlog refinement or backlog management, backlog grooming can be planned to be a consistent, ongoing activity or scheduled as an official meeting.
A few examples of activities that can be a part of backlog grooming include creating new user stories, assigning appropriate estimates to stories, and evaluating the priority of existing user stories.
Burndown Chart
A burndown chart is a graphical representation of the work completed in a sprint and the amount of work yet to be done.
It gives a quick overall view of the team's progress in each iteration that helps the team be aware of any possible scope creeps and stay on schedule.
Burnup Chart
A burnup chart is commonly used in Agile projects and is a visual graph that lets you monitor the team's workload to ensure that the project stays on track and within predefined schedules.
c
Cadence
Cadence is the rhythm of an Agile team's development cycle. It helps keep the repetitive tasks going smoothly so that the developers are able to manage the variable parts of the solution development effectively. The duration of a specific release cycle or sprint is known as cadence.
d
Definition of Ready
Definition of ready is an actionable checklist of parameters that helps determine if a team is ready to start work on a particular task. Simply stated, it tells you something is good to be started.
For example, the definition of ready would be used to determine if a particular user story is ready to be included in a sprint.
Disciplined Agile Delivery
Disciplined Agile Delivery (DAD) is an Agile framework that enables the delivery of high-quality products faster by providing context-specific guidance.
Apart from being goal-driven and placing people first, this hybrid approach is formed by combining global Lean and Agile methodologies such as Agile modeling, Kanban, XP, Scrum, and Unified Process.
e
Epics
An epic is a large mass of work divided into smaller tasks or user stories based on the end-user needs. For DevOps and Agile teams, epics are instrumental in creating a work hierarchy and organizing the work yet to be done.
These epics or groups of user stories have the same common shared goal and are grouped in themes.
Estimation
Agile estimation is an approximate assessment of the relative effort required to complete a specific project task. While estimations are typically measured in the hours or minutes required to complete a task, Agile estimations utilize story points to measure it.
In Agile projects, performing regular Agile estimations are key to ensure accuracy and validity of the efforts needed to complete project planning, management, testing, implementation, and delivery.
f
Feature Driven Development
Feature Driven Development is an Agile methodology focused on delivering software outcomes most efficiently.
Apart from being scalable, FFD starts with an incremental approach and helps organize software development by focusing on the end-user’s requirements.
g
Gantt Chart
A Gantt chart is a visual diagram that presents an overview of the work to be done and the scheduled time frame for its completion. Popularly used for planning projects, Gantt charts provide a bird's eye view of everything left to be completed in the project.
This widely-known project management tool represents each task to be completed as a bar where the position and length of the bar reflect the duration and dates for the specific task.
i
Information Radiators
An information radiator is a visual representation of important team data highlights and statistics. Placed in a highly visible location, it shares key team data with stakeholders and boosts individual and team responsibility.
Some examples of metrics present in an information radiator can be velocity, incident reports and count of automated tests.
k
Kanban
Kanban is a popular workflow management method that refines, manages, and streamlines the work to be done in a project. Teams working on DevOps software development and Agile methodologies utilize Kanban to ensure better and faster implementation and on-time work delivery.
Being a visual representation tool, it maximizes team efficiency by allowing teams to focus on what’s important on a consistent basis.
Kanban Board
A Kanban board is a graphical work management tool that maximizes the work efficiency of Agile project management teams by minimizing work-in-progress tasks.
Using a simple framework of cards and columns, Kanban boards help teams visualize the workflow quickly, assign tasks to the right people,n and ensure project completion within defined timelines.
A simple Kanban board for an Agile software development team can include these columns labeled “ready,” “coding,” “approval,” “backlog,” and “testing.”
l
Lean
Lean is a popular work management philosophy that focuses on maximizing customer value while minimizing resource wastage.
Inspired by Toyota, the Lean model encourages teams to manage the workflow by improving their focus and delivering projects faster. The lean concept is the foundation for the Agile methodology and can be easily modified for application in other business areas as well.
m
Mad Sad Glad
Mad Sad Glad is an Agile method that promotes an Agile team’s health and well-being by creating and encouraging a positive work environment. It is a retrospective process that allows team members to think about how they feel, understand their concerns or questions, and foster better emotional health.
p
Planning Poker
Planning Poker is a project planning and estimating method that helps Agile teams understand the effort and time required to complete initiatives listed on their product backlog.
Also known as Scrum poker, planning poker sessions involve teams using poker-style cards to assess the number of story points needed for every backlog task or story for completion. Each decision is made by team consensus.
r
Release Plan
An Agile release plan is a product management technique in which staged releases of software are planned. Quite different from the old-style software planning, a release plan helps Agile teams stay focused on major releases that are broken down into multiple iterations or sprints.
Agile teams use release plans to develop longer-term plans, clarify critical project milestones, and align the product delivery to end-user expectations.
Retrospective
Retrospectives are a work management method that Agile teams use to reflect on their style of work and make regular improvements to get better outcomes.
Also known as a Sprint retrospective or Agile retrospective, this practice is done in regular intervals and helps teams discover the things that have worked and those that did not in specific projects.
s
Scaled Agile Framework
The Scaled Agile Framework® (SAFe®) is a work management methodology that helps development teams manage Agile-related challenges more effectively.
When enterprises implement Agile methodologies in their organization, they use the SAFe guidelines and practices to structure work roles and responsibilities, preserve organizational values, and ensure smooth completion of work.
Scrum
Scrum is a process framework that helps Agile teams structure their work more effectively.
Widely used in complex product and software development projects, Scrum is a group of tools, roles, and meetings that allows organizations to meet dynamic business goals and adjust to a rapidly changing market environment.
Scrum Board
A Scrum board is a visual depiction of the total work required to be completed in a specific sprint, including the progress across different workflows.
Scrum boards can be physical or virtual, but both of them are helpful to Agile teams in clearly understanding the work progress in a particular project sprint.
A typical Scrum board has three columns that depict project status —to-do, doing, and done, for example.
Scrum Master
A Scrum Master is a facilitator who guides the Agile development team to work as per Agile principles and values as mutually outlined before starting the project.
Apart from creating an Agile-conducive environment, a Scrum Master improves communication between the Scrum team and the organization and conducts team meetings, including sprint retrospectives, planning sessions, and daily Scrum.
Scrum Meeting
Scrum meetings are a diverse group of meetings that a Scrum team conducts at regular intervals to manage their software or product development. Scrum meetings include daily Scrum or daily stand-up, sprint reviews, sprints planning, and retrospective meetings.
Scrum of Scrums
Scrum of Scrums are regular meetings between representatives of multiple Scrum teams to help navigate complex software development processes and scale more effectively.
As a scaled Agile technique, Scrum of Scrums offers Agile teams a simple collaborative approach to develop complex solutions easily and adapt to dynamic business environments promptly. Most Scrum of Scrums meetings are held once a fortnight or once a month.
Scrumban
Scrumban is an innovative Agile development procedure that brings together the prescriptive nature of Scrum and process enhancement features of Kanban.
As a hybrid methodology, Scrumban helps Agile teams transition seamlessly from Scrum to Kanban and minimize their resource wastage to boost process efficiencies.
Sprint
A Sprint is a designated time period where Scrum teams complete specific objectives and move towards their targeted goals as per schedule. Sprints help teams smoothly convert their ideas into value for the end-users by completing daily scrums, sprint planning, sprint review, and retrospectives as a key part of every Agile Scrum team's workflow.
Story Points
Story points are simple measuring units used in Agile project development to determine the difficulty of implementing a specific user story. Simply put, a story point represents the difficulty level of a particular story.
Various parameters are assessed before assigning story points, such as the amount of work, level of complexity, and impending risk.
Story Splitting
Story Splitting is a workflow enhancement process that helps organize stories for implementation in upcoming iterations. In story splitting, bigger user stories are broken down into smaller ones to complete them quickly within one iteration while retaining their essence and unique business value.
t
Timeboxing
Timeboxing is a time and energy management workflow technique in Scrum that allows a predefined time for completing a specific task. This time identified to complete that activity is known as a time box. Timeboxing helps define, organize, and manage work for Agile Scrum teams apart from improving their performance.
u
User Story Mapping
User story mapping is a graphical collaborative exercise that helps Agile product teams create an insightful user experience. As user story mapping is a top-down approach, it divides the overall product vision into small actionable steps and organizes them according to priority.
User story mapping exercises help Agile teams understand their end-users more effectively and create products that align with their needs.
v
Velocity
Velocity is the volume of work that can be completed in a short time period such as a sprint or a release. Also known as throughput, velocity is measured by Agile teams in story points, user stories, or engineer hours.