how to write programs that will last forever future proofing your applications darren self 25...
Post on 19-Dec-2015
220 views
TRANSCRIPT
How to Write Programs That Will Last Forever
Future proofing your applications
Darren Self25 October 2011
2
Space is big...
3
Enterprise Application Facts - Size
~200 Million lines of code
4
• Over 310 billion lines of code in use• 1.5 million new lines written per day• 200 times more transactions each day than Google
– 500 million cell phone connections per day– 60 million patient records per day– Up to 18,000 ATM transactions per minute in the UK alone
EA Facts – Scale of COBOL source
5
EA Facts – Run the Business
Retail Banking
Life Insurance/LoansTrading
Billing
Supply Chain
CRMCC Processing
Business Intelligence
6
• Original architects and programmers moved on– Redundancy– Retirement
• Hard to train skills– Platform– Corporate standards
• Often undocumented– Ingrained knowledge
EA Facts – Diminishing Skills
7
EA Facts – Poor understanding
9
• Technical– Platforms/technology evolutions
• Web• Mobile• Cloud
– The Y2K problem
• Business priorities– Mergers & acquisitions– Emerging markets
• Legislative– Sarbanes-Oxley– FRS17
What drives change?
10
• Do nothing– Stagnation– High costs of maintenance– Often not a viable option
• Buy off shelf– Doesn’t always meet business needs– 40% cancelled before going live– Often require substantial tailoring/integration
• Rewrite– High risk/cost– 75% failure rate
• Reuse
Options for change
11
• Implementing new packages takes years– 42% either never delivered, or
more than 50% late(source: Gartner Group)
– Package projects: years to implement, canceled 35% of the time & rarely fully deployed(source: Standish Group)
• Most large AD projects never deliver on promise– 74% either fail, or are late and
over-budget
• Deactivating legacy systems is almost impossible
The risks
Outright Project (Failure)
Exceeded estimate by over 50% (very late)
Exceeded initial estimate (late)
ERP Implementation Risk Factor
Source: Gartner Group
42% never delivered
or very late
Package: 42% chance of failure or excessive delaysRe-write: 74% chance of failure or excessive delays
12
Magnitude of Failure• Sales fell 12% in qtr after system
went live, down 150.5 million from year before
• 3rd qtr profits dropped about 18.5%
• Retailers and distributors forced to order from rivals
• Candy sat in warehouses on eve of peak season
Case Study – Hershey Foods
Market Reaction• Analysts estimated Hershey
could lose .5% market share ($65 million)
• During a booming stock market, Hershey shares ended the year down 27% from the year high
“Retail sales lagged the industry’s growth rate as a result of our shipping problems.”
Kenneth L. Wolfe, Chairman, Hershey Foods
Sources: USA Today, Dec. 7, 1999; CIO Magazine, June 1, 2000; Business Week Online, Sept. 2001; www.thespot4sap.com; “Top 10 Corporate Information Technology Failures”; Hershey Foods 2000 Annual Report
13
• Candy sat in warehouses where previously it sat in shops• Issue caused by massive distribution problems following flawed
implementation of a $112 million package ERP system• Inaccurate inventory data (+ other problems) caused shipment delays,
incomplete orders during second half of 1999• Seriously affected shipments to stores in peak Halloween and pre-
Christmas sales periods• After investing millions, things that used to worked stopped working,
resulting in financial catastrophe
Hershey Foods – What happened?
Source: CIO Magazine, June 1, 2000; “Top 10 Corporate Information Technology Failures”
14
Magnitude of Failure• $180 million on a new passport
system• Processing costs up by 30% per
passport• Additional staff hired to handle
the backlog• Compensation paid to thwarted
travellers• New law rushed in: free 2-year
passport extensions
Case Study – UK Passport Agency
Impact• Processing time increased 4 fold,
from 10 days to 8 weeks• Over 1 million telephone calls
unanswered in 1 month alone• Lack of service forced travellers
to line up outside passport offices demanding passports
“Senior government ministers were forced to make lengthy explanations in the House of Commons... Home Secretary Jack Straw
promised to move ‘heaven and earth’ to get a passport to a woman for her honeymoon.”
Source: CIO Magazine, Aug. 1, 2000
15
• Passports which previously were being processed on time sat unprocessed • Cause was due to new system not being able to provide the throughput to
process passports in appropriate timescales• Backlog of unprocessed passports reached 538,000, 1000s of vacations
jeopardized• A PR nightmare -- thousands of angry travellers who lined up in rain forced
agency to purchase umbrellas• Officials prioritized people into “urgent”, “non-urgent” and “awfully urgent
indeed, old chap” categories• After investing millions, things that used to worked stopped working,
resulting in financial catastrophe
UK Passport Agency – What happened?
Source: CIO Magazine, Aug. 1, 2000
16
• User Interfaces • Platform Modernisation • Globalisation• Service Oriented Architecture• The Web• Mobile Access• The Cloud
Evolutions we’ve seen...
17
Case Study – History of the ATM
No screensLimited functionality
18
Case Study – History of the ATM
Buttons alongside the screen
19
Case Study – History of the ATM
Touch screens & palm scanners
20
What runs these systems?
Case Study – History of the ATM
Standard desktop OS’s
21
• Hardware– Connectivity – Security– Robustness– Accessibility
• User expectations– Real time access– Full range of financial services– Convenience
Case Study - ATM Reasons for change
22
• User Interfaces change• Back end services remain constant
– Modular– Extendable– Flexible– Robust– Secure
Case Study – ATM UI Considerations
23
• Modular design– Easier to extend– Well defined interfaces/contracts– Reusable– Flexible
Everlasting programs - 1
24
• Quality– Well documented– Clean design– Automated tests
• Unit• Integration• Graphical
– Processes• Source control• Build & delivery• Continuous integration
Everlasting programs - 2
25
• Maintainability– Readable– Keep it simple– Don’t make assumptions– Design patterns
Everlasting programs - 3
26
• Enterprise Applications are important– Underpin businesses– Run the world!
• Software evolves– Evaluate the options– Beware the risks
• Design for re-use– Maintainability– Simplicity– Modularity
Conclusions
Essay Topic
Reflect on the challenges encountered and strategies employed when long-lived Enterprise Applications are exposed for re-use in new environments such as the Cloud, the Web and mobile devices.
You may want to consider such areas as interfacing to the existing Enterprise Application, accessing data, real-time and/or concurrent access, testing strategies and usability.