Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compaq Enterprise Technical Symposium 2001 Application Migration Necessity, Concepts, and Techniques Brian Hetrick SAIE (Systems Application Integration.

Similar presentations

Presentation on theme: "Compaq Enterprise Technical Symposium 2001 Application Migration Necessity, Concepts, and Techniques Brian Hetrick SAIE (Systems Application Integration."— Presentation transcript:

1 Compaq Enterprise Technical Symposium 2001 Application Migration Necessity, Concepts, and Techniques Brian Hetrick SAIE (Systems Application Integration Engineering) Compaq IQ Center

2 2 SAIE/IQC New England  Software development/ migration in Nashua NH, co-located with and cooperating with BCSG Software Engineering  Performance facility in Littleton MA  Develop integrated applications / solutions for vertical markets  Address customer solution needs for: –Migration –Supply chain integration –Customer relations management –Business intelligence –Zero Latency Enterprise systems

3 3 AgendaAgenda  Why Migrate?  Application Development  Migration Types and Techniques  Reengineering = Development  Migration Costing  Migration Process

4 4 Why Migrate?

5 5 Platform Lifetimes

6 6 Application Development

7 7 Financial Models  Manufacturing Model –Set all of good, fast, cheap  Engineering Model –Set two of good, fast, cheap –Third can be estimated  Research Model –Set two of good, fast, cheap –No idea of third

8 8 Development Behavior Rewarded is Development Behavior Obtained Time to Complete Program Size Data Space Size Program Clarity UI Friendliness 14453 2-31235 52144 4331-22 2-3551-21 TimeSizeDataClearUI Team Goal Team Rating For

9 9 Development Cost Depends on Schedule

10 10 Budget-Driven Development...  Cost and duration are easy to measure, so often become driving metrics.  In the three-way trade-off, “good, fast, cheap: pick two,” fast and cheap get picked.  For minimum time, project cost should triple; but flat budget means two-thirds of the work is not done.

11 11 … Sacrifices “Invisible” Deliverables  Under pressure, parts of project are sacrificed  Pieces sacrificed are “invisible” –Reliability –Maintainability –Documentation –Adaptability –Performance

12 12 Applications Are Liabilities, Not Assets  Maintenance costs are 50- 95% of total lifetime costs  Every application is an expense stream incurred but not yet paid  Development actions determine expense of maintenance

13 13 Why Migration Can Be Expensive  If people built houses the way they write computer programs, the first woodpecker to come along would destroy civilization — Dijkstra  We do not know what a software “safety factor” is  We build environment- specific software

14 14 Transient Components  Migration “scaffolding” or “bridges” may be needed, later removed  Tools may need to be invented or adapted to the unique needs of the migration  While “non-deliverable” or “disposable,” these are essential

15 15 Migration Types and Techniques

16 16 Migration Scope and Stages  Migration happens to a business system, not just an application  Application, platform, operations, environment, business process, work flow, documentation, users all interact  Changes must be: –coordinated to avoid pain –rate limited to avoid chaos

17 17 Migration Types  Re-implementation: move application “as is” to new platform  Re-architecting: move application and exploit properties of new platform  Re-engineering: rethink business processes, work flow, and application

18 18 Re-ImplementationRe-Implementation  Source application on target platform  No functional changes

19 19 Rezitigamed Renaelc DaehKcartE OK Re-ArchitectingRe-Architecting  Source function on target platform  Changes to exploit platform

20 20 Re-EngineeringRe-Engineering  New architecture, functions to support new processes

21 21 Migration Techniques  Platform Emulation: emulate original hardware  O/S Emulation: emulate original operating system  Idiom Translation: change idioms to that of new platform  Adaptation Layer: extract “kernel” application, add interface to new platform

22 22 “Big Bang” or Stepwise Migration  Migrating an application is like getting to the top of a cliff  There is always a direct, high- energy, high-risk route  There are usually several roundabout, low-energy, low- risk routes  Direct path is not always quicker or cheaper

23 23 Risk Minimization  Minimize risk: change one factor at a time  “Platform” is just one factor  Other factors: –database –network and IPC methods –transaction manager –object manager –etc.

24 24 Sequence Planning  Theoretically, a combinatorial non-linear optimization problem  Practically, finding a path through alternatives where information is difficult to obtain

25 25 Acquire Hardware Migrate Software Test Deploy Acquire Hardware Migrate Software Test Deploy Update Emulation as a Sequencing Aid  Emulation permits reordering the initial deployment and migration  Can deploy, then migrate

26 26 Architectural Preparation  On source platform, parameterize system and third-party dependencies  Recreate implementation of system and third-party dependencies for new system, third-party products  Easily move “kernel” application to new environment Hardware TPSD/BO/S Application Adapter D/B Adapter TPS Adapter Hardware O/S Adapter

27 27 Major Migration Cost Drivers  Application Size  Type of Migration  Concurrent Migration and Development  Informal Development –No current sources –No build procedures –No test procedures  Parochialism –Application designed for source platform –Application micro- optimized for source platform –Language dialects

28 28 Reengineering = Development

29 29 Recast as Client/Server Validate D/B Update ReportCheck Validate D/B Update Report Check

30 30 Security Audit/Upgrade 1 2 3 5 4 6 7 8 9 10 11 12 13 14 Observe Consume Impersonate Subvert Destroy

31 31 Migration Costing

32 32 Application Migration Predictability  “Estimated Delivery Date (EDD): the earliest time for which we cannot prove we will not be finished” does not work Predicted “ Problems ” $  Some migration costs are predictable  Some are unpredictable, and might be large

33 33 Predictable Migration Costs  Measurable properties: –Application size –Language standard conformance –System dependencies at expression level –Module cohesion  Measure with: –Diagnostic compilers –Specialized tools

34 34 Unpredictable Migration Costs  Unmeasurable properties: –System dependencies at architectural level –Quality of interface abstraction layers –Resilience to changes in environment  Identify factors by: –Manual inspection –Subsystem sample migration

35 35 Rules of Thumb  Abstraction is good  Use major new technologies where applicable  The best code is the code that is not there  Migration costs 3-10% of redevelopment

36 36 Statistical Correlations  Richard Bellman: the use of statistics is a measure of our ignorance, not our knowledge  But it is better than nothing

37 37 IQC NE Discoveries  Currently being written up for submission to IEEE Transactions on Software Engineering or JACM TUIT, round, quantity 1

38 38 Estimate of Unpredictable Problems  Multifactor cost model gives estimates of cost of unpredictable problems within factor of 2  Bulk estimates can be refined through detailed analysis of stratified sample of code $

39 39 Compaq Upgrade/Migration Services  Services local through PS or remote through IQC: –Turnkey migration –Co-development migration –Project management  Remote through IQC NE: –Architectural assistance –Oracular assistance retainer (question line)

40 40 Migration Process

41 41 Migration Process Overview Migration Workshop Migration Assessment Application/System Migration Test Deploy Migration Conference Call Contact Compaq

42 42 Preparing for Migration  Change = disruption = risk  Lessen risk by migrating in stages or steps  Each stage proves concepts and provides process  Small changes to avoid chaos  The system supports the business at all stages of the process

43 43 Requirements and Goals  Business –Business functions and processes –When migration must be complete –Maximum migration investment and expense  Environment –Operating systems –Third party products –Other applications –External interfaces

44 44 Preparation Strategy  Identify: –critical functions –type, technique, phasing –in-house expertise –timeframe, budget, and resources –application environment –related business process –supporting batch processes

45 45 Identify Migration Techniques  Find which technique is best suited for this migration  Affects immediate investment and risks, long-term costs, and the next migration

46 46 Plan Risk Management  Risk identification  Risk evasion tactics  Event detection triggers –Process metrics  Event recovery


Download ppt "Compaq Enterprise Technical Symposium 2001 Application Migration Necessity, Concepts, and Techniques Brian Hetrick SAIE (Systems Application Integration."

Similar presentations

Ads by Google