What is Agile?
Agile is a value-based, iterative approach to project management and software development that helps teams deliver value to customers in a faster, simpler way.
Agile is a Project Management / Software Development methodology that is differentiated by its iterative approach. Within the agile methodology, there are many frameworks that enable teams to put agility to work. You can think of agile as an umbrella term that describes the 'what' while the frameworks within the umbrella help to describe 'how' to operationalize it. There are hundreds of frameworks that exist, however, more than 80% of enterprises have adopted the Scrum framework as the base application. Enterprises that need to scale agile across complex ecosystems will build on top of the scrum foundation and will scale it through the use of frameworks like LeSS and SAFe. Agility provides the ability to iterate, generate feedback, and deliver working solutions in smaller batches increasing efficiency and progress.
Compared to traditional waterfall projects and systems support in FAS, the Agile-at-scale methodology provides faster, flexible and continuous feedback. These are all elements that are requirements to support future DevOps environments where FAS will be releasing software on demand while also providing greater transparency and quicker real-time status reporting. Agile methodologies also enable teams to be more transparent and collaborative in the development process, allowing teams to address issues early and incrementally as they arise rather than addressing them after new project increments are released.
Agile methods and project management best practices, such as Scrum and Kanban, enable:
- iterative software development
- easier scaling of initiatives across the enterprise
- identification of dependencies
- reduction of risk
- ability to quickly adjust direction based on lessons learned and customer feedback
- enhanced prioritization & ability for product & technical leads to shift and pivot as needed
- facilitates partnership and supports functional roles across FAS and GSA IT
Agile software development refers to software development methodologies based on the concept of iterative development, where requirements and solutions evolve through collaboration between self-organizing and cross-functional teams. You can read more about agile basics and better understand how GSA enables agile practices by exploring the GSA Tech Guide on Agile.
Agile practices are guided and motivated by the four core values listed below. It is only by believing in these values that cultural change is possible.
- Unity ‒ Individual and team interactions take precedence over processes and tools. Strategic, mature processes and tools matter, but without clear communication between people in the business (i.e., those bringing requirements forth) and people in development (i.e., individuals that will work on the specifications), it will be impossible to develop a clear understanding of the requirements. If requirements aren't clear, the final product may not align with customer expectations.
- Simplicity ‒ Agile supports focusing on required documents, instead of what often becomes superfluous documentation, such as specifications, design documents and approvals. Because a lot of documentation can and has historically contributed to delayed delivery, in Agile we create "User Stories." User Stories are essentially prioritized to-do lists based on client wants.
- Transparency ‒ In Agile, the customer is engaged with the development team throughout the process, providing input and feedback regularly. We don't wait until the job is done in order to circle back with the customer for feedback.
- Adaptability ‒ Changes are traditionally considered as an expense due to the sometimes extensive rework required. In Agile, priorities can be shifted periodically and changes can be incorporated into an upcoming iteration. Agile makes change a valuable variable, not an inconvenient expense.

The FAS organization embraces Agile core values in delivering incremental value to its modernized solutions. FAS is executing one of GSA's three Strategic Goals for fiscal years 2018 through 2022: Improving the way Federal agencies buy, build, and use technology (see page 27 in the FY 2018 - FY 2022 Strategic Plan to read more about this specific goal). For instance, GSA's 18F began offering an assisted acquisition service for customers needing expert advice on development requirements and managing acquisitions for agile software development projects under $10M. You can read more about this service in GSA's Federal Marketplace Strategy Summer 2020 Release.
Agile Terms and Definitions
-
Agile Application Lifecycle Management (Agile ALM):: Using Agile development techniques within application lifecycle management.
-
Backlog: The product backlog is a holding area for a collection of issues aligned to the Portfolio, Program, or Team levels to be prioritized, selected, and worked from.
-
Board: A board displays issues from one or more projects, giving you a flexible way of viewing, managing, and reporting work in progress.
-
Confluence: Confluence enables teams to collaborate in a Wiki-like Web environment ideal for creating and sharing requirements documentation, files, illustrations, and more.
-
Customers: Customers are the ultimate economic buyer of every product solution. They are an integral part of the Lean-Agile development process and Value Stream, and have specific responsibilities.
-
Issue: In Jira, an issue can represent a story, software bug, project task, risk, or another issue type in your project.
-
Issue Type: An Issue Type provides a hierarchy to organize work across teams, projects, and the enterprise. An Issue Type is a container for work classification, relevant information, and details. Issue Types help articulate the intended value, outcomes, goals, activities and/or tasks for the teams that will perform the work. Examples of Issue Types include: Theme, Initiative, Portfolio Epic, Capability, Epic, Story, Defect, Risk, etc.
-
Jira: A powerful work management tool for all kinds of use cases, from requirements and test case management to agile software development.
-
Jira Reports and Metrics: Jira provides multiple reports including burndown, cumulative flow diagram, velocity charts and more.
-
Lean-Agile Mindset: The Lean-Agile Mindset is the combination of beliefs, assumptions, and actions of leaders and practitioners who embrace the concepts of the Agile Manifesto and Lean thinking and provides the leadership foundation for adopting and applying Agile principles and practices.
-
Product Manager (PM): The Product Manager is the content authority for the program level. They are responsible for the program backlog, prioritizing and accepting features, and works closely with the funding lead (Epic owner).
-
Product Owner (PO): The Product Owner is the content authority for the team level. They are responsible for the team backlog, prioritizing and accepting stories, and representing the customer to the Agile team.
-
Program Increment (PI): is the largest plan-do-check-adjust cycle in Agile at scale. A PI is to the Agile Release Train or Solution Train as an iteration is to the Agile team: a cadence-based interval for building and validating a full system increment, demonstrating value and getting fast feedback.
-
Project: A Jira project is a collection of issues used to coordinate the development or management of a product, service, or activity.
-
Release: In agile software development, a release is a deployable software package that, ultimately, may be released on demand and/or as determined by the needs of the program or product.
-
Scrum: Is a lightweight process that allows a cross-functional team to self-organize, make changes quickly and deliver value in accordance with agile principles.
-
Scrum Master (SM): The Scrum Master is the facilitator for an agile development team and manages the process and how information is exchanged. A Scrum Master plays a vital role in pulling different elements together to ensure a project stays on time and moving in the right direction. They also work to clear obstacles impeding the team's progress, facilitate a good relationship between the team and product owners and protect team members from outside distractions.
-
Space: A Confluence Space is a web-based wiki which works in conjunction with Jira and contains resources and information for a Project team.
-
Sprint: Is the basic unit of development in Scrum, the sprint is a timeboxed effort and restricted to a specific duration.
-
Swimlane: A swimlane is a horizontal categorization of issues in the Active sprints of a Scrum board, or on a Kanban board.
-
Workflow: A Jira workflow is a set of statuses and transitions that an issue moves through during its lifecycle, and typically represents a process within your organization.