Agile Methodologies in DoD Software

Download Report

Transcript Agile Methodologies in DoD Software

Agile Methodologies in
DoD Software
By
Cynthia Johnson
1
Purpose
 Examine history of DoD software
development standards
 Explore various Agile methodologies
 Assess suitability of Agile methods for
DoD use
2
History of DoD standards






1978 – Mil-Std-1679
1983 – Mil-Std-1679A
1985 – DoD-Std-2167
1988 – DoD-Std-2167
1994 – Mil-Std-498
1998 – IEEE 12207
3
Agile Programming
Methods
 In 2001, the advocates of several “light”
methodologies got together and created
the “Agile Manifesto”
 Actually consists of several different
methods of software development
 Manifesto concentrates on the similarities
not the differences.
4
Agile Manifesto
 We are uncovering better ways of developing software
by doing it and helping others do it. Through this work
we have come to value:
 Individuals and Interactions over processes and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation.
 Responding to change over following a plan
 That is, while there is value in the items on the right,
we value the items on the left more.
5
Agile Commonalities





Agility
Change
Planning
Communication
Learning
6
Agility
 Move quickly but decisively
 React to changing situations with speed
and grace
7
Change
 Change is accepted and welcomed
 Traditional methods treat change as the
enemy and often try it in the court of the
Change Control Board.
8
Planning
 When situation is not as planned, this is
treated as new information
 The plan is changed to reflect the new
reality
 Traditional methods see this as risk and
attempt to get back on original plan.
9
Communication
 Face-to-face communication is valued
over documentation
 Traditional methods treat documentation
as main form of communication
 This sometimes work but often doesn’t.
10
Various Agile Methods






Extreme Programming (XP)
Scrum
Agile Modeling
Adaptive Software Development
Feature Driven Development
Lean Software Development
11
Extreme Programming
 First conceived by Kent Beck in 1990’s
when developing a payroll system for
Chrysler.
 The primary goal is to reduce the cost of
change by introducing values, principles
and practices.
12
XP values





Communication
Feedback
Courage
Simplicity
Respect
13
Scrum
 Began in 1993 at Easel Corporation
 Sports oriented- named after rugby
scrum.
 This is a way to restart the game after an
accidental infringement
 Small teams are led by a Scrum master
 Software is developed in Sprints.
14
Agile Methodologies and
the DoD
 Some newer projects are experimenting
with agile methods at big players
 Lockheed-Martin is prime on Army’s Live
Training Transformation project (LT2)
where Scrum is being used for
framework software.
15
Image Problems
 DoD contracts generally call for a long list of
documentation known as CDRL’s
 Many DoD managers see the Agile Manifesto
and decide immediately not to try it due to
statement “Working Software over
Comprehensive Documentation”
 Also, most companies will not accept a verbal
change over a written contractual obligation.
16
Education is Key
 Agile methods do downplay
documentation, but don’t exclude it.
 Verbal communication is favored, but
written is not ignored.
 DoD engineers and managers and
acquisition managers need to study and
understand agile methods before
dismissing them.
17
Conclusion
 Agile methods are not a magic bullet to solve
all software problems.
 They have proven beneficial on small and
medium sized projects
 Each organization and project whether DoD or
commercial needs to assess their requirements
and choose the best method for them.
 Scrum could be right for some, Iterative
waterfall for others
 Flexibility and knowledge are keys to choosing
correct development method.
18