how to write programs that will last forever future proofing your applications darren self 25...
Post on 19-Dec-2015
220 views
TRANSCRIPT
![Page 1: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/1.jpg)
How to Write Programs That Will Last Forever
Future proofing your applications
Darren Self25 October 2011
![Page 2: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/2.jpg)
2
Space is big...
![Page 3: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/3.jpg)
3
Enterprise Application Facts - Size
~200 Million lines of code
![Page 4: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/4.jpg)
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
![Page 5: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/5.jpg)
5
EA Facts – Run the Business
Retail Banking
Life Insurance/LoansTrading
Billing
Supply Chain
CRMCC Processing
Business Intelligence
![Page 6: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/6.jpg)
6
• Original architects and programmers moved on– Redundancy– Retirement
• Hard to train skills– Platform– Corporate standards
• Often undocumented– Ingrained knowledge
EA Facts – Diminishing Skills
![Page 7: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/7.jpg)
7
EA Facts – Poor understanding
![Page 8: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/8.jpg)
9
• Technical– Platforms/technology evolutions
• Web• Mobile• Cloud
– The Y2K problem
• Business priorities– Mergers & acquisitions– Emerging markets
• Legislative– Sarbanes-Oxley– FRS17
What drives change?
![Page 9: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/9.jpg)
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
![Page 10: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/10.jpg)
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
![Page 11: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/11.jpg)
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
![Page 12: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/12.jpg)
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”
![Page 13: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/13.jpg)
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
![Page 14: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/14.jpg)
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
![Page 15: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/15.jpg)
16
• User Interfaces • Platform Modernisation • Globalisation• Service Oriented Architecture• The Web• Mobile Access• The Cloud
Evolutions we’ve seen...
![Page 16: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/16.jpg)
17
Case Study – History of the ATM
No screensLimited functionality
![Page 17: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/17.jpg)
18
Case Study – History of the ATM
Buttons alongside the screen
![Page 18: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/18.jpg)
19
Case Study – History of the ATM
Touch screens & palm scanners
![Page 19: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/19.jpg)
20
What runs these systems?
Case Study – History of the ATM
Standard desktop OS’s
![Page 20: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/20.jpg)
21
• Hardware– Connectivity – Security– Robustness– Accessibility
• User expectations– Real time access– Full range of financial services– Convenience
Case Study - ATM Reasons for change
![Page 21: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/21.jpg)
22
• User Interfaces change• Back end services remain constant
– Modular– Extendable– Flexible– Robust– Secure
Case Study – ATM UI Considerations
![Page 22: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/22.jpg)
23
• Modular design– Easier to extend– Well defined interfaces/contracts– Reusable– Flexible
Everlasting programs - 1
![Page 23: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/23.jpg)
24
• Quality– Well documented– Clean design– Automated tests
• Unit• Integration• Graphical
– Processes• Source control• Build & delivery• Continuous integration
Everlasting programs - 2
![Page 24: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/24.jpg)
25
• Maintainability– Readable– Keep it simple– Don’t make assumptions– Design patterns
Everlasting programs - 3
![Page 25: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/25.jpg)
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
![Page 26: How to Write Programs That Will Last Forever Future proofing your applications Darren Self 25 October 2011](https://reader036.vdocuments.site/reader036/viewer/2022062421/56649d2d5503460f94a0475b/html5/thumbnails/26.jpg)
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.