Transcript No Slide Title
University of Southern California
Center for Systems and Software Engineering
Software Classic Disasters
CS 577b Software Engineering II Supannika Koolmanojwong
University of Southern California
Center for Systems and Software Engineering
“Insanity: doing the same thing over and over again and expecting different results.” — Albert Einstein
2
University of Southern California
Center for Systems and Software Engineering
Outline
• •
IT Project Management: Infamous Failures, Classic Mistakes, and Best Practices Top 10 Worst Practices 3
University of Southern California
Center for Systems and Software Engineering
IT Project Management: Infamous Failures, Classic Mistakes, and Best Practices
R. Ryan Nelson , MIS Quarterly Executive Vol. 6 No. 2 / June 2007 • •
Retrospectives by project postmortems or post implementation reviews
99 retrospectives conducted in 74 organizations over the past 7 years
•
“Insanity: doing the same thing over and over again and expecting different results.” — Albert Einstein
4
University of Southern California
Center for Systems and Software Engineering
10 of the most infamous IT project failures
• • • •
Large magnitude Over $100 million One-half come from the public sector
– –
wasted taxpayer dollars lost services the other half - the private sector
– – –
billions of dollars in added costs lost revenues lost jobs.
5
University of Southern California
Center for Systems and Software Engineering
1. Internal Revenue Service (IRS)1999
• • • • •
PROJECT:
–
Business Systems Modernization;
–
Launched in 1999 to upgrade the agency’s IT infrastructure and more than 100 business applications $8 billion modernization project , team of vendors a complex project overwhelms the management capabilities of both vendor and client. the most expensive systems development “fiasco” in history, with delays costing the U.S. Treasury tens of billions of dollars per year. ability to collect revenue, conduct audits, and go after tax evaders was severely compromised
http://www.cio.com/article/32197/No_Easy_IT_Fix_for_the_IRS?page=1&taxonomyId=3195
6
University of Southern California
Center for Systems and Software Engineering
2. Federal Aviation Administration, 1996
•
PROJECT: Advanced Automation System (AAS); FAA’s effort to modernize the nation’s air traffic control system.
• •
Estimated to cost $2.5 billion ( $1.5 billion is wasted) Numerous delays and cost overruns, which were blamed on both the FAA and the primary contractor, IBM.
• Technical complexity of the effort, bad resource estimation, ineffectively requirements control • "For example, they wanted the system to have only
3 seconds
of downtime a year. But to get the data to prove that requirement had been met would have taken about 10 years” (later on change to 5 minutes downtime) • Instead of admitting the problem, IBM turned AAS into a research project • The project collapsed
7
http://www.baselinemag.com/c/a/Projects-Processes/The-Ugly-History-of-Tool-Development-at-the-FAA/
University of Southern California
Center for Systems and Software Engineering
3. Federal Bureau of Investigation, 20004
•
PROJECT: “Trilogy;” Four-year, $500M overhaul of the FBI’s antiquated computer system.
•
Ill-defined requirements, changed dramatically after 9/11 (agency mission switched from criminal to intelligence focus)
• $170 million project was abandoned altogether • 400 problems with early versions of the troubled software, but never told the contractor • The bureau went ahead with a $17 million testing program even the software would have to be scrapped
8
University of Southern California
Center for Systems and Software Engineering
4. McDonalds, 2001
•
PROJECT: “Innovate;” Digital network for creating a real-time enterprise
• •
planned to spend $1 billion over five years Objective:
to better serve customers by using information and communications technologies to monitor the quality of products and services •
Executives in company headquarters would have been able to see how soda dispensers and frying machines in every store were performing, at any moment.
• • Would need $1billion for infrastructure, and $zillions to maintain and upgrade
After two years and $170M, the fast food giant threw in the towel. 9
University of Southern California
Center for Systems and Software Engineering
5. Denver International Airport 1994
• • •
PROJECT: Baggage-handling system.
It took 10 years and at least $600 million to figure out big muscles, not computers, can best move baggage The baggage system, designed and built by BAE Automated Systems Inc., launched, chewed up, and spit out bags so often that it became known as the “baggage system from hell.”
University of Southern California
Center for Systems and Software Engineering
6. AMR Corp., Budget Rent A Car Corp., Hilton Hotels Corp., Marriott International Inc, 1992
• • • •
PROJECT: “Confirm;” Reservation system for hotel and rental car bookings After four years and $125 million in development, when it became clear that Confirm would miss its deadline by as much as two years. Was supposed to be a leading edge comprehensive travel industry reservation program combining airline, rental car and hotel information Major problems surfaced when Hilton tested the system, then 18 months delay and the problems could not be resolved 11
http://sunset.usc.edu/classes/cs510_2004/notes/confirm.pdf
University of Southern California
Center for Systems and Software Engineering
7. Bank of America, 1988
• • • • • •
PROJECT: “MasterNet;” Trust accounting system.
hardware problems caused the Bank of America (BofA) to lose control of several billion dollars of trust accounts. All the money was eventually found in the system, but all 255 people in the entire Trust Department were fired, as all the depositors withdrew their money. This is a classic case study on the need for risk assessment, including people, process, and technology-related risk. BofA spent $60M to fix the $20M project before deciding to abandon it altogether. BofA fell from being the largest bank in the world to No. 29 CRACK stakeholders problems, bad modular design, focusing in competing with competitors-but ready for transition 12
University of Southern California
Center for Systems and Software Engineering
8. Kmart, 2000
• • •
PROJECT: IT systems modernization $1.4 billion IT modernization effort aimed at linking its sales, marketing, supply, and logistics systems.
•
18 months later, cash-strapped Kmart cut back on modernization, writing off the $130 million it had already invested in IT.
•
Four months later, it declared bankruptcy
• Failing to allocate enough money and manpower to not clearly establishing the IT project's relationship to the organization's business
13
University of Southern California
Center for Systems and Software Engineering
9. London Stock Exchange, 1993
• • •
PROJECT: “Taurus;” Paperless share settlement system.
£800 million, original budget £6 million Abandoned after 10 years of development
• By Vista Concepts, US, for database management. Although being very good for on-line real time processing, it could not handle distributed data processing or batch processing •
LSE tried to modify Vista by rewriting almost 60% of it, hence hidden bugs and long delays
• Grew from
a settlement only system
, to become a full
“share registration and transfer system”.
14
http://www.it-cortex.com/Examples_f.htm
University of Southern California
Center for Systems and Software Engineering
10. Nike, 2000
• • • •
PROJECT: Integrated enterprise software $400 million installing ERP, CRM, and SCM —the full complement of analyst blessed integrated enterprise software. Caused major inventory glitch, over produced some shoe models and under produced others profits drop by $100 million 15
University of Southern California
Center for Systems and Software Engineering
Classic Mistakes
• • • • • •
Behind schedule Add more people Want to speed up development Cut testing A new version of OS becomes available during the project, Time for an upgrade! Key contributors aggravating the rest of the team? Wait until the end of the project to fire him!
16
University of Southern California
Center for Systems and Software Engineering
Classic Mistakes: People
• • • •
Undermined motivation
–
productivity and quality Individual capabilities of the team members or the working relationships Failure to take action to deal with a problem employee Adding people to a late project
–
pouring gasoline on a fire 17
University of Southern California
Center for Systems and Software Engineering
Classic Mistakes: Process
• • • •
BDUF – Big Design Up Front Underestimate, overly optimistic schedules, under scoping it, undermining effective planning, and shortchanging requirements determination and/or quality assurance
–
Poor estimation also puts excessive pressure on team members, leading to lower morale and productivity.
Insufficient risk management contractor failure - outsourcing and offshoring 18
University of Southern California
Center for Systems and Software Engineering
Classic Mistakes: Product
• • • • • • • •
FAA’s modernization effort, where the goal was 99.99999% reliability, which is referred to as “the seven nines.” Requirements gold-plating Feature creep
–
average project experiences about a +25% change in requirements over its lifetime.
Developer gold-plating - new technology that are required in the product.
Research-oriented development Silver-bullet syndrome Overestimated savings from new tools or methods Switching tools in the middle of a project 19
University of Southern California
Center for Systems and Software Engineering
A Meta-Retrospective of 99 IT Projects
• • • •
process mistakes (45%), people mistakes (43%) product mistakes (8%) or technology mistakes (4%).
–
project managers should be experts in managing processes and people.
Scope creep didn’t make the top ten mistakes
–
As long as project manager pays attention to it Contractor failure has been climbing in frequency in recent years If the project managers had focused their attention on better estimation and scheduling, stakeholder management, and risk management , they could have significantly improved the success of the majority of the projects studied.
20
University of Southern California
Center for Systems and Software Engineering 21
University of Southern California
Center for Systems and Software Engineering
Avoid classic mistakes through best practices
1. Avoiding Poor Estimating and/or Scheduling
–
Cost overrun, 1994-180%, 2003-43%,
– –
Schedule overrun, 2000- 63%, 2007-82%.
• • •
cone of uncertainty by multiplying the “most likely” single-point estimate by the optimistic factor lower bounds - optimistic estimate upper bounds - pessimistic estimate.
–
Capital One
• • • •
100% cushion - beginning of the feasibility phase 75% cushion in the definition phase 50% cushion in design 25% cushion at the beginning of construction 22
University of Southern California
Center for Systems and Software Engineering
Avoiding Poor Estimating and/or Scheduling
•
Valuable approaches to improving project estimation and scheduling
–
Timebox development
•
shorter, smaller projects are easier to estimate,
–
creating a work breakdown structure
•
to help size and scope projects
–
retrospectives
•
to capture actual size, effort and time data for use in making future project estimates
–
a project management office to maintain a repository of project data over time.
23
University of Southern California
Center for Systems and Software Engineering
Avoiding Ineffective Stakeholder Management
• •
ineffective stakeholder management is the second biggest cause of project failure Have to know
– – – –
who has influence over others who has direct control of resources stakeholder level of interest stakeholder degree of support/resistance 24
University of Southern California
Center for Systems and Software Engineering
Avoiding Insufficient Risk Management
• •
risk identification, analysis, prioritization, risk-management planning, resolution, and monitoring.
Methods/ tools
– – – –
a prioritized risk assessment table a top-10 risks list, interim retrospectives appointing a risk officer 25
University of Southern California
Center for Systems and Software Engineering
Avoiding Insufficient Planning
•
Ensure the followings
– – – –
Clear roles and responsibilities Resource allocation Schedule / timeline Follow project policies, plans, and procedures 26
University of Southern California
Center for Systems and Software Engineering
Avoiding Shortchanging Quality Assurance
• • •
When a project falls behind schedule, the first two areas that often get cut are testing and training .
Cut corners by eliminating test planning, eliminating design and code reviews, and performing only minimal testing Suggestions:
–
agile development, joint application design sessions, automated testing tools, and daily build-and-smoke tests.
27
University of Southern California
Center for Systems and Software Engineering
Avoiding Weak Personnel and/or Team Issues
• •
get the right people assigned to the project from the beginning Between 1999 and 2006, the retrospectives reported an increasing number of problems with distributed, inter-organizational, and multi-national teams.
–
reduction in face-to-face team meetings, time zone barriers, and language and cultural issues 28
University of Southern California
Center for Systems and Software Engineering
Avoiding Insufficient Project Sponsorship
• •
Not only getting top management support, but identifying the
right sponsor
From the beginning !!!
29
University of Southern California
Center for Systems and Software Engineering 30
University of Southern California
Center for Systems and Software Engineering
Outline
• •
IT Project Management: Infamous Failures, Classic Mistakes, and Best Practices Top 10 Worst Practices 31
University of Southern California
Center for Systems and Software Engineering
There are two kinds of failures: those who thought and never did and those who did and never thought.
University of Southern California
Center for Systems and Software Engineering
Worst Practices
Capers Jones, "Our Worst Current Development Practices,"
IEEE Software
, vol. 13, no. 2, pp. 102-104, Mar. 1996 •
Project failures
– –
terminated because of cost or schedule overrun experienced schedule or cost overruns in excess of 50 percent of initial estimates
–
resulted in client lawsuits for contractual noncompliance 33
University of Southern California
Center for Systems and Software Engineering
Worst Practice #1
No historical software-measurement
• •
Lack of historical data makes stakeholders blind to see the realities of software development Need to check on schedule, cost, progress, performance 34
University of Southern California
Center for Systems and Software Engineering
Worst Practice #2
Rejection of accurate estimates
•
No accurate estimate is the root cause for the rest of the worst practices including:
–
inability to perform return-on-investment calculations
–
susceptibility to false claims by tool and method vendors
–
software contracts that are ambiguous and difficult to monitor.
35
University of Southern California
Center for Systems and Software Engineering
Worst Practice #3 & 4
Failure to use automated estimating tools and automated planning tools.
•
50 commercial software-cost estimating tools
–
Checkpoint, COCOMO, Estimacs, Price-S, or Slim
•
100 project-planning tools on the market
–
Microsoft Project, Primavera, Project Manager’s Workbench, or Timeline
•
Combination of estimating and planning tools leads to accurate and realistic outcomes not easily overridden by clients or executive 36
University of Southern California
Center for Systems and Software Engineering
Worst Practices
• • •
5 & 6 - Excessive, irrational schedule
pressure and creep in users’ requirements 7 & 8 - Failure to monitor progress and to perform risk management
–
“90 percent completion” 9 & 10 - Failure to use design reviews and
code inspections.
37