Understanding Frequent Root Causes of System-development Failure 7 March 2012 Neil Siegel Vice-President & Chief Engineer.

Slides:



Advertisements
Similar presentations
HOW SELF MOTIVATEDARE YOU?
Advertisements

Intelligence Give a definition of intelligence that you could defend, explaining why you believe you could defend it. Give examples of ways your definition.
Project management Project manager must;
Alternative Software Life Cycle Models By Edward R. Corner vol. 2, chapter 8, pp Presented by: Gleyner Garden EEL6883 Software Engineering II.
Evaluating a Software Architecture By Desalegn Bekele.
Managing Project Risk and Incremental Design Innovation Rebecca Wirfs-Brock ©2011 Rebecca Wirfs-Brock.
“Not Fully Specified (Project) Objectives” CS524 – Software Engineering I Azusa Pacific University Professor Dr. Sheldon X. Liang Fall I 2007 Ernie Rosales.
SWOT Dr. Norris Dorsey.
Shuswap Watershed Poster Project –Protect, Preserve and Restore.
4.0 CRITICAL CHANGE IN PROJECT MANAGEMENT 4.1 Why should there be need other methods for Project Management to replace or change? Given the level of project.
1 29 October 2007 Neil Siegel Sector Vice-President, Technology Northrop Grumman Mission Systems National Academy of Engineering Integrating systems engineering.
Copyright 2005 Northrop Grumman Corporation 0 Critical Success Factors for system-of-system architecture / engineering 25 October 2006 Neil Siegel Sector.
The Process of Interaction Design. What is Interaction Design? It is a process: — a goal-directed problem solving activity informed by intended use, target.
Review Questions List and describe the purpose of the four phases of Systems Analysis. The preliminary investigation phase quickly determines whether or.
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
Information Systems Overview Organizing Complex Projects Around Risks Arising From System Dynamic Behavior Neil Siegel Sector Vice-President & Chief Engineer.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 3: Basing Software Development on Reusable Technology.
To succeed in business today, you need to be flexible and have good planning and organizational skills. Many people start a business thinking that they'll.
1.Database plan 2.Information systems plan 3.Technology plan 4.Business strategy plan 5.Enterprise analysis Which of the following serves as a road map.
Leading Culture Conversations The culture data offers a unique opportunity in organizations to discuss ‘how’ people work (or don’t work) together and identify.
Software Project Management Lecture # 8. Outline Chapter 25 – Risk Management  What is Risk Management  Risk Management Strategies  Software Risks.
Striving for Quality Using continuous improvement strategies to increase program quality, implementation fidelity and durability Steve Goodman Director.
Advanced Topics in Requirement Engineering. Requirements Elicitation Elicit means to gather, acquire, extract, and obtain, etc. Requirements elicitation.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
1 Chapter 5 Practice: A Generic View Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Performance Improvement. 2 Steps to Performance Improvement 1. Define the Problem 2. Define Duties or Behaviors to be Improved 3. Establish Priorities.
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
1. 2 IMPORTANCE OF MANAGEMENT Some organizations have begun to ask their contractors to provide only project managers who have been certified as professionals.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Using Business Scenarios for Active Loss Prevention Terry Blevins t
Getting Connected for Success Prework
Getting out of the Testing Game By Bill Matthews Test Architect Manager Technical
Extension to Multiple Regression. Simple regression With simple regression, we have a single predictor and outcome, and in general things are straightforward.
IT Requirements Management Balancing Needs and Expectations.
Chapter 3 Project Management Concepts
Governors Conference The Art of Leadership Liz Cross 21 April 2009.
Dana Nau: CMSC 722, AI Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
1 Requirements Management - General concepts - Noureddine Abbadeni King Saud University College of Computer and Information Sciences Based on “Software.
Introduction to Systems Analysis and Design
Software Engineering Saeed Akhtar The University of Lahore Lecture 6 Originally shared for: mashhoood.webs.com.
© 2009 Bird. Not be used or reproduced without permission. International Negotiations - Day Five Professor Allan Bird, Ph.D. University of Missouri-St.
5/30/20161 Iterative Project Management Chapter 2 – How Do Iterative Projects Function? Part 1 Iterative Project Management / 01 - Iterative and Incremental.
Leadership. Who is a leader ? Who is one leader that you admire ?? & why ??
Software Project Management Lecture # 2 Originally shared for: mashhoood.webs.com.
Dan Luttrell, Northrop Grumman USC Agile Experiences Workshop March 17-19, 2004 Agile Process in a DOD Environment - One Project’s.
Module CC3002 Post Implementation Issues Lecture for Week 7
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Stand Up Comedy Project/Product Management
Interacting with consumer Software Engineering. So far… What is Software Engineering? Different software process models waterfall, incremental, spiral.
Reverse Engineering. Reverse engineering is the general process of analyzing a technology specifically to ascertain how it was designed or how it operates.
Chapter. 3: Retrieval Evaluation 1/2/2016Dr. Almetwally Mostafa 1.
New Product Development Page 1 Teddy Concurrent Engineering by Teddy Sjafrizal.
1 The importance of Team Working and Personal Attributes.
Self Management Project MGT 494 Lecture Recap Goal Setting (Step 5) People talk about developing action plans, they refer mainly to one of two activities:
Change Resistance
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
Software Project Management
1. WHAT IS A PROJECT? “A project is a problem scheduled for solution.” This definition forces us to recognize that projects are aimed at solving problems.
I N T HE N AME OF G OD. T IME T O M ARKET (TTM) W HAT IS TTM ? time to market ( TTM ) is the length of time it takes from a product being conceived until.
Example Commentary Report Research results Big Data Analytics - the extent of deployment and the accuracy of the insight 1.
Tool Support for Testing Classify different types of test tools according to their purpose Explain the benefits of using test tools.
PROJECT MANAGEMENT Software Engineering CSE
 System Requirement Specification and System Planning.
What is a Functional Spec?  Defines what the functionality will be NOT how it will be implemented  Describes features of the software product product's.
Embedded Systems Software Engineering
Software Development - Methodologies
Software Life Cycle Models
Software Project Management
Presentation transcript:

Understanding Frequent Root Causes of System-development Failure 7 March 2012 Neil Siegel Vice-President & Chief Engineer

Failure is not Uncommon The record indicates that the development of large-scale systems remains an endeavor that often fails. –Requiring significantly more money &/or time to complete than originally planned –Under-delivery of specified functionality –Lack of suitability of the delivered system for the actual intended use –Cancellation of the development project before a useful product has been delivered For example, (Glass 2001) cites data indicating that only about 16% of system development projects that he examined were listed as successful by their own developers. Analyses of root causes * tend to focus on factors such as incomplete requirements, changing requirements, and so forth. –These are sometimes symptoms, and not causes. –I offer four candidate root causes, and discuss how to address each. 2 * For example, (Boehm )

“More Precision than Accuracy” “Effective but not Suitable” Failures Too Late / Too Expensive to be useful 3 Four Root Causes for Failures

We may have a great system specification, but the “wicked” nature of the problem prevents us from actually achieving consensus on what they system needs to do, even if we think we have already done so. –Ill-defined –Involve many stakeholders with strong and opposing views. –Have conditions that change midstream. –Are misunderstood until a solution is in hand.* In many large-scale endeavors, the social factors must be addresses in synchronicity with the technical problems. –So our specification – and contract, and statement-of-work, and design baseline, etc – are likely of little real value in reaching a satisfactory conclusion to the project. 4 * Quoted from Steve Nixon, “Wicked Problems, November Used with permission. More Precision than Accuracy

Adapted from Steve Nixon, “Wicked Problems, November Used with permission. 5 Every time we discuss it with the users, we get important new insights about what the problem actually is that we are trying to solve. The problem seems actually to change. We can’t get the stakeholders to agree. We don’t seem actually to know who are all of the stakeholders – we keep finding new ones. “Everything should talk to everything” – we can’t seem to bound the problem. Recognizing Wicked Problems

Experimentation Collaboration Social complexity from integrated networks is a key driver. Traditional linear solution styles are not well-suited. 6 Adapted from Steve Nixon, “Wicked Problems, November Used with permission. Solving Wicked Problems

95%+ of our specifications describe desired functionality, but experience suggests: –That while the resulting systems may be effective (in the sense that they provide the specified functionality), they are not suitable (in the sense that they fail to operate appropriately within the intended environment, falling short in areas such as reliability, response times, ease-of-use, being excessively prone to configuration-driven errors, and so forth). –There are many systems that are considered failures... even after being shown to meet their specification! What to do: –Achieve far higher reliability in software-based systems. –Design to stay within the capability and interest-level of the intended user. –etc. 7 “Effective but not Suitable”

8 “90-90” Failures Example scenario: –We have decomposed our system into a set of small components, each of which has been implemented. –When we start putting the system together, however, all sorts of failures and difficulties arise, performance is unacceptable, and the schedule and cost estimates are repeatedly exceeded. The problem is often unplanned dynamic behavior. What can we do better: –“Design for integration”

9 Too Late / Too Expensive to be Useful Example scenario: –The amount of time (or money, or both) required to build the capability makes it no longer of interest. –Due to repeated breaches of cost and schedule estimates, the development team has lost credibility with the funders &/or users. What can we do: –Agile methods –Radical reduction in SLOC counts

10 Summary Cost increases of 2x, 3x, even 10x are signals of something other than “requirements creep” –Attributing failure to “lack of complete requirements” could be interpreted as passing the blame to someone else –I believe that we in the development community need to take more responsibility for achieving more consistently-better performance How: –Recognize the social aspect of our job, and thereby, deal with the “wicked” aspects of systems development –Recognize that we have to deliver systems that are suitable, as well as effective –Deal better with projected dynamic behavior in our designs, and thereby avoiding “90-90” failures –Create methods that will allow us to deliver system within budgets and schedules that are of interest

NORTHROP GRUMMAN PRIVATE / PROPRIETARY LEVEL 1 Q & A Questions? 11