Download Classnotes 14 - IT210 Software Engineering

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Cost estimate wikipedia , lookup

PRINCE2 wikipedia , lookup

Construction management wikipedia , lookup

Transcript
Software Engineering
Spring Term 2016
Marymount University
School of Business
Administration
Professor Suydam
Week 14
1
•
•
•
•
MP4 Discussion
Final Exam Preparation
Customer Requirements – the “Real World”
Software Disasters
2
3
Customer meeting – establishing requirements and roles
4
Outline
• Infamous Failures
• Classic Mistakes
• Best Practices
• Top 10 Worst Practices
5
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
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.
6
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
7
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
http://www.baselinemag.com/c/a/Projects-Processes/The-Ugly-History-of-ToolDevelopment-at-the-FAA/
8
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
though the software would have to be scrapped
9
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 many millions of $ to
maintain and upgrade
• After two years and $170M, the fast food giant threw in the towel.
10
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.”
http://www.computerworld.com/s/article/102405/United_axes_troubled_baggage_system_a
t_Denver_airport?taxonomyId=73&pageNumber=1
11
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
http://sunset.usc.edu/classes/cs510_2004/notes/confirm.pdf
12
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
13
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
14
PROJECT: “Taurus;” Paperless share settlement system.
• £800 million, original budget £6 million
• Abandoned after 10 years of development
• Developed 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”.
http://www.it-cortex.com/Examples_f.htm
15
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
*ERP (Enterprise resource planning);
CRM (Customer relationship management);
SCM (Supply chain management)
16
•
•
•
•
•
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!
17
• 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
18
• 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
Big Design Up Front (BDUF) is a software development approach in which the program's design is to be
completed and perfected before that program's implementation is started. It is often associated with
the waterfall model of software development.
19
• 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
• *Gold plating in software engineering or Project Management (or time management in general) refers to
continuing to work on a project or task well past the point where the extra effort is worth the value it
adds (if any). After having met the requirements, the developer works on further enhancing the
product, thinking the customer would be delighted to see additional or more polished features, rather
than what was asked for or expected. The customer might be disappointed in the results, and the extra
effort by the developer might be futile
• **Silver Bullet Syndrome is the belief that the next big change in tools, resources or procedures will
miraculously or magically solve all of an organization’s problems. This assumption is almost invariably
erroneous.
20
• Process mistakes (45%), people mistakes (43%), product mistakes
(8%), and 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.
21
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 Cushioning
 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
Valuable approaches to improving project estimation and scheduling
• Timebox* development -- shorter, smaller projects are easier to
estimate
• Creating a Work Breakdown Structure (WBS) -- 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.
* In time management, timeboxing allocates a fixed time period, called a time box, to each planned
activity. Several project management approaches use timeboxing. It is also used for individual
use to address personal tasks in a smaller time frame. It often involves having deliverables and
deadlines, which will improve the productivity of the user.
23
• 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
* Stakeholder – a group, organization, member, or system that affects or can be affected by an
organization's actions
24
• 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
• 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.
26
• 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
27
Not only getting top management support, but
identifying the right sponsor -- From the beginning !!!
28
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
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
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.
29
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
Other 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.
30