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