The Everyday Agile Workbook

Page 4

Agile at a Glance A quick overview of what you should know about “big-A” Agile Traditional vs. Agile Software Development

(Source: TechFAR Handbook Appendix A)

Topic

Traditional Thinking

Agile Thinking

Requirements

• Known requirements negotiated upfront

• Broad goal, “what” and “why,” known upfront, just not “how”

• Tasks preplanned to end of period

• Government states in solicitation process that Agile processes will be used

• Government usually applies “kitchen sink” philosophy, including everything it can think of in the requirements list because a working product won’t be available in a year or longer Methods

Conventional method goes through the following steps in a linear fashion: 1. Design the program 2. Document the design 3. Create a second version of critical design/operations 4. Plan, control, monitor, testing

Task Identification

• Contract requirements are defined pre-award • Technical or system requirements are refined post-award at beginning of each sprint • Relies on frequent inspection and adaptation Compresses five sequences of conventional method (see left) into shorter cycles, e.g., one to four weeks • Develops a system through repeated cycles and smaller portions • Allows developers to test and review during development

5. Involve customer

• Creates a repeatable model so product is pushed into production quickly

All tasks approved at beginning by customer

Team identifies or uncovers work as it goes, from sprint to sprint » Government sets priorities, approves work at beginning of each sprint, accepts work at end of each sprint

Software Delivery

Software delivered at end of linear development phase

Software delivered frequently with features that allow deployment » This outcome is called a minimum viable product

Changes to Technical/System Requirements

Significant changes in requirements impact cost baseline, which results in contract negotiation

Requirements are refined (there may be a tradeoff, which forces prioritization by government)

Timeline of Agile Development 1950s – 1980s Iterative software development used occasionally in defense and space programs

(Source: Government Accountability Office’s Agile Assessment Guide)

2001

1990s • Scrum • eXtreme Programming • Dynamic Systems Development Method

Agile Manifesto

A GovLoop Guide 4

2001 – Present • • • • • •

DevOps Disciplined Agile Lean Software Development Kanban Scaled Agile Framework Scrumban


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.