A Presentation to  Central Ohio Application Lifecycle Management Group July 1, 2010 Mark Juras Great Migrations LLC [email_address] Software Modernization
Top 3 Modernization Challenges Containing maintenance costs Integrating/consolidating systems Adapting to changing technology
Platform   Change People  Products  Process  Pain
Business Case for Migration If its not broken ...  So what? It Will Be!
History of Windows Development
VB6 and ASP are Dead
BIG PROBLEM: VB/ASP Migration Market Gartner Group Research Rewrite = 60% of  original development cost VB6 Conversion Market =  $14 Billion Forrester Research “ Migration of VB code is still a large market   opportunity -- and the  URGENCY  is growing” Over  1.2 million  U.S. firms still using VB6
Case Study: BMS Financial Services BMW Financial Services Large, business-critical VB6 application portfolio 1.2M lines of VB6 400 person-years of accumulated development Strategic policy: avoid unsupported technology Targeting C#.NET with  extensive reengineering Saved as much as $8M (70%),  finished on schedule, under budget and with no impact on other IT commitments. "We knew that taking our business critical systems through such a huge transformation would be challenging.  We needed an approach that not only minimized cost and ensured quality but would insulate our business from disruption.  We built new architecture frameworks as a part of the project, and the GreatMigrations translation tools were an essential part of our strategy. These tools, tuned by GreatMigrations to our specifications, have given us the planning flexibility we needed to incorporate the migration into our release process.  To this point, we have migrated about 50% of our portfolio, with few of our business users even knowing we were doing it. We are on schedule and on budget to complete the migration by March 2008." Jeff Haskett,  General Manager  Application Development BMW Group Financial Services
Great Migrations Methodology The Tool-Assisted Rewrite Agile  Iterative  Balanced  Repeatable  Measureable  Improvable
Great Migrations Methodology
Comparing “Rewrite” Methodologies From-Scratch vs. Tool-Assisted Definition / Objectives Requirements Developer Training Design Construction Deployment Testing User Training
Comparing “Rewrite” Methodologies From-Scratch vs. Tool-Assisted RISK COST/VALUE DISRUPTION QUALITY TIME TO MARKET
The Solution Replace Rewrite Migrate Reuse = Cash in legacy investments Technical Quality Low High Business Value Generic Custom
Thank You! Software Modernization

Software Modernization

  • 1.
    A Presentation to Central Ohio Application Lifecycle Management Group July 1, 2010 Mark Juras Great Migrations LLC [email_address] Software Modernization
  • 2.
    Top 3 ModernizationChallenges Containing maintenance costs Integrating/consolidating systems Adapting to changing technology
  • 3.
    Platform Change People Products Process Pain
  • 4.
    Business Case forMigration If its not broken ... So what? It Will Be!
  • 5.
    History of WindowsDevelopment
  • 6.
    VB6 and ASPare Dead
  • 7.
    BIG PROBLEM: VB/ASPMigration Market Gartner Group Research Rewrite = 60% of original development cost VB6 Conversion Market = $14 Billion Forrester Research “ Migration of VB code is still a large market opportunity -- and the URGENCY is growing” Over 1.2 million U.S. firms still using VB6
  • 8.
    Case Study: BMSFinancial Services BMW Financial Services Large, business-critical VB6 application portfolio 1.2M lines of VB6 400 person-years of accumulated development Strategic policy: avoid unsupported technology Targeting C#.NET with extensive reengineering Saved as much as $8M (70%), finished on schedule, under budget and with no impact on other IT commitments. "We knew that taking our business critical systems through such a huge transformation would be challenging. We needed an approach that not only minimized cost and ensured quality but would insulate our business from disruption. We built new architecture frameworks as a part of the project, and the GreatMigrations translation tools were an essential part of our strategy. These tools, tuned by GreatMigrations to our specifications, have given us the planning flexibility we needed to incorporate the migration into our release process. To this point, we have migrated about 50% of our portfolio, with few of our business users even knowing we were doing it. We are on schedule and on budget to complete the migration by March 2008." Jeff Haskett, General Manager Application Development BMW Group Financial Services
  • 9.
    Great Migrations MethodologyThe Tool-Assisted Rewrite Agile Iterative Balanced Repeatable Measureable Improvable
  • 10.
  • 11.
    Comparing “Rewrite” MethodologiesFrom-Scratch vs. Tool-Assisted Definition / Objectives Requirements Developer Training Design Construction Deployment Testing User Training
  • 12.
    Comparing “Rewrite” MethodologiesFrom-Scratch vs. Tool-Assisted RISK COST/VALUE DISRUPTION QUALITY TIME TO MARKET
  • 13.
    The Solution ReplaceRewrite Migrate Reuse = Cash in legacy investments Technical Quality Low High Business Value Generic Custom
  • 14.
    Thank You! SoftwareModernization

Editor's Notes

  • #4 Why is platform change so hard? People Products Process Pain – reduced agility
  • #5 The Business Case for a Migration The business case for a migration is predicated on two things: the migration will allow you to take advantage of capabilities of the new platform, and the migrate will give you access to the community and vendor support for the new platform. We will assume the new platform measurably out performs the legacy platform in terms of capability and support, but your mileage will vary according to your specific business needs and the value you place on community support, including the supply of skilled developers. Most often, the reality of platform change is that you just have to migrate. The only question is how to do it – in a timely and cost effective fashion. Benefits of .NET Adoption People : Access to a larger, more skilled and enthusiastic IT professionals Products : Access to next generation commercial and open source solutions boost innovation Process : Access to next generation IT tools and techniques boost efficiency Profits : Improved system effectiveness through IT agility Risks of VB6 Stagnation People: Staffing challenges, reluctant professionals, higher recruiting and staffing costs Products: Lost vendor and community support Process: Increasing costs, increasing risks, and eventual crisis Pain: Technical Risk and Business Risk
  • #6 Key Dates 1990s: Rise of Classic VB (peak 3M developers) 1998: Last major release of Classic VB 2002: Microsoft releases .NET 2005: End of mainstream VB support 2008: End of extended VB support 2010: .Win7, NET 4.0, Visual Studio 2010 2015: The Future without Classic VB
  • #7 Last major release of these languages was in 1998 (Visual Studio 6). People: Staffing challenges, higher recruiting and staffing costs Products: Lost vendor and community support; inability to integrate Process: Increasing costs, increasing risks, and eventual crisis Pain: Security Vulnerability, Incompatibilities, System Failures, Business Disruption Where are you in grieving process? Denial? Anger? Bargaining? Depression? Acceptance?
  • #8 How big is this market. Driver, Mark. Visual Basic 6: Setting End-of-Life Migration Priorities. G001 52272. Gartner. 14 Dec.2007. Driver, Mark, R. Valdes. A Cost Model For .NET Conversion. COM-16-1385. Gartner. 2 Jun.2002. R. Valdes, M. Driver. .NET Migration: Easier Said Than Done DF-18-2477 Gartner. 17 Sep.2002 Jeffrey Hammond, Forrester Research, Migration Market Analysis Report , April 2010
  • #9 What is a Migration Project? An example of a migration project would be to begin with an application written in Visual Basic (using various COM libraries) and replace it with a similar application written in C# (using the .NET framework). The distinguishing assumptions of a typical migration project are listed below: You have a reason and ideally a clear business case to migrate your legacy system to the new platform. You have to make architectural improvements as you migrate to the new platform. You are actively maintaining your legacy codebase. You want to migrate without breaking the legacy functionality You want the new system to be more maintainable than the legacy system. You want to migrate efficiently, with minimal disruption to the users of the system and other ongoing work. Jeff Haskett, General Manager, Application Development Group, BMW FS BMW Financial Services of North America (Nov 2007) 5550 Britton Parkway Hilliard, OH 43026 (614) 718-6901 "We knew that taking our business critical systems through such a huge transformation would be challenging. We needed an approach that not only minimized cost and ensured quality but would insulate our business from disruption. We built new architecture frameworks as a part of the project, and the Promula translation tools were an essential part of our strategy. These tools, tuned by Promula to our specifications, have given us the planning flexibility we needed to incorporate the migration into our release process. To this point, we have migrated about 50% of our portfolio, with few of our business users even knowing we were doing it. We are on schedule and on budget to complete the migration by March 2008."
  • #10 Purpose of this Slide Explain how we take advantage of gmBasic’s flexibility to tune the translation and ensure an efficient migration to the desired target. Preparation : organizing the source codebase, defining migration requirements. Translation : converting the source codebase to the target codebase Verification : inspecting the target codebase for functional an architectural quality Cut Over : taking the target codebase through final testing and deployment to production Key Points Iterative Process Tune as much as makes sense Cutover and migrate when you are ready and you have a plan for resolving any open issues
  • #11 Purpose of this Slide Explain how we take advantage of gmBasic’s flexibility to tune the translation and ensure an efficient migration to the desired target. Preparation : organizing the source codebase, defining migration requirements. Translation : converting the source codebase to the target codebase Verification : inspecting the target codebase for functional an architectural quality Cut Over : taking the target codebase through final testing and deployment to production Key Points Iterative Process Tune as much as makes sense Cutover and migrate when you are ready and you have a plan for resolving any open issues
  • #14 We have specific capabilities that address each of these scenarios.