A while ago I wrote about the decision that many people face when
starting to consider a migration from Visual Basic 6.0 to the .NET
platform: choosing the target language, mainly between VB.NET and C#. Today I found a great post by John Fuex
on that subject, not inciting the war between both trenches but instead
describing the process he and his company went through to solve the C# versus .NET dilemma.
He basically used the following criteria to qualify each language:
Functionality, Learning Curve, Existing Code, Developer Preferences,
“Street Cred” (for both the developers and products), and Recruiting.
But in the end it reinforces the notion that there’s not a standard
solution, so the selection should always be made case by case.
You can read the whole post here.
There are still many myths out there surrounding software migrations. Through all the years we have found not only that many people still ignore that there are automatic migration tools available, but some believe that automation is just more trouble than it’s worth, and that, besides, it is just plain better to start from scratch. To concur with this idea is, for starters, to simply devalue all of the effort and thought that was put into developing the application, therefore willing to risk years of business knowledge embedded in these systems.
In any case, the truth is that a rewrite from scratch implies a much more difficult task, but due to these misconceptions, valuable resources are wasted in projects that sometimes just never get to see a successful ending. There’s no doubt that any software renewal project isn’t a simple, overnight task, but a well-planned automated migration can make the process comparatively painless. So once you learn about the availability of advanced migration technologies that allow generating code of a superior quality, with a much lower project cost, time and risk, you will definitely agree that using automated migration tools as part of an overall software renewal initiative is the most viable way to leverage the current investment in legacy applications and move them to the latest platforms.
With that in mind I just wrote a white paper highlighting the main myth-debunking reasons why an automatic migration is a far better software modernization approach than a manual rewrite, based not only on ArtinSoft’s own experience in migration projects but on all the customer and industry analyst feedback and evidence gathered over the years.
So click on the link and read or download for free the “5 myth-busting reasons for choosing an automatic migration vs. a manual rewrite” white paper.
Last month we delivered a webcast around the different options to get applications originally
developed in Microsoft Visual Basic 6.0 running on the Windows 7 operating
system. It also covered some of the business reasons for getting applications to
work with Windows 7 and the benefits provided by that operating system and the
.NET Framework. We did this with Microsoft Latinamerica, so it was in Spanish, but many people asked for an English version of the presentation. Hence, we partnered again with Microsoft to develop a similar webcast entitled “Visual Basic 6 and Windows 7: Alternatives for Application
Compatibility”, scheduled for Thursday, October 15, 2009 1:00 PM Pacific Time. This live
event is part of Microsoft’s “Momentum” initiative, which is designed for growing
and mid-sized organizations and provides expert advice, tips, and techniques to
align IT with your strategy and drive your business forward.
Register
for this free VB6 / Windows 7 compatibility webcast
Recently, one of customers in the UK, an
Independent Software Vendor with headquarters in Bristol, told us that they managed
to save about 14 man/months by using ArtinSoft’s VB
to .NET tool to migrate their flagship application, comprised by 59
VB6 projects and a total of more than 550,000 lines of code.
We are talking about a
critical, comprehensive processing platform used by insurers, managing agents,
third party administrators and business process outsourcers, with installations
in the UK, Ireland, USA, Middle East, Far East, China and Africa, and Activus
really needed to ensure compliance for these customers in the international
health insurance sector.
There were definitely
some time constraints, plus the value and complexity of the business logic
embedded in the application didn’t favor a manual rewrite. So they licensed the
Visual Basic Upgrade Companion and performed
the migration in-house, and managed to maintain the current application’s
architecture while moving the visual controls to .NET native controls.
Additionally, coding patterns were consolidated, and data access models (ADO) were
upgraded to ADO.NET.
In the end, Activus not
only was able to cut down the migration time substantially, but the benefits of
the Visual Basic Upgrade Companion went beyond time and cost reductions: the
resulting code was far superior from the one generated by other migration
tools. As Chris Routleff-Jones, Solution Architect at Activus puts it: “We found the Visual Basic Upgrade Companion
to be a very powerful, easy to use migration product. Not only did it speed up
the conversion process, allowing us to save time and money, but we ended up
with high quality, 100% native .NET code. In fact, we were particularly
impressed by the VBUC’s ability to analyze the code and detect patterns that
are upgraded to .NET-like, native structures, making the output fully readable
and maintainable”.
Read
the complete Activus VB to .NET migration case study
Using ArtinSoft’s
powerful VB to .NET migration tool to convert their 3,000,000 lines of code
Sistema Professionista to VB.NET, Wolters Kluwer Italia saved 2 years of work,
while increasing developer productivity and ensuring continued application evolution.
Based in Milan, Italy,
IPSOA is part of Wolters Kluwer, a leading global information services and
publishing company. Their Accounting/Fiscal client/server system was a suite of
applications developed in Microsoft Visual Basic 6.0 that required deployment
on a per-customer basis, using an installer for each workstation. IPSOA
required a more sophisticated deployment approach for its thousands of clients,
plus ensuring continued support from Microsoft and application evolution while
maintaining the current architecture, so they licensed ArtinSoft’s Visual Basic Upgrade
Companion to migrate the flagship application to VB.NET. ArtinSoft’s VB to .NET migration product was
able to comply with very explicit requirements, like using COM Interoperability
to interact with the libraries and controls used in the original system,
mapping of the Datafield property of some controls to a new generated class,
precise solutions for the conversion of the Recordset Source Property, While
statement, Redim and Control Arrays, and implementing support for additional
third-party controls
Through a phased
upgrade approach recommended by ArtinSoft, the customer was able to reduce even
further the risk and amount of allocated resources on the migration project,
while keeping in parallel the development and maintenance of the VB 6.0 code.
Overall, the migration to the .NET platform will strengthen the technological
advantage over competing products and will open the possibilities for quick
application enhancement, with highly increased developer productivity.
As Roberto Fusè, lead resource at IPSOA for the VB migration project said, “ArtinSoft is a qualified company that has
made of the intelligent automation one of its prerogatives of core business. By
using the Visual Basic Upgrade Companion, IPSOA was able to save 2 years of
work, receiving from ArtinSoft’s the support necessary to customize the tool, which
allowed the evolution of the product using the features of Microsoft’s .NET
Framework and the new development tools”.
Read
the complete Wolters Kluwer Italia VB to .NET migration case study.
We
have partnered with Microsoft to deliver another VB6 to .NET migration webcast
next Tuesday, August 04, 2009 at 11:00 AM Pacific Time (US & Canada). Presented
by Esteban Brenes, Migration Specialist at ArtinSoft,
this 1-hour live presentation addresses concerns about the termination of all
development support for Visual Basic 6 and other business and technical
drivers, providing a detailed explanation on how to move ahead while preserving
the capital invested in applications in the most cost-effective way.
Register now for this free VB migration webcast
We’ve just released a new VB6
and ASP Assessment Tool, which analyzes Visual Basic 6.0 and ASP projects in
order to obtain an inventory of the code, components and their relationships. It
generates a group of HTML and Excel reports that can be used as the basis for
further calculations related to the effort and cost of converting the application
to Visual Basic .NET, C#, and ASP.NET. The tool is free to download,
very simple to install and run, and
you can use the results to obtain a quick
ballpark for a turn-key project performed by ArtinSoft or find out how
much will a license of our Visual Basic Upgrade Companion will cost (use the number of code plus design lines in
both cases).
A while ago, I blogged on the benefits of migrating from VB to .NET,
based on an analysis that one of our customers did before engaging in the
upgrade process. They had about 124
applications, for a total of more than 5
million lines of VB6 and ASP code that needed to be migrated to C# and ASP.NET to comply with corporate policies, while
they expected more than US$40M of accumulated benefits in 5 years as a result
of this investment.
Well, the migration was completed some time ago, and they’ve
been including several other applications during the process, and we’ve just
released the case study for the original
engagement. The customer is Banamex, a
leading Mexican bank, part of Citigroup, and the project implied an
unparalleled methodology for collaboration between customer and provider teams,
taking into account that Citigroup’s information security policies required to
establish an appropriate mechanism for protection of sensitive data. Not to mention
extremely tight deadlines!
The business logic and functionality had to remain intact, and dependencies
with non-authorized providers, like proprietary runtimes, were just out of the
question, and using ArtinSoft’s
Visual Basic Upgrade Companion allowed reaching 100%
functional equivalence on time and on budget. You can read the complete Banamex/Citigroup case study
here.
We’ve just released a new case study
that shows how one of our customers saved lots of time and money by using our Visual Basic Upgrade Companion tool
to migrate its flagship application from VB to .NET. Based in South Africa, MDA Property Systems provides software solutions to the real state
sector. Its MDA Property Manager application is a comprehensive package for
rent collection, lease management, facilities management, integrated property
accounting and asset management, employed by more than 1800 users across 250
companies. With more than 600,000 lines
of VB6 code it encapsulated decades of business knowledge, so MDA licensed
our tool to perform the conversion to VB.NET with minimal risk and using their
own internal resources, after discarding a manual rewrite and the Upgrade
Wizard
Also, it was very important for MDA to use the newest
technology instead of just being able to run Visual Basic 6 style code inside
the .NET Environment, and using ArtinSoft’s Visual Basic Upgrade Companion
guaranteed that they will be getting native
.NET code, without any ties to third-party runtimes. RDO was transformed to
ADO.NET, third party controls were converted to native .Net controls, Component
One’s True DB grid was upgraded to the latest version of that component, and
coding standards that were common place when developing in Visual Basic 6.0
were also migrated to equivalents in VB.NET. It allowed MDA to save on valuable
resources: total savings for this
project were more than 3 years of development time and US$300,000, and they
are now ready to start taking advantage of compelling new features that will
extend the technological life of its product.
Read the complete MDA case study here
Starting tomorrow January 27th we will be
engaging with Microsoft on a campaign aimed
towards helping companies and developers in the UK move their Visual Basic 6.0
applications to the .NET platform. This is not the first time we provide
migration solutions in that territory,
since we have lots of customers
there already (you can read some of our case studies and references here), but this is the first occasion
we join forces on a massive scale effort locally with 2 of our major partners:
Microsoft and Avanade. ArtinSoft will be providing tools, resources and
guidance, along with limited-time offers during this campaign. For example, we’ll
have a 10% discount on licenses of our Visual
Basic Upgrade Companion for the enterprise level, while launching the Visual
Basic Upgrade Companion Developer Edition at a special introductory price
of only £199. For those who require a turn-key solution, we have also partnered
with Avanade to deliver the most
comprehensive, cost-effective Visual Basic 6.0 to .NET migration solution. So
if you are based in the UK and still have Visual Basic 6.0 investments that
need to be leveraged, click here to learn
more about this campaign, and contact us as soon as possible to take advantage
of this unique opportunity.
If you are familiar with VB to .NET migration projects, you
certainly know by now that this is not a trivial task. And with the state of
the economy today, saving up on scarce, valuable resources is a must. That’s
when an automated software migration solution proves to be the most viable
approach, constituting the most cost-effective, non-disruptive method of application
renewal.
I recently read an excellent article in ASP.NET PRO magazine, where Alvin Bruney offered some
insight on the challenges of migrating VB6 applications, providing some
estimation on the overall effort. For starters, he accurately notes how a large
part of the cost in these projects is related to the QA process, something
we’ve definitely seen in large, complex enterprise application upgrades, as it
usually represents around 50% of the total time.
He then provides some numbers regarding the cost for VB to
.NET migration projects: $1/LOC for simple applications, $3-$7/LOC for large
enterprise systems, and $10-$15/LOC for the more complex ones. However, this
varies a lot from one project to another, depending not only on the complexity
of the application and target requirements, but also on the quality of the tools
and the skills available for the migration. For example, due to a proven
methodology, consultants with broad experience in VB to .NET migration projects
and powerful conversion tools, a turn-key solution delivered by ArtinSoft,
taking care of the complete migration up to functional equivalence in the
target language, is generally between $1-$2 per line of source code. This includes the Supplier Testing activities,
though not the User Acceptance Testing, where the customer finally certifies functional
equivalence through predefined test cases. And of course there are other
post-migration costs involved, like those related to the new application’s deployment
and enhancement, but I think it is safe to say that the cost per line of code
for the migration itself, on a turn-key basis, is rarely higher than $3.
Moreover, when
time to market is a critical factor, this automated migration solution just
can’t be beat. For example, a recent customer estimated that rewriting from
scratch his highly complex, business critical, 100,000+ LOC VB6 application
would take him up to 2.5 years, while using ArtinSoft’s comprehensive solution
allowed him to release the C# version in less than 6 months. And using only
about 1/17th of the resources required for a rewrite. Expect the
case study soon, but trust me: we’re not talking n00bies here ;-) And another
example I mentioned on my last post
described how a recent customer
cut down the project time in 1 year, representing savings of about $160,000.
On the other hand, calculating how much it will cost for someone who licenses
our Visual Basic Upgrade Companion to perform the migration in-house is more complicated,
since it depends greatly on his dexterity. But just to provide another example
of how much our solution reduces the effort, another customer with a 550,000
LOC application recently told us he managed to save 14 man/months by using ArtinSoft’s tool
internally, instead of the Upgrade Wizard that ships with Microsoft’s Visual
Studio.
In any case, as Bruney wrote on the aforementioned article “automation
is the key to containing cost”. But watch out for conversion tools that will
only cause you to waste your time and money. Some of our customers have tried
some of these options in parallel before choosing our tool, but a few were
lured instantly by the deceivingly low prices. Most of the latter have come to
us in the end, frustrated with the poor results.
By the way, the article says that “the migration tool takes
you to VB.NET only”. I assume the author is talking about the Upgrade Wizard,
since even a couple of the tools I referred to above convert to C#, but the Visual Basic Upgrade Companion is
the only one that allows migrating effectively to both VB.NET AND C#. Finally,
if you have settled for C# as the target language, I should warn you again
about the infamous double-jump approach, that is, converting from VB6 to VB.NET
and then to C# (the author mentions this option, though he doesn’t exactly
recommends it). We’ve seen a couple of customers who tried that and found it
really problematic, to say the least. In fact, they finally decided it was a
whole lot easier starting all over from VB6 and using our tool to move to C#
directly.
Today
Eric Nelson covered the
quasi-legendary legacy transformation options graph on his blog.
Taking into account the 4 basic alternatives for legacy renovation, that is, Replace, Rewrite, Reuse or Migrate,
this diagram shows the combination of 2 main factors that might lead to these
options: Application Quality and Business Value. As Declan Good
mentioned in his “Legacy
Transformation” white paper, Application Quality refers to “the suitability
of the legacy application in business and technical terms”, based on parameters
like effectiveness, functionality, stability of the embedded business rules,
stage in the development life cycle, etc. On the other hand, Business Value is
related to the level of customization, that is, if it’s a unique, non-standard
system or if there are suitable replacement packages available.
This
diagram represents the basic decision criteria, but there are other issues that
must be considered, specifically when evaluating VB to .NET upgrades. For
example, as Eric mentions in his blog post, a lot of manual rewrite projects
face so many problems that end up being abandoned. One of ArtinSoft’s recent
customers, HSI,
went for the automated migration approach after analyzing the implications of a
rewrite from scratch. They just couldn’t afford the time, cost and disruption involved. As Ryan Grady, owner of the
company in charge of this VB to .NET migration project for HSI puts it, “very quickly we realized that upgrading the
application gave us the ability to have something already and then just improve
each part of it as we moved forward. Without question, we would still be working
on it if we’d done it ourselves, saving us up to 12 months of development time
easily”. Those 12 months translated into a US$160,000 saving for HSI! (You
can read the complete case
study at ArtinSoft’s website.)
On
the other hand, for some companies reusing (i.e. wrapping) their VB6
applications to run on the .NET platform is simply not an option, no matter
where it falls in the aforementioned chart. For example, there are strict regulations in the Financial and
Insurance verticals that deem keeping critical applications in an environment
that’s no longer officially supported simply unacceptable. Besides, sometimes
there’s another drawback to this alternative: it adds more elements to be
maintained, two sets of data to be kept synchronized and requires for the
programmers to switch constantly between 2 different development environments.
Therefore,
an assessment of a software portfolio before deciding on a legacy transformation
method must take into account several factors that are particular to each case,
like available resources, budget, time to market, compliance with regulations,
and of course, the specific goals you want to achieve through this application
modernization project.
In the past, the concept of
business continuity was typically associated with a company's ability to
recover from natural disasters (fires, flooding, earthquakes, hurricanes). The
events of September 11th changed the paradigm, ending the somewhat
lax attitude towards business continuity planning and turning attention to
those threats having an element of human intent. Moreover, business continuity
planning began focusing not only on allowing an organization to continue
functioning after and during a disaster, but on reducing its impact, hence
minimizing the risk of extended disruptions.
Undeniably, the traditional
approach to business continuity requirements has shifted, driven by the demands
of globalization and high-tech society. It has grown out of the response and
recovery focus and into prevention strategies and techniques. Under this new
paradigm business continuity emphasizes on managing mission critical business assets
and processes to ensure continuous availability.
Business continuity planning is a
crucial part of an organization's overall risk management, and in a world where
information is power and technology is a decisive business enabler, every analysis
around contemporary threats with a potential of causing severe damage to the
organizational infrastructure leads to the assessment of operational risk linked
to information systems. This certainly recognizes the value of software
assets in today's business infrastructure, taking into account the fact
that significant investments in intellectual capital have usually been embedded
in the systems over the years, comprising the back-bone of many companies.
Therefore, a modern structured approach to managing uncertainty related to
threats encompasses all the necessary averting to ensure reliability, correct
functioning and scalability of business critical applications.
Modern organizations must secure their
continuity considering the increasing complexity and interconnection brought by
the reliance on technology to accomplish their goals. Those with business
critical applications will certainly realize the grave impact of system
malfunction upon business continuity, and the implications for stakeholders of
damage to the organization naturally deems it as unacceptable. Protecting the
financial health and stability of an organization is an essential issue for
management, and the high impact risk associated with vital software
applications make this area of business continuity planning highly relevant on
many companies.
Risk avoidance or reduction strategies linked to information assurance
have to deal with the applications'
security, performance and other technical capabilities, with development and
maintenance costs and support availability constituting critical issues to
consider. In fact, governmental entities and organizations in the power,
telecommunication, health, banking and financial industries are subject to
regulations that aim to protect public interest, including systemic failure
among its previsions to ensure information confidentiality, integrity,
authentication and availability.
But the concept of business
continuity is not limited to regulated public utility infrastructures only. Of
course, it's fairly obvious how some minutes of downtime can seriously affect a
large financial institution, but losing access to information systems has consequences
on any type of business. Business continuity is vital to business success, and in
today's interrelated world, practically every aspect of a company's operation
is vulnerable to fatal disruption. And the aforementioned value of software
assets applies to any type of organization, making it an objectionable
operational risk to maintain exposed, unsupported critical applications that
may not run properly. And modernizing them through non-disruptive methods like automated software migration
effectively contains the issues.
... in fact, a very common question we hear out there when people begin
considering upgrading from VB to .NET: “should I migrate my Visual Basic 6.0
applications to VB.NET or C#?”
Well, Google on the subject and this seems to be an endless
discussion, but let’s start by saying that Microsoft is entirely compromised
with the future of both languages, and they have done great efforts to ensure
that both VB.NET and C# provide the full-power of the .NET Framework. This was
clearly stated during the last TechEd, where I went to both the “Meet the VB
Team” and “Meet the C# Team” sessions. They talked about the future of both
languages, and made clear that there are no riffs between the teams. They even
have Tuesday dinner nights and work together when looking for common solutions.
In fact there are several people working on both teams. Of course, each team
has invested in different features, but this only result in advantages to
developers, providing a better opportunity to opt for the language that better
fits each particular job.
The truth is both VB.NET and C# are first-class citizens on the Common
Language Runtime (CLR) with equal access to the same framework features. So in
the end the decision should be based on your specific needs, that is, your
available resources and customer demands if we are talking about business
applications. For example, if most of your developers have been working with VB
6.0 they will probably feel more comfortable with VB.NET. On the other hand, if
you have a Java or C++ code base coexisting with your VB applications, it might
be better to migrate your VB6 systems to C#, a language that is more
comfortable for programmers exposed to some other object oriented languages due
to its syntax, constructions and usability. However, the real work on a VB6 to
.NET migration is dealing with the Framework and moving your mental model from
COM to .NET, so the transition is not just about syntax and semantics issues.
By the way, we’ve seen a few people suggesting a double path
approach for those who chose to migrate their VB6 applications to C#. This idea
mostly comes from those who offer a solution that only converts to VB.NET, and
they even say it’s irrational to think about jumping from VB6 to any .NET
language other than VB.NET. Well, the immense set of differences between VB6
and C# or VB.NET are accurately resolved by ArtinSoft’s Visual Basic Upgrade
Companion tool, and about half of our customers can tell those unbelievers better.
You’ll find detailed info about that here.
It’s well known that financial institutions are under a lot
of pressure to replace their core legacy systems, and here at ArtinSoft we’ve seen an increased interest
from this industry towards our migration services and products, specially our Visual Basic Upgrade
Companion tool and our VB to
.NET upgrade services. In fact,
during the last year or so we’ve helped lots of these institutions move their
business critical applications to newer platforms, accounting for millions of
lines of code successfully migrated at low risk, cost and time.
Margin pressures and shrinking IT budgets have always been a
considerable factor for this sector, with financial institutions constantly
looking for a way to produce more with less. Some studies show that most of
them allocate around 80% of their budgets maintaining their current IT
infrastructure, much of which comprised by legacy applications.
Competition has also acted as another driver for legacy
modernization, with organizations actively looking for a competitive advantage
in a globalized world. Legacy applications, like other intangible assets, are
hard to emulate by competitors, so they represent key differentiators and a source
of competitive advantage. Typically, significant investments in intellectual
capital have been implanted in the legacy systems over the years (information
about services, customers, operations, processes, etc.), constituting the
back-bone of many companies.
In the past, they approached modernization in an incremental
way, but recent compliance and security developments have drastically impacted
financial institutions. In order to comply with new regulations, they are
forced to quickly upgrade their valuable legacy
software assets. Industry analysts estimate that between 20-30% of a bank's
base budget is spent on compliance demands, so they are urgently seeking for
ways to reduce this cost so that they can invest in more strategic projects.
However, many institutions manually rewrite their legacy
applications, a disruptive method that consumes a lot of resources, and normally
causes loss of business knowledge embedded in these systems. Hence the pain and
mixed results that Bank Technology News’ Editor in Chief, Holly Sraeel,
describes on her article “From
Pain to Gain With Core Banking Swap Outs”. “Most players concede that such
a move (core banking replacement) is desirable and considered more strategic
today than in years past. So why don’t more banks take up the cause? It’s still
a painful—and expensive—process, with no guarantees”, she notes. “The
replacement of such a system (…) represents the most complex, risky and
expensive IT project an institution can undertake. Still, the payoff can far
exceed the risks associated with replacement projects, particularly if one
factors in the greater efficiency, access to information and ability to add
applications.”
That’s when the concept of a proven automated legacy
migration solution emerges as the most viable and cost-effective path towards
compliance, preserving the business knowledge present in these assets, enhancing
their functionality afterwards, and avoiding the technological obsolescence
dead-end trap. Even more when this is no longer optional due to today’s tighter
regulations. As Logica’s William Morgan clearly states on the interview
I mentioned on my previous post,
“compliance regimes in Financial Services can often dictate it an unacceptable
operational risk to run critical applications on unsupported software”.
“These applications are becoming a real risk and some are
increasingly costly to maintain. Regulators are uncomfortable about
unsupported critical applications. Migrating into the .NET platform, either to VB.NET
or C# contains the issue. Clients are keen to move to new technologies in the
simplest and most cost effective way so that their teams can quickly focus on
developments in newer technologies and build teams with up to date skills”, he
ads, referring specifically to VB6 to .NET migrations.
So, as I mentioned before, ArtinSoft has a lot of experience in large
scale critical migration projects, and in the last year we’ve provided
compliance relief for the financial sector. With advanced automated migration
tools you can license, or expert consulting services and a growing partner
network through which you can outsource the whole project on a fixed time and
cost basis, we can definitely help you move your core systems to the latest
platforms.
Today Eric Nelson posted on one of his blogs a short interview
with Roberto Leiton, ArtinSoft’s CEO.
Eric works for Microsoft UK,
mostly helping local ISV’s explore and adopt the latest technologies and tools.
In fact, that’s why he first contacted us over a year ago, while doing some research
on VB to .NET migration
options for a large ISV in the UK.
Since then, we’ve been in touch with Eric, helping some of his ISV’s move off
VB6, and he’s been providing very useful Visual
Basic to .NET upgrade resources through his blogs.
So click here
for the full interview, where Eric and Roberto talk about experiences and
findings around VB6 to .NET migrations, and make sure to browse through Eric’s
blog and find “regular postings on the
latest .NET technologies, interop and migration strategies and more”,
including another interview
with William Morgan of Logica, one of our partners in the UK.
I mentioned
a few days ago that ArtinSoft was about to release a new version of its VB to
.NET migration product. Well, today it is official: finally, the Visual Basic Upgrade Companion
v2.0 has been released! After an incredible amount of work
(kudos to everyone involved), the tool now includes a series of enhancements
basically aimed towards increasing the generated code quality and the overall
automation of the upgrade process, allowing to reduce even further the manual
effort required to convert and compile your VB6 code to VB.NET or C#.
These are just some of the new features and improvements
included in this version of ArtinSoft’s Visual Basic Upgrade Companion (VBUC):
-
Upgrade Manager: The VBUC v2.0 now sports a
dashing GUI and Command Line interface that improves the user experience. Incorporating
a screen to set up migration profiles, it allows selecting and applying only
those features you require for a specific conversion.
-
Support for conversion of multi-project
applications.
-
Migration of mixed ASP and VB6 code to ASP.NET
and VB.Net or C#.
-
Individual conversion patterns designed to
improve the migration of a large amount of diverse specific language patterns.
-
Conversion of unstructured to structured code, reducing
the presence of spaghetti code and improving code maintainability and
evolution. This includes the
transformation of frequently used patterns related to error handling. For
example, the VBUC recognizes “On Error Goto” and “On Error Resume Next”
constructs patterns and replace them with the .NET “Try-Catch” structure. It
also performs “Goto” removals.
-
Improved typing system, which provides
additional information to assign more accurate target types to existing VB6 variables,
functions, fields, parameters, etc.
-
Improved Array migration, such as conversion of
non-zero-based arrays and re-dimensioning of arrays.
-
C# specific generation enhancements:
declarations and typing, events declaration and invocation, error handling,
conversion of modules to classes, indexer properties, case sensitive
corrections, brackets generation for array access, variable initialization
generation, and much more.
-
Migration of ADO to ADO.NET using .NET Common Interfaces.
-
Support for converting many new 3rd-party
components such as SSDataWidgets SSDBGrid, TrueDBList80, Janus Grid, TX Text
Control, ActiveToolBars, ActiveTabs, ActiveBar 1 and 2, etc.
-
New helper classes that offer frequently used
VB6 functionality that is either unavailable in .NET and/or that is encapsulated
for the sake of readability.
-
Automatic stub generation of no-maps as a proven
strategy to manage overall remaining effort towards successful compilation of upgraded
code.
-
And much more!
For more info, you can visit ArtinSoft’s website, and let us know about your specific
migration requirements.
Well, not exactly. But official
support for Visual Basic 6.0 has certainly ended, as I’ve mentioned on
previous posts.
VB 6 has been used by millions of people all over the world to develop
applications ranging from thousands to millions of lines of code. It’s definitely time to move those significant organizational investments to .NET, and appropriately
ArtinSoft is about to launch a new
enhanced version of its VB to .NET migration product (Visual Basic Upgrade Companion).
Stay tuned for details…
Browsing through some of the good old VB to .NET migration
resources I’ve accumulated through all these years, I rediscovered a Dr.
Dobb’s interview by Scott
Swigart with Jay Roxe. Among
other things, they talked about the motivations for migrating from Visual Basic
6.0 to the .NET platform, either to VB.NET or C#, and some of the benefits of
the new environment.
Putting aside the VB6 support end concerns, he describes the
lifecycle of any application as one of the motivations for a .NET upgrade: “The application has reached a point where
the code has grown beyond its original scope, and it's time to rewrite the
application anyways, and it just makes sense to transition to the latest development
platform at the same time”. Other incentives relate directly to the .NET
Framework’s new functionality and development capabilities, and that’s where
the benefits come under the spotlight. For instance, he mentions that “We're also seeing, particularly for some of
our Web customers, that when they took a VB6/ASP application, and moved it to a
VB.NET/ASP.NET application, it was 300 percent more scalable, and they got 200
percent more throughput from the application”.
Roxe also explains how the ClickOnce technology solves the
DLL Hell issue by providing better deployment and management, checking the
prerequisites availability before installing the application itself, with the
option of setting up version checking and without impact to any other
applications on the machine. There’s also the possibility of deploying a COM
component with an application without having to register it, allowing multiple side-by-side
installations of that component without conflicts.
Finally, he responds to the questions around choosing the
programming language (VB.NET or C#) once you decide to move to the .NET platform,
adding some advice around VB to .NET migrations and pointing some of the
available resources. You can read the whole article here,
and if you have a VB to .NET migration project in your hands or want to share
any experience you’ve had with such upgrades, I’d definitely love to hear about
it.
Since 2007, a team of ArtinSoft’s
experts has been working on a tool that helps automate a lot of actions commonly
performed by web developers, increasing their productivity and resulting in more
efficient pages. The outcome is Aggiorno, an
expandable plug-in for Visual Studio that produces SEO friendly, XHTML compliant,
CSS styled HTML and ASP.NET, which eases enormously the task of delivering web
standards compliant web sites. Based on a unique pattern detection and
transformation engine, Aggiorno’s beta version is currently available on a
by-invitation-only basis, so register now
and get early access to this revolutionary product!