Lean & Agile Software Methods In the United States DoD Dr. David. Rico, PMP, ACP, CSM Twitter: @dr_david_f_rico Website: http://www.davidfrico.com LinkedIn: http://www.linkedin.com/in/davidfrico acebook: http://www.facebook.com/profile.php?id=1540017424
Author Background DoD contractor with 28+ years of IT experience B.S. Comp. Sci., M.S. Soft. ng., & D.M. Info. Sys. Large gov t projects in U.S., ar/mid-ast, & urope Published six books & numerous journal articles Adjunct at George Washington, UMUC, & Argosy Agile Program Management & Lean Development Specializes in metrics, models, & cost engineering Six Sigma, CMMI, ISO 9001, DoDA, & DoD 5000 Cloud Computing, SOA, Web Services, OSS, etc. 2
Today s Whirlwind nvironment Work Life Imbalance Global Competition Vague Requirements Overruns Attrition scalation Runaways Cancellation Demanding Customers Organization Downsizing Technology Change System Complexity Pine, B. J. (1993). Mass customization: The new frontier in business competition. Boston, MA: Harvard Business School Press. 3
Software in U.S. DoD Systems No. of software-intensive systems is growing 80% of US DoD functions performed in software Major driver of cost, schedule, & tech. performance Kennedy, M. P., & Umphress, D. A. (2011). An agile systems engineering process: The missing link. Crosstalk, 24(3), 16-20. 4
Traditional Projects Big projects result in poor quality and scope changes Productivity declines with long queues/wait times Large projects are unsuccessful or canceled Size vs. Quality Size vs. Requirements Growth 16.00 40% Defect Density 12.80 9.60 6.40 3.20 Percentage 32% 24% 16% 8% 0.00 0 2 6 25 100 400 Lines of Code (Thousands) 0% 0 2 6 25 100 400 Lines of Code (Thousands) Size vs. Productivity Size vs. Success Code Production Rate 5.00 4.00 3.00 2.00 1.00 0.00 0 2 6 25 100 400 Lines of Code (Thousands) Percentage 60% 48% 36% 24% 12% 0% 0 2 6 25 100 400 Lines of Code (Thousands) Jones, C. (1991). Applied software measurement: Assuring productivity and quality. New York, NY: McGraw-Hill. 5
Global Project ailures Challenged and failed projects hover at 67% Big projects fail more often, which is 5% to 10% Of $1.7T spent on IT projects, over $858B were lost 2010 33% 41% 26% $1.8 Year 2008 2006 2004 2002 2000 1998 1996 32% 44% 24% 35% 46% 19% 29% 53% 18% 34% 51% 15% 28% 49% 23% 26% 46% 28% 27% 33% 40% Trillions (US Dollars) $1.4 $1.1 $0.7 $0.4 1994 16% 53% 31% 0% 20% 40% 60% 80% 100% Successful Challenged ailed $0.0 2002 2003 2004 2005 2006 2007 2008 2009 2010 xpenditures ailed Investments Standish Group. (2010). Chaos summary 2010. Boston, MA: Author. Sessions, R. (2009). The IT complexity crisis: Danger and opportunity. Houston, TX: Object Watch. 6
Requirements Defects & Waste Requirements defects are #1 reason projects fail Traditional projects specify too many requirements More than 65% of requirements are never used at all Defects Waste Requirements 47% Never 45% Other 7% Always 7% Implementation 18% Design 28% Often 13% Sometimes 16% Rarely 19% Sheldon,. T. et al. (1992). Reliability measurement: rom theory to practice. I Software, 9(4), 13-20 Johnson, J. (2002). ROI: It's your job. xtreme Programming 2002 Conference, Alghero, Sardinia, Italy. 7
What is Agility? A-gil-i-ty (ə-'ji-lə-tē) Property consisting of quickness, lightness, and ease of movement; To be very nimble The ability to create and respond to change in order to profit in a turbulent global business environment The ability to quickly reprioritize use of resources when requirements, technology, and knowledge shift A very fast response to sudden market changes and emerging threats by intensive customer interaction Use of evolutionary, incremental, and iterative delivery to converge on an optimal customer solution Maximizing BUSINSS VALU with right sized, justenough, and just-in-time processes and documentation Highsmith, J. A. (2002). Agile software development ecosystems. Boston, MA: Addison-Wesley. 8
What are Agile Methods? People-centric way to create innovative solutions Product-centric alternative to documents/process Market-centric model to maximize business value requent comm. Close proximity Regular meetings Customer Collaboration Multiple comm. channels requent feedback Relationship strength valued more than Contracts Contract compliance Contract deliverables Contract change orders Leadership Boundaries mpowerment Individuals & Interactions Competence Structure Manageability/Motivation valued more than Processes Lifecycle compliance Process Maturity Level Regulatory compliance Clear objectives Small/feasible scope Acceptance criteria Working Software Timeboxed iterations Valid operational results Regular cadence/intervals valued more than Documentation Document deliveries Document comments Document compliance Org. flexibility Mgt. flexibility Process flexibility Responding to Change System flexibility Technology flexibility Infrastructure flexibility valued more than Project Plans Cost Compliance Scope Compliance Schedule Compliance Agile Manifesto. (2001). Manifesto for agile software development. Retrieved September 3, 2008, from http://www.agilemanifesto.org 9
When to use Agile Methods xploratory or research/development projects When fast customer responsiveness is paramount In organizations that are highly innovative/creative Traditional Project Management Agile Project Management Predictable situations High levels of uncertainty and unpredictability Low technology projects Stable, slow moving industries High technology projects ast paced, highly competitive industries Low levels of technological change Rapid pace of technological change Repeatable operations Research oriented, discovery projects Low rates of changing project performance Large fluctuations in project performance Long term, fixed price production contracts Shorter term, performance based RDT& contracts Achieving concise economic efficiency goals Achieving high impact product/service effectiveness Highly administrative contracts Highly creative new product development contracts Mass production and high volume manufacturing Customer intensive, one off product/service solutions Highly predictable and stable market conditions Highly volatile and unstable market conditions Low margin industries such as commodities High margin, intellectually intensive industries Delivering value at the point of plan Delivering value at the point of sale Pine, B. J. (1993). Mass customization: The new frontier in business competition. Boston, MA: Harvard Business School Press. 10
Agile Methods VersionOne found 80% using agile methods today Most are using Scrum with several key XP practices Release planning/continuous integration are vital tools House, D. (2012). Sixth annual state of agile survey: State of agile development. Atlanta, GA: VersionOne. 11
Agile Practices VersionOne found 65% using Scrum practices 55% are using some of top XP technical practices Lean-Kanban is a rising practice with a 25% adoption House, D. (2012). Sixth annual state of agile survey: State of agile development. Atlanta, GA: VersionOne. 12
Agile Case Studies 80% of worldwide IT projects use agile methods Includes regulated industries, i.e., DoD, DA, etc. Agile now used for safety-critical systems, BI, etc. Industry Org Project Purpose Size Metrics lectronic Commerce Google Adwords Advertising 20 teams 140 people 5 countries 1,838 User Stories 6,250 unction Points 500,000 Lines of Code Shrink Wrapped Primavera Primavera Project Management 15 teams 90 people Collocated 26,809 User Stories 91,146 unction Points 7,291,666 Lines of Code Health Care DA m 2000 Blood Analysis 4 teams 20 people Collocated 1,659 User Stories 5,640 unction Points 451,235 Lines of Code Law nforcement BI Sentinel Case ile Workflow 10 teams 50 people Collocated 3,947 User Stories 13,419 unction Points 1,073,529 Lines of Code U.S. DoD Stratcom SKIweb Knowledge Management 3 teams 12 people Collocated 390 User Stories 1,324 unction Points 105,958 Lines of Code Rico, D.. (2010). Lean and agile project management: or large programs and projects. Proceedings of the irst International Conference on Lean nterprise Software and Systems, Helsinki, inland, 37-43. 13
Agile DoD Projects 80% of DoD projects are small to medium-sized Contractors bring agile methods along with them 60-70% of DoD projects now using agile methods Lockheed (Zwicker 2007) MITR (Northern 2010) -35 Lightning National Senior Leadership Decision Support Svc Joint Space Operations Center Mission System Joint Communications Support lement Air and Space Operations Center (ASOC) Global Command and Control System (GCCS) Joint Mission Planning System (JMPS) Single Integrated Air Picture (SIAP) Operationally Responsive Space (ORS) -22 Raptor DCGS Marine Corps (DCGS-MC) DCGS Intelligence Backbone (DIB) DCGS Intelligence Community (DCGS-IC) Joint Operational Planning & xecution System (JOPS) SI (Lapham 2010) Virtual Mission Operations Center (VMOC) IST Applications Warfighter s dge (Wdge) NRC (Campbell 2010) DISA (Risacher 2010) orce XXI Battle Command Brigade and Below Blue orce Tracker (BT) Joint Network Node (JNN) orge.mil Command Post of the uture (CPO) Tactical Ground Reporting System (TIGR) Storefront Widget ramework (SW) USTRANSCOM (Kinney 2010) Corporate Services Vision (CSV) Agile Transportation XXI (AT21) Zwicker, M. (2007). War stories: ighter jets and agile development at lockheed martin. Orange Park, L: Agile Journal. Northern, C. et al. (2010). Handbook for implementing agile in DoD information technology acquisition. McLean, VA: MITR. Lapham, M. A. et al. (2010). Considerations for using agile in DoD acquisition (CMU/SI-2010-TN-002). Pittsburgh, PA: SI. Campbell, W. H. (2010). Achieving effective acquisition of information technology in the department of defense. Washington, DC: NRC. Risacher, D. (2010). ASD(NII)/DoD CIO storefront agile open source. DoD Agile Development Conference, Alexandria, VA, USA. Kinney, R. (2010). Corporate services vision and agile transport 21. DoD Agile Development Conference, Alexandria, VA, USA. 14
DoD 5000 & Agile Methods Goffin Concept Material Solution & Analysis Design Technology Development Planning Implementation MS/A MS/B MS/C RP OC ngineering & Manufacture Production & Deployment Operations & Support TRL 1 TRL 2 TRL 3 TRL 4 TRL 5 TRL 6 TRL 7 TRL 8 TRL 9 DoD 5000 Basic principles observed and reported Technology concept and/or application formulated Analytical & experimental critical function and/or characteristic proof of concept Component and/or breadboard validation in a laboratory environment Component and/or breadboard validation in a relevant environment System/ subsystem model or prototype demonstrated in a relevant environment System prototype demonstrated in an operational environment Actual system completed and qualified through test and demonstration Actual system proven through successful mission operations Analysis of Alternatives Prototype Lean & Agile Iteration 1 Release 1 Iteration 2 Iteration 3 Iteration 4 Release 2 Iteration 5 Iteration 6 Iteration 7 Release 3 Iteration 8 Iteration 9 Iteration 10 Release 4 Iteration 11 Iteration 12 Iteration 13 Release 5 Iteration 14 Iteration 15 Iteration 16 Release 6 Iteration 17 Iteration 18 Iteration 19 Release 7 Iteration 20 Iteration 21 Iteration 22 Release 8 Iteration 23 Iteration 24 Iteration 25 Release 9 Iteration 26 Iteration 27 Lean/Agile Risk Reduction rontloaded DoD 5000 Risk Reduction Backloaded 15
Perceptions to Agile in US DoD Structure, reward, decision, staffing, leadership, etc. Top-down, individualism, regulation, compliance, etc. ocus on reforming acquisition & procurement system Type/Kind Common DoD Agile Perceptions Reality with Respect to Agile Methods Discipline Scalability Domain Management Undisciplined Cowboy Coding Only Applies Small Projects Only for Protoperational Systems lexible Scope/Can't Use VM Rigorous process, plans, requirements, QA, CM, testing, documents etc. Used by 100, 500, 1,000, 10,000+ person person projects & organizations Used in DoD, medical devices, avionics, autos, electronics, etc. Lightweight VM model is used with its release planning methodology Requirements Architecture Quality Inspections Security Doesn't Use Requirements Spaghetti Code from Iterations No Documents/Unmaintainable High CoQ from No Inspections Vulnerabilities from Hacking Always begins with valuable, well-defined, & prioritized requirements Begins with lean architecture or create waste-free emergent design lectronic plans, requirements, designs, tests, manuals, documents, etc. One or two orders of magnitude more inspections & tests performed Security practices result in smaller attack surface & fewer vulnerabilities Rico, D.., Sayani, H. H., & Sone, S. (2009). The business value of agile software methods: Maximizing ROI with just-in-time processes and documentation. t. Lauderdale, L: J. Ross Publishing. 16
Benefits of Agile Methods Analysis of 23 agile vs. 7,500 traditional projects Agile projects are 54% better than traditional ones Agile has lower costs (61%) and fewer defects (93%) 3. 00 2. 25 1. 50 2. 8 1. 1 Before Agile After Agile 20 15 10 18 11 Before Agile After Agile 0. 75 Project Cost in Millions $ 61% Lower Cost 5 Total Staffing 39% Less Staff 20 18 13. 5 Before Agile After Agile 2500 2270 Before Agile After Agile 15 1875 10 5 Delivery Time in Months 24% aster 1250 625 Cumulative Defects 381 93% Less Defects Mah, M. (2008). Measuring agile in the enterprise: Proceedings of the Agile 2008 Conference, Toronto, Canada. 17
Agile World View Agility has many dimensions other than IT It ranges from leadership to technological agility Agile methods are also used for program planning Agile Leaders Agile Organization Change Agile Acquisition & Contracting Agile Strategic Planning Agile Capability Analysis Agile Program Management Agile Project Management Agile Systems Development Agile Processes & Practices Agile Tools Agile Information Systems Agile Tech. 18
Benefits of Organizational Agility Study of 15 agile vs. non-agile ortune 500 firms Based on models to measure organizational agility Agile firms out perform non-agile firms by up to 36% Hoque,., et al. (2007). Business technology convergence. The role of business technology convergence in innovation and adaptability and its effect on financial performance. Stamford, CT: BTM Institute. 19
Conclusion Agility is the evolution of management thought Confluence of traditional and non-traditional ideas Improve performance by over an order of magnitude Agile methods are Systems development approaches New product development approaches xpertly designed to be fast and efficient Intentionally lean and free of waste (muda) Systematic highly-disciplined approaches Capable of producing high quality systems Right-sized, just-enough, and just-in-time tools Scalable to large, complex mission-critical systems Designed to maximize business value for customers The world of traditional methods belongs to yesterday Don t waste your time using traditional methods on 21 st century projects Wysocki, R.. (2010). Adaptive project framework: Managing complexity in the face of uncertainty. Boston, MA: Pearson ducation. 20
Books on ROI of SW Methods Guides to software methods for business leaders Communicates business value of software methods Rosetta stones to unlocking ROI of software methods http://davidfrico.com/agile-book.htm (Description) http://davidfrico.com/roi-book.htm (Description) 21