 |







|
How can we help you? |
|
Professionals at ELLKAY specialize in
migrating ASP and Visual Basic applications to .NET. We can migrate
to the .NET language of your choice whether it is Visual Basic .NET
or C#. If you choose C#, there is no rewrite necessary as we have
built all the tools to convert Visual Basic .NET applications to C#.
We will work with your team, create a plan for migration, provide
direction, support, and help your team with migrating your
applications successfully.
Email: LiorH@ELLKAY.com |
|

|
Migrating
applications from Visual Basic 6.0 to .NET
You have probably learned by now that
all prior versions, including Visual Basic 6.0 are totally different
than Visual Basic .NET. Until now, you probably read about all the nice things that .NET
Framework has to offer such as visual
inheritance, method overloading, exception management using
try-catch-finally etc. If you are in a position where you have an
existing Visual Basic 6 .0 or ASP solution under your belt, you are
probably feeling, this is not such a good thing.
The first thing that you need to ask is, “Do I need to move my
application to .NET?”
There is always going to be something new around the corner
whether it is a new language or tool, and the person making the
decision to migrate has to think ROI. If you have a solution that is
already working, and your clients are happy using and working with
the existing solutions, there is probably no reason for you to move
into .NET. Visual Basic 6.0 is still a good product and currently
Microsoft is going to continue support for it. However, if you wish
to keep your solution as the latest and greatest, and it is in the
best interest of your company and clients, you probably would want
to migrate your applications to .NET.
The Strategy
When we start developing any new software solution, certain
steps are taken. We begin with a plan, identify processes, gather
requirements, and eventually build the architecture of the solution.
Once things start taking shape, we start with development. Why do we
choose this path? We all know that the path for doing the analysis
and design up front has been proven to save a lot of time and cost
for software development. In order to migrate projects from any
prior version of Visual Basic, the path for analysis and design up
front yields the best results.
The analysis part is slightly different in this case. We begin
by studying the current application, and try to identify code blocks
that require changes. In order to migrate your VB applications, we
do not choose the path most recommended by others, i.e. convert your
existing applications to .NET and fix the converted code in .NET.
We believe that even if your developers have been working with
.NET for the past six months or even a year, they probably have
spent much more development time on your existing applications. They
would be more comfortable and much faster making changes in your
existing application than the migrated .NET application. We
recommend making changes in your existing applications and getting
them to a stage that we call “Migration Ready”.
Here are the steps that we recommend for migrating applications:
1. Evaluate the project and create a migration strategy
2. Make the changes in VB 6.0 project and create a “Migration
Strategy”
3. Migrate using Visual Basic .NET Migration tool
4. If the changes are not at par, make more changes and use
Migration tool (Repeat 2 and 3 as necessary)
5. Get developers at speed and make changes in .NET
6. Build the .NET solution
The migration path we have always chosen to help our clients
begins with implementing a proof-of-concept first. This help us
estimate resources, and estimate the time and cost to migrate
the project. We recommend extracting at least one complex
working process of the application and build it into a small
working solution. Then, we attempt to migrate this solution
first. This could be a couple of forms with a report.
Figure 1: Migration Strategy recommended by ELLKAY
for ASP or Visual Basic 6.0 applications to Visual Basic .NET or C#
Attempt to migrate this solution using the recommended steps. Repeating
steps 3 and 4 will help you get an idea about the complexity involved.
Once you have succeeded in implementing the proof of concept, only then
should you start with the real application.
Which Language?
Companies spend a lot more time on this question than they should. Which
language should be used? Should it be VB .NET or C#? Our opinion is that
it really does not matter. Most of the functionality between the two
languages maps one-to-one and each one has a slight advantage over the
other. I would recommend that you base this decision on the resources
you have available. If you have developers who have been working with VB
6 and you are planning to go into .NET now, I would recommend VB .NET.
If you have developers who have already spent a lot of time learning C#,
pick C#.
If you choose to move to C#, remember that you do not have to re-write
your applications. We provide a converter that can help you convert your
Visual Basic .NET applications to C#.

Figure 2: Converting a Visual Basic .NET solution
to a C# solution is as simple as running in through the migration
converter utility
Conclusion
None of the migration strategies we have read have talked about this
approach. Of everything that you have read so far, you will probably see
that the strategy that we chose and implemented for migration is
different. It is more practical, efficient, and useful. We have been
very successful in implementing this strategy for our clients. If you
wish to migrate your projects to .NET, we recommend that you start with
VB6 version and not with .NET. If the right approach is not taken,
migration can become a nightmare.
The approach that we recommend requires patience and you need to resist
yourself and your developers from into jumping into the .NET bandwagon
right away. The fruits however, will be much sweeter:… successfully
migrated solution!

About the Author
Kamal Patel is a Microsoft Most Valuable Professional (MVP) and works as
a Solution Architect at ELLKAY (http://www.ELLKAY.com). Kamal is a
frequent speaker at the XML Connections conference and he also speaks at
NY and NJ user groups. He has written various articles, has a degree in
Computer Science, and has been a Microsoft Certified Solution Developer
(MCSD) since 1998. You can reach Kamal at
KamalP@ELLKAY.com.
|
 |
 |