Which Apps Should You Move?
Which, if any, applications should you leave in VB 6, VB5, or VB4? Consultants generally agree that certain applications are better left untouched. Howard Lerman, CEO and founder of Microsoft partner Intwine, said the following during an interview:
"If an application is functioning correctly and meeting your needs, it might make more sense not to migrate, unless you plan to add new features that support the .NET framework. The main risk is that Microsoft will be ending VB6 support. This just means that if there's a problem in the future, it might be more difficult to fix."
In Lerman's opinion, the most important new features in VB.NET include ASP.NET, XML Web Services, and Zero Touch Deployment.
"These are all mostly for the benefit of developers, anyway. ASP.NET, for example, takes a tremendous leap forward in allowing Web developers to make applications more quickly."
If you do plan to take advantage of new .NET features, it's much faster to migrate an existing VB application than to re-create the application from scratch, according to ArtinSoft Chief of Operations (COO) Federico Zoufaly (ArtinSoft created VB.NET's Upgrade Wizard for Microsoft). "It's always less effort to migrate to VB.NET, although it is not just a 'click and go,'" Zoufaly said in another interview. As a real-world example, the ArtinSoft COO pointed to a large bank that decided to migrate 1.3 million lines of code from VB6 to VB.NET.
"It took 10 developers four to five months to redeploy the code on VB.NET, for a total of about 40 man months. In comparison, it took the bank 400 man months to build the original code in VB6."
Zoufaly recommended running Code Advisor first, followed by Upgrade Wizard. "Then you just have to deal manually with whatever is leftand that will depend entirely on the application," he said. Typically, manual coding is required in situations where you want to refactor applications to use .NET features instead of unsupported VB6 technologies. These issues might crop up in applications that use RDO/ADO data binding or VB6 graphics, for example.
However, developers should also be aware that Upgrade Wizard is geared mostly to business applications, according to Zoufaly. "If you're a games developer, for instance, then your results might be rather poor," he acknowledged.
Microsoft's support for VB6 is already dropping off precipitously. Over the next few years, less and less help will be available. So now is a good time to take a good, hard look at all those VB6 legacy applications and to start deciding what to do about them.