Home Solutions VB 6 to .Net Migration Framework

VB6 to .Net Migration Framework

Any legacy modernization effort has to go through commonly identified phases before the actual migration effort begins – Understanding the current application landscape, considering solution options and the constraints the solution must meet, deciding on the best-fit solution, and choosing the right strategy for such a migration. The actual modernization process requires planning and preparation, followed by solution implementation, leading to a completed migration project.

Modernization Process

Before .Net arrived on the scene, VB6 provided the best platform available to develop many in-house and commercial applications under its Rapid Application Development features. These applications followed a client-server model and provided a very convenient way to develop multi-user applications.

The dilemmas

Why Migrate?

  • Doing nothing has its own costs.
  • Applications will outgrow in functionality, and will need to scale.
  • Microsoft has stopped supporting this platform and intends to promote future development platforms on its .Net platform.
  • With time, knowledgeable resources will be hard to find, and where found, will be expensive.
  • With time, your applications may stop being compatible with the underlying hardware and operating systems
  • More the delay in migration, higher will be the attached costs of maintenance and support.

Which target platform should I move to?

VB6 applications were usually windows-based, client-server applications. The choice of the target platform will depend on answers to these and other questions:

  • What business benefits will the new application provide?
  • What will be my non functional needs like Scalability, Maintainability, etc.?
  • Do I want new, enhanced features or am I happy with the existing functionality?
  • Is there any COTS application that will meet my needs? Do I really need to invest in development?

How would I move?

Choosing a correct migration approach goes a long way towards successful migration.

  • Vanilla Migration: If you are happy with the application just as it is, and would like to retain the look and feel, and consequently save on user training costs, you could evaluate vanilla migration. Here the application moves exactly as is to the new platform. This approach includes building a functional equivalent on the new platform. This type of migration is usually tool based, and provides no or minimal leverage of newer features.
  • Re-engineering: Re-engineer the entire solution from ground zero, if you have high scalability needs, or the scope of the application changes to the extent that the new application is expected to have highly enhanced functionality features. e.g. you want to move from a windows based application to a SaaS model.
  • COM Wrapper: This would be your choice if you had previous executables or Dynamic link libraries whose source code is no more available. You can build a wrapper around these objects and use them in your .Net application
  • Re-factoring: Slowly start re-factoring code to make it compatible with the old and new platforms. Over time, the entire application will have moved.

Real life approach usually includes following a combination of one or more of the above. E.g. for a critical application, you would first choose vanilla migration, bring it to a steady state in the new platform, and then enhance its functionality as you go along, by re-factoring. Other times, the most preferred approach would be to Re-engineer.

Synoverge Migration Framework

Synoverge has a comprehensive migration framework composing of multiple tools like knowledge-based decision making tools, alliances with major migration tool vendors, reusable components, tools and templates, deployment tool kits for implementation etc. that aid critical decision making and other processes.

Refer to the diagram below for our tools and the contribution they make to the common migration process.

VB6 Application

This framework has been built by collating our years of experience and in-depth knowledge following umpteen “hands-on” migration experiences. This framework addresses the following challenges or concerns of a migration initiative:

Business Concerns:

  • Leverage existing investment of clients and optimize on new investment.
  • Clear visibility of the migration activities at any point of time.
  • Transition plan to switch without creating any operational gaps.

Technical Challenges:

  • Suggest the best suited road map for migration through well designed and tested decision tools.
  • Mapping the business objectives and priorities to the migration activities and plan.
  • Retrofitting challenges – as there are expected continuous updates to the applications being migrated, this is taken care of by a well defined process that has a base line and subsequent change management process.
  • To ensure that the project milestones and time-lines are met by following project monitoring mechanisms, this includes stringent communication and reviews.

With Synoverge, clients are assured of transparency, process and delivery excellence, and innovative approaches to the challenges they will face in such modernization efforts.