Dan Luttrell, Northrop Grumman USC Agile Experiences Workshop March 17-19, 2004 Agile Process in a DOD Environment - One Project’s.

Slides:



Advertisements
Similar presentations
Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010.
Advertisements

best practice project management methodology ©Platinum Services Group Limited What is XPRODi ?
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Taking a Waterfall Project Agile REF: Paul Geberth GCSS-J Project Manager Establishment of an Agile Project.
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Chapter 10 Schedule Your Schedule. Copyright 2004 by Pearson Education, Inc. Identifying And Scheduling Tasks The schedule from the Software Development.
DoD Information Technology Security Certification and Accreditation Process (DITSCAP) Phase III – Validation Thomas Howard Chris Pierce.
Improving Process for Better Software. Who We Are An experiential learning program that provides technology solutions for our partners, and real- world.
Software Measurement and Process Improvement
Object-oriented Analysis and Design
Recall The Team Skills 1. Analyzing the Problem 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5. Refining the System.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Quality is about testing early and testing often Joe Apuzzo, Ngozi Nwana, Sweety Varghese Student/Faculty Research Day CSIS Pace University May 6th, 2005.
SE 555 Software Requirements & Specification Requirements Validation.
Computers: Tools for an Information Age
Iterative development and The Unified process
COMP 350: Object Oriented Analysis and Design Lecture 2
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development.
Project phases and the life cycle
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 14 Systems Analysis and Design: The Big Picture.
The Software Development Life Cycle: An Overview
CPSC 871 John D. McGregor Processes – a first iteration Module 1 Session 1.
RUP Fundamentals - Instructor Notes
Chapter 2 The process Process, Methods, and Tools
Lecture # 04 & 05 CS314 Introduction To Software Development Software Development Process (SDP) Instructor :Muhammad Janas khan
CLEANROOM SOFTWARE ENGINEERING.
INFO415 An overview of systems development
Rational Unified Process Fundamentals Module 4: Disciplines II.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Software Estimation and Function Point Analysis Presented by Craig Myers MBA 731 November 12, 2007.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
Team Skill 2 Understanding User and Stakeholder Needs Requirements Workshop (11)
Public-Private Education Facilities and Infrastructure Act 2002 (PPEA) Joe Damico.
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 7 CASE Tools and Joint and Rapid Application Development.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
Quality Software Project Management Software Size and Reuse Estimating.
Software Engineering Saeed Akhtar The University of Lahore Lecture 6 Originally shared for: mashhoood.webs.com.
Project Scope Management Information Technology Project Management, Fifth Edition Note: some slides have been removed from the author’s original presentation.
Develop Project Charter
Software Engineering COSC 4460 Class 4 Cherry Owen.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
Chapter 2: Testing in Software Life Cycle MNN1063 System Testing and Evaluation.
Stand Up Comedy Project/Product Management
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Project Management Strategies Hidden in the CMMI Rick Hefner, Northrop Grumman CMMI Technology Conference & User Group November.
CUNA Mutual Group’s Quality Assurance Process In the context of Solution Delivery.
Introduction to Software Engineering Muhammad Nasir Agile Software Development(2)
Storyboarding For The Win
1 DEPLOYMENT AND OPERATIONS MODULE 23 ECM SPECIALIST COURSE 1 Copyright AIIM.
1 Different Development methodologies Waterfall Spiral Structured systems analysis and design methodology(SSADM) Rapid Application Development (RAD) Prototyping.
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
CASE Tools and Joint and Rapid Application Development
Information Technology Project Management – Fifth Edition
Object oriented system development life cycle
COMP 350: Object Oriented Analysis and Design Lecture 2
Service Delivery and Support Program Update – Jan. 31, 2018
Guidance notes for Project Manager
DOD’S PHASED SYSTEM DEVELOPMENT PROCESS
Teaching slides Chapter 13
Presentation transcript:

Dan Luttrell, Northrop Grumman USC Agile Experiences Workshop March 17-19, 2004 Agile Process in a DOD Environment - One Project’s Experience

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 2 Agenda  Where We Started  Demonstration Phase  Development Phase  Stumbling Blocks and Potholes  Digging Our Way Out  There Are Benefits to be Gained  Next Time  Conclusion

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 3 Original Concepts  Build a large system of analyst workstations working across different databases and networks in a rapid iterative environment using agile processes –Abandon traditional “shall” statement based requirements development –Quickly develop a common understanding of how the analysts will utilize the system through a use case development –Developers to be responsible for implementing use cases not individual subsystem components. Everyone responsible for daily integration and integrity of the entire system. –Schedule use case development through a series of priority setting meetings with the customer and users

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 4 Demonstration Phase  Level of effort, fixed time period, fixed cost, with a prioritized list of requirements to work off. –Work down requirements list as far as possible given the schedule and cost limits. –Very little customer/user interaction. –Use cases developed from contractor knowledge of the heritage system implementation –Demonstration only with no formal sell off –Simulate real databases and interfaces  Successful demonstration held with customer and their management

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 5 Development Phase – “Reality Sets In”  Customer had high level System Requirements Document (SRD) – No detailed requirements.  We had developed high level use cases without a defined process and plan for developing the detailed use cases –The high level use cases do not directly trace to the high level SRD –We are unsure how detailed the use cases need to be for formally selling off the system in place of shall statements. –We have not resolved how many high level and detailed use cases are needed.  Since we have not resolved this, how will we or the customer know when we are done?  Project has multi layer security requirements that have arcane and rigid standards for what constitutes success –This is a difficult system issue that does not easily lend itself to Agile techniques for solutions

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 6 Stumbling Blocks and Potholes  Customer and user groups do not agree on –Scope of the system –Priorities of implementation  They ask us to prepare a Chinese menu of mid level capabilities for them to pick from but unfortunately: –The capabilities derived are not independent from each other –Since stakeholders do not agree, priority setting sessions did not work  The customer assumes that agile means that they can redirect us on a daily basis with no impact to the end schedule or cost  The customer’s management asks how many SRD requirements have been satisfied and what is the schedule for completion

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 7 Digging our way out  Develop standards for what comprises a detailed use case and functional specification that would allow system to be sold off  Tighten up the configuration management of code, use cases, and function specifications  Build a tree mapping SRD to use cases and functional specifications –Or Attempt development of lower level requirements  Difficult to interpret and reach consensus with stakeholders  Other than facilitating sell-off, this would be a non-value added step  In the near term, focus on Security Certification over increased functionality

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 8 The Benefits  Use Case based requirements provides a better foundation for developing a common understanding of the system  Use Case based implementation with continuous integration and daily builds provides a more stable system earlier and better defect removal than an implementation based upon assigning individual components to each developer –All the implementers see and must understand all of the code to make necessary changes –They identify and debug as they see problems in the code  Early estimates of productivity and product quality show significant improvement over standard process

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 9 Next Time  Agree with customer on what Agile is and is not  Build a hierarchy of use cases from the start and obtain agreement with customer on what defines completion  Once you deliver the first copy for evaluation, schedule rework effort in every delivery –Prioritize all effort jointly with customer  Multi-level security certification still a tough nut to crack –Don’t assume that agile methodology is going to make it easier. Customer security personnel are not inclined to compromise on requirements  Build in schedule slack for each iteration to deal with working off discrepancies from previous iterations

Copyright 2003 Northrop Grumman Space and Mission Systems Corp. All Rights Reserved. 10 Summary  There are gains to be made in productivity and reduced delivered defects with use case based system specification and implementation –Need to determine the detail required and configuration management required to successfully manage this process –Need customer buy in at the beginning along with agreement on how the system will be sold off. –The cost to refine the system specification from high level to implementation level is still present, but the result of doing this refinement with use cases is a better common understanding of how the system will function at the end state.  Embedded Government representatives with the developers are a necessity for rapid development and acceptance –They must have the authority to make cost/schedule/function trade- offs within the current iteration