A Combat Support Agency Defense Information Systems Agency Agile Development at the DoD SoftwareForge Document ID – doc16436 Forge.mil Engineering August.

Slides:



Advertisements
Similar presentations
COPYRIGHT © 2012 ALCATEL-LUCENT. ALL RIGHTS RESERVED. 1 Agile documentation development methodology Giby Panicker and Judith Benjamin 1-Dec-2012.
Advertisements

PROC-1 3. Software Process. PROC-2 What’s a process? Set of activities in creating software It involves creativity –hard to automate –Requires human judgment.
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
What is Agile? Agile is a software methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration.
<<replace with Customer Logo>>
Agile 101.
Alternate Software Development Methodologies
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall B.1.
Clinton Keith CTO, High Moon Studios Agile Methodology in Game Development: Year 3.
Agile Project Management with Scrum
Agile methods and techniques– some method comparisons Dave Parsons Mark Cranshaw.
NAUG NAUG Knowledge Evening – th February 2007.
A Combat Support Agency Defense Information Systems Agency Agile Development at the DoD SoftwareForge Document ID – doc???? IT Innovators Award Daniel.
Agile development By Sam Chamberlain. First a bit of history..
Software Life Cycles ECE 417/617: Elements of Software Engineering
Roadmap to Continuous Integration Testing and Benefits Gowri Selka, Walgreens Natalie Koltun, Walgreens May 20th, 2014 ©2013 Walgreen Co. All rights reserved.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
An Agile View of Process
Introduction to Agile.
Software engineering Process models Pavel Agejkin.
Agile Methodologies for Project Management By – Komal Mehta.
An Overview of Agile L e a d i n g C h a n g e T h r o u g h C o l l a b o r a t i o n.
> Blueprint Kickoff >. Introductions Customer Vision & Success Criteria Apigee Accelerator Overview Blueprint Schedule Roles & Responsibilities Communications.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Gaining Support for a Sustainable Agile Transformation Dennis Stevens, VP Enterprise Engagements LeadingAgile November 12, 2013.
A Combat Support Agency Defense Information Systems Agency Forge.mil On Ramp to the DoD Cloud SoftwareForge Document ID – doc16065 IT Innovators Award.
Forge.mil Success Stories and Lessons Learned
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
BEFORE AGILE METHODS Other Engineering fields development models were used, ie: Waterfall Method: Intensive planning and refactoring before coding is actually.
Dr. Tom WayCSC Software Processes CSC 4700 Software Engineering.
Software Engineering Modern Approaches
Agile Software Development Brian Link
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Current Trends in Systems Develpment
By Saravanan Bala. General Report 31 % of Software projects are cancelled 75 % of the software projects are considered failures by the people who initiated.
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
A Combat Support Agency Defense Information Systems Agency Forge 101 An Introduction to Forge.mil SoftwareForge Document ID – doc15935 Forge.mil Community.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 other methodologies 1 Method/Process = step-by-step description of the steps involved.
Copyright © 2015 Curt Hill Software Development Paradigms What do you need to know?
CS3100 Software Project Management Agile Approaches.
AP-1 4. Agile Processes. AP-2 Agile Processes Focus on creating a working system Different attitude on measuring progress XP Scrum.
Agile Information Management Development. Agile Project Management Characteristics  Acceptance and even welcome of changing requirements  Incremental.
Agile Metrics It’s Not All That Complicated. © 2011 VersionOne 2 Welcome – About your Trainer, Katia Sullivan VersionOne Product Trainer and Agile Coach.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix B Agile Methodologies B.1.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile.
Agile 101. Feasibility Study SDLC – What is it? Systems Development Life Cycle: The most commonly used, and generally accepted, project management approach..
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
1. ENTERPRISE AGILE TRANSFORMATION AT THE US POSTAL SERVICE MAY 24, Agile Business Solutions.
Delivery Method: Online Duration: 180 Days Scrum Developer Certified (SDC™)  Participants will become familiar with the concepts, advantages, and challenges.
Introduction to Agile. Introduction Who is this guy?
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
From manual test shop to fully automated test coverage: A How-To session to speed up your journey Jayshree Bhakta ITHAKA/JSTOR.
Agile Training Day 2 November 17, 2015.
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Appendix B Agile Methodologies
Information Technology Project Management – Fifth Edition
By: By: Agile Scrum Master Online Training.
روش‌های سريع الانتقال (چابک) توسعه نرم افزار
Introduction to Agile Blue Ocean Workshops.
Agile Development – a new way of software development?
Agile Development.
Presentation transcript:

A Combat Support Agency Defense Information Systems Agency Agile Development at the DoD SoftwareForge Document ID – doc16436 Forge.mil Engineering August 2011

A Combat Support Agency 2 The State of Software Development Agile as a Solution Forge.mil Tailored Agile Practices Questions & Answers Agenda

A Combat Support Agency 3 “ Software code has become central to how the war- fighter is able to conduct missions… DoD must pursue an active strategy to manage its software knowledge base and foster an internal culture of open interfaces, modularity, collaboration, and reuse.” - Open Technology Development Roadmap Plan (April 2006) - Commissioned by Sue Payton, Asst. Sec for Air Force Acquisition The New Mission

A Combat Support Agency 4 HR 2647, National Defense Authorization Act for Fiscal Year 2010, Sec “The Secretary of Defense shall develop and implement a new acquisition process for information technology systems. The acquisition process developed and implemented pursuant to this subsection shall, to the extent determined appropriate by the Secretary —... be based on the recommendations in chapter 6 of the March 2009 report of the Defense Science Board Task Force on Department of Defense Policies and Procedures for the Acquisition of Information Technology; and... be designed to include — 1. early and continual involvement of the user; 2. multiple, rapidly executed increments or releases of capability; 3. early, successive prototyping to support an evolutionary approach; and 4. a modular, open-systems approach. Changing Policy & Guidance

A Combat Support Agency 5 Rates of Feature Usage in Software Projects: Always or Often Used 20% Always or Often Used 20% Rarely or Never Used 64% Rarely or Never Used 64% Standish Group Study Are we involving the End User?

A Combat Support Agency 6 Conventional projects take too long and often miss the mark Lean (agile) methods link developers and users to hit the mark quickly Are We Delivering Quickly?

A Combat Support Agency 7 Successful Delivery by Project Budget Standish Group Study Are We Delivering Incrementally?

A Combat Support Agency 8 Delivery on U.S. Software Projects Standish Group Study Are We Delivering At All?

A Combat Support Agency 9 Agile principles include: Focus on Customer Value – Align project, product and team visions to deliver better product quality – faster and cheaper. Small Batches - Create a flow of value to customers by “chunking” feature delivery into small increments. Small, Integrated Teams - Intense collaboration via face-to-face communication, collocation, etc; diversified roles on integrated, self-organizing, self-disciplined teams. Small, Continuous Improvements – Teams reflect, learn and adapt to change; work informs the plan. Agile As A Possible Solution Delivering Customer Value with Agile Project Management The right product, at the right time, for the right price. Higher Quality: “Designed-to-fit” product with flexibility to change. Increased Throughput: Iterative and incremental project and product “chunks” with earlier value delivery. Reduced Waste: Lean, efficient processes with lower costs and higher productivity. Delivering Customer Value with Agile Project Management The right product, at the right time, for the right price. Higher Quality: “Designed-to-fit” product with flexibility to change. Increased Throughput: Iterative and incremental project and product “chunks” with earlier value delivery. Reduced Waste: Lean, efficient processes with lower costs and higher productivity.

A Combat Support Agency 10 Agile = Family of Methodologies Extreme Programming Lean Software Development Feature Driven Development Dynamic Systems Development Method Agile Unified Process SCRUM Forge.mil employs a SCRUM / XP hybrid methodology

A Combat Support Agency 11 Time Analysis Design Coding Testing 20% done (100% usable!) Time Analysis Design Coding Testing Do we have half a solution yet? Traditional ProcessAgile Process Agile = Early Value

A Combat Support Agency 12 © Jeff Patton, all rights reserved, Waterfall calls for a fully formed idea up front. And, doing it on time requires dead accurate estimation. Waterfall Requires Perfect Vision

A Combat Support Agency 13 © Jeff Patton, all rights reserved, A more iterative allows you to move from vague idea to realization making course corrections as you go….stop when diminishing returns are encountered! 45 …builds a rough version, validates it, then slowly builds up quality Agile Expects Vision Shift

A Combat Support Agency 14 Short Iterations, Small Releases

A Combat Support Agency 15 Cross Functional Teams

A Combat Support Agency 16 Build Scripts (Ant, Puppet, Bash, PowerShell) Version Control (SVN, CVS, GIT) Build Integration (Jenkins, Maven) Test 1 (Automated Regression Tests) Test 2 (Manual & Migration Tests) Sandbox On-Demand Pull Nightly Pull Automated Push Manager Developers Tester Compile/Tag Source Run Unit Tests Run Functional Tests Run Test Coverage Static Code Analysis Build Database WatchesCommitUses Test Informs Stakeholder Inspect Reliance on Automation

A Combat Support Agency 17 THE AGILE BET If we can make changes cheaply enough, the cost savings from quicker feedback and increased learning outweigh the costs of overhead and rework. The “Agile Bet”

A Combat Support Agency 18 How do we write an agile SOW? Is it possible to co-locate? Do we need an agile coach? How do we get access to end users for feedback? Can we write a cost or affordability rationale under agile? Will testers be allowed to work closely with development? What’s the effect on CONOP? Considering Agile at DoD

A Combat Support Agency 19 XP (Development Methodology) “Hard” Best Practices Planning Game User Stories Test Driven Development Continuous Integration Continuous Testing Team Members Project Management Development QA - Test SCRUM (Management Framework) “Soft” Best Practices Requirements Backlog Sprint Kickoff Daily Standup Burn-down Chart User Acceptance Test Team Members Program Management Information Assurance Operations Business Office Forge.mil Hybrid Agile Methodology Agile Best Practices

A Combat Support Agency 20 –Procurement Not Aware of any Template Agile RFP or SOW Language Identify required reviews Define type, format and content of documentation to fit agile process Identify constraints from outside teams such as IA or IOP –Staffing Team composition and interaction changes Co-location of teams or invest in online meeting and collaboration tools Rewrite roles and responsibilities of team members Consider the use of an agile coach on the team Pre-award training Unmanageable Procurement / Acquisition

A Combat Support Agency 21 –Best Practices System Metaphor (xp) The Planning Game (xp) Product Backlog (scrum) –Forge.mil Tweaks Quarterly Release Meetings (added!) Flag Features with Security Implications (added!) Unmanageable Planning / “Envision”

A Combat Support Agency 22 Simple Design (xp) Continuous Testing (xp) Refactoring (xp) Pair Programming (xp) Collective Code Ownership (xp) 40 Hour Work Week (xp) –Forge.mil Tweaks Embed IA Representative (added!) Continuous Integration – leverage for security scans (in progress) Onsite Customer – invest in collaborative tools (DCO, Forge.mil, survey) Coding Standards – leverage CI plug-ins –Best Practices Burn down (scrum) Sprint Backlog (scrum) Sprint Planning (scrum) Daily Standup (scrum/xp) Sprint Review (scrum) Sprint Retrospective (scrum) Development / Test

A Combat Support Agency 23 –Best Practices Small Releases (xp) Frequent Releases (xp) –Forge.mil Tweaks Fully Automate Application Releases (added!) Fully Automate Environment Configuration – O/S, DB, STIG (added!) Maintain Release Management Dashboard (in progress) Integration / Release

A Combat Support Agency 24 Questions

A Combat Support Agency 25 Contact Info us at Follow us on Twitter Join the Forge.mil Group on milBook Sign up for Forge.mil updates at

A Combat Support Agency 26 Get an account –Navigate to (requires a valid DoD CAC or ECA Certificate). –Your account is active once your address is confirmed. –For info on how to obtain and install an ECA Certificate, see the FAQ – “How can I get access to Forge.mil” at Join the Forge Community Support Group to – –Review the Getting Started Guides –View Training, FAQs, and Support Documentation –Ask Questions and Submit Enhancement Requests Find, connect and follow other members – browse users under the People tabbrowse users Find and join a group – search the Group Directory in CommunityGroup Directory Find and join a project – search the Project Directory in Community or ‘All Projects’ on SoftwareForge or ProjectForgeProject Directory Visit the Forge.mil Community Home –Visit the featured group and project –View the most popular content – What do other users think you should be reading? Still have questions – contact the Forge.mil Community Management Team at Next Steps

A Combat Support Agency 27 Forge.mil Track Sessions SessionDescriptionDate/TimeLocation Forge 101 – An Introduction to Forge.mil (Daily Sessions) Learn how to participate in a growing community of developers, program managers, testers, certifiers, end users and Warfighters and how to make the most of the current capabilities TBD Continuous Delivery: Maximize Velocity and Value! (Daily Sessions) Hear about the key technologies and techniques utilized by the Forge.mil project team to achieve maximum delivery velocity and "satisfy the customer through early and continuous delivery of valuable software” TBD De-mystifying Agile Software Development. TBD Forge.mil Success Stories and Lessons Learned – Community Case Studies During this track session, attendees can participate in a lively discussion with the Forge.mil leadership and current Forge.mil customers on how Forge.mil is transforming software development. TBD Forge.mil Testing Services TBD

A Combat Support Agency 28 Forge.mil Breakout Sessions SessionDescriptionDate/TimeLocation Session 1 Agile Software Development – A Day in the Life of an Agile Development Team TBD Session 2Forge.mil Power Users Information ExchangeTBD Session 3Technical Exchange – Continuous IntegrationTBD Session 4Technical Exchange – Subversion Best PracticesTBD Session 5Technical Exchange – Forge.mil Testing ServicesTBD

Next Steps