What is Agile?

Knowledge Base

Agile is an umbrella term that encompasses a number of frameworks, software development and management best practices. Scrum is a part of Agile. The Agile approach is especially effective in circumstances where there are: hard to define requirements, needs for high quality, high chances for frequent or ongoing changes to occur,  seasoned and skilled team members available, personnel open to change and doing things in a new way, and a total corporate management that is pro Agile.

Comprehensive Agile Resource Library

From the basics to advanced second generation agile, learn how to maximize value by tailoring the methodology, strategy, and roadmap for the needs of your organization.

Leading SAFe training in Dallas

Agile Project Management

Expanding on what agile project management entails and learning the core areas that require agile project management disciplines for any Agile methodlology to be a success […]

agile-methodologies

Agile Methodology

Agile Methodology is an alternative approach to guide development activities to quickly build a shippable products and reach the end user despite uncertainties and variations in business requirements […]

agile-scrum-2

Agile Scrum

Scrum can be thought of as a modern day software development process for the implementation of usually complex projects and was independently developed by Ken Schwaber and Jeff Sutherland […]

scaled-agile

Scaled Agile

Expanding on what agile project management entails and learning the core areas that require agile project management disciplines for any Agile methodlology to be a success […]

agile-definition

Agile Glossary

The Ultimate Dictionary of Agile Development and Project Management Terms

A/B Testing

A way to make comparative tests with the intent of revealing which of two options is better. In order for A/B testing to work, there must be a way to quantify the results.

AC - Actual Cost

The actual dollar amount spent by a team for work performed during a set period of time. This usually is the payroll costs for the entire development team plus any actual material costs associated with work done during a sprint.

Aging Analysis

A method used in WIP analysis to determine which jobs have been in the queue an inordinate length of time. These engineering jobs frequently are experiencing unexpected difficulties, and action is needed such as assigning experts to solve the problems or to perhaps employ an automated escalation process.

Agile

Agile is an umbrella term that encompasses a number of frameworks, software development and management best practices. Scrum is a part of Agile. The Agile approach is especially effective in circumstances where there are; hard to define requirements, needs for high quality, high chances for frequent or ongoing changes to occur, seasoned and skilled team members available, personnel open to change and doing things in a new way, and a total corporate management that is pro Agile.

ADAPT

An acronym for the five activities needed for a successful switch over to Agile.

A = Awareness that there is a problem with the current system.
D = Desire to adopt Scrum to solve these problems.
A = Ability to succeed with Scrum because the knowledge is available.
P = Promotion of Agile methodology throughout the company to highlight its benefits.
T = Transfer of the implications of using Scrum throughout the non-IT departments of the co.

Agile Engineering

Agile engineering refers to the group of practices that includes TDD (test driven development), automated testing, CI (continuous integration), and automated deployment. The purpose of agile engineering is to automate all repetitive tasks to save development team time, and to improve code quality by way of using automated testing to retest everything for which a test already exists. Agile engineering also involves the identification of best development practices, such as TDD, that does not add any additional downstream developer time and improves code quality.

Agile Manifesto

A statement of values and principles that describe the various Agile processes of which Scrum is one. Developed in 2001 the manifesto contains a total of twelve principles.

Agile Release Train (ART)

A composite of usually 50 to 125 people broken down into individual teams of 5 to 9 all dedicated to working on one of the company’s value streams. For a very large organization, there can be a number of value streams being worked on at the same time each one of which will have a release train of multiple teams.

Agile Release Train Engineer (RTE)

The person who serves as the Chief ScrumMaster of the train. That person arranges for Scrum of Scrum meetings and is key in Release Planning and workshops. He or she is the overall coordinator of the train teams and works closely with all of the individual team ScrumMasters.

Artifacts

By-products that are produced and come into existence as the project is being worked on. They can be thought of as useable tools to the project’s implementation. They have value in that they provide transparency to the status of the project’s implementation. Examples would be burndown charts or product backlogs.

Automated Escalation

A tool used when engineering jobs are stuck in a WIP queue for a long length of time. The priorities of these jobs, which many times have low priorities, are automatically escalated to a higher level. When used care must be taken since we are using criteria other than economic to prioritize at a higher level. If, for example, we are pushing back a high cost of delay job we may want to leave things at the status quo.

Backlog Grooming

Refers to the refining or grooming of the product backlog by the development team. As work is completed more information becomes available for further defining and detailing of future items to be worked on.

Batch Size Adjusting

Increasing or decreasing the amount of work in a given batch in order to respond to changing economic conditions as a project progresses along.

Batch Size - Optimum

Optimum batch size is a function of holding and transaction costs. By lowering transaction costs, a lower optimum batch size is created. Two synonymous terms are Economic Order Quantity (EOQ) and Economic Lot Size (ELS).

Batch Size Reduction

A key technique to be tried first to reduce cycle time and queue size. Reducing batch sizes also reduces variability in flow and accelerates feedback in product development situations. Reducing batch size should also be tried first as an alternative to increasing capacity. There are other pluses to reducing batch sizes and only minor harm regarding increased costs if the batch size in too low.

“Battle Hardened”

Development team members who have worked on intense large scale application development projects.

“Big Agile”

The overall Agile philosophy for project management and implementation.

Boundaries

The limits or constraints a Product Owner puts on a project that the development team must adhere to. Examples would be completion time deadlines and cost limits. The constraints the Product Owner asks for must be realistic and possible to attain.

Bruce Tuckman

A long time researcher into the theory of group dynamics. In 1965 he published his forming, storming, norming, and performing model and later in the seventies added a fifth stage called adjourning. All five stages are helpful explanations of team development and behavior and are explained below:

Forming – This is the initial stage where a new development team begins to work together for the first time. There is a heavy reliance on the ScrumMaster for guidance. The SM is bombarded with questions and requests for direction. Team members in this stage are skeptical of the new system and the ability of the ScrumMaster.
Storming – This second stage is wrought with infighting as the team begins to work together in earnest. The leader (SM) urges team members to focus more on accomplishing goals rather than on their personal relationships.
Norming – In stage three team members agree to and accept what their roles are going to be on the team. They become committed and unified. The SM switches more to a coach than a director.
Performing – In this stage the team knows what it is doing and can solve in a positive way its own problems and disagreements. It functions well on its own. Here future team leaders emerge who later may become project leaders (SMs) themselves. Here the SM is more involved in solving external problems that affect the team’s performance.
Adjourning – This final stage is more of an off-shoot of the first four stages and is stand alone. It involves the dissolvement of the team once the entire project has been completed. It deals with the insecurity of team members who became used to and happy working as a team.

Burndown Chart

A visual display showing the amount of work remaining to be completed in a sprint or project. Work to be done is shown on the vertical axis and the amount of time left usually expressed in days, on the horizontal axis. The trend line is downward and when it crosses the horizontal axis is the date the work is likely to be completed; either before, after, or on schedule.

Burnup Chart

Like the burndown chart measures work completed over time. The basic difference is that it shows the total amount of work to be done in the project as a whole and then as work is being completed plots it on an ascending trend line.

Cadence

The consistent, regular pace that events take place. The speed of an event’s cadence can be increased or decreased by a decision to do so, but otherwise, it remains constant and does not vary. For example, in Scrum, the length of a Sprint may be set-up as two weeks long. Its cadence then is twenty-six per year. A Daily Scrum meeting has a cadence of every day of a sprint minus the days when we have the planning meeting and the demo and retrospective meetings. Setting up cadences is very important because in a sequential process it helps prevent variability from accumulating.

Capability Maturity Model (CMM)

A framework that describes practices an organization uses in developing software. There are five levels; one is undefined, and five is highly defined and has repeatable practices for developing software.

Collocated Team

A development team or teams that are in the exact same physical location.

Collective Ownership

Where development team members are allowed to modify each other’s code. The dual responsibility then results. The purpose is to ensure that no coder becomes solely specialized so that he or she can’t contribute in other areas other than their specialty; and also to make sure no area is understood or worked on by a single developer (coder).

Communities of Practice

Any like-minded group like ETC and IC, who come together to enhance a common cause.

Component Team

A team that develops software to be delivered to another software team rather than to the end user or customer. Traditionally teams were set up as component teams.

Continuous Integration

Where team programmers add code a number of times per day. It’s usually achieved with the help of a tool or script that notices when the code has been added to the system. An important part of continuous integration is to test any new code added to be sure it works with the code already completed. The key benefit of continuous integration is that if there is a conflict you know about it immediately.

COD - Cost of Delay

Relates to the fact that the more delay time there is in implementing a value-added feature in a project that has a high cost of delay the more the cost will be because of the delay in receiving additional ROI. From an economic point of view, it is usually best to do high cost of delay lobs first. This means knowing how to figure the cost of delay before prioritizing.

Critical Fractile

The anticipated demand level that optimizes expected profits.
Culture – In IT it refers to the “mindset” of the organization meaning what is commonly done on a repeating basis by most everyone in the company. The mindset might be Waterfall, Agile, etc.

Cumulative Flow Diagram (CFD)

A tool for understanding queueing problems and their causes.

Cycle Time

Cycle time is a term that can be used to measure many different kinds of operations and is essentially the time that it takes for an operation to be completed from start to finish. In agile, development cycle time is the measurement of time from when a requirement enters the backlog until the time that it is deployed into production.

Daily Scrum Meeting

A 15-minute time-boxed meeting held at the same time each workday that is attended by the development team and the ScrumMaster. At this meeting, each team member gives a short account of what they accomplished the previous day and what they will be working on that day. Any constraints or problems they ran into are also stated. Only team members speak at this meeting.