Microsoft Response to Gartner Report (was: "Re: Cost of migrating to .Net")
"Ari Bixhorn (Microsoft)" <[email protected]> Fri, 21 Jun 2002 17:12:54 -0700
| Newsgroups | gmane.comp.windows.devel.dotnet.advocacy |
|---|---|
| Message-ID | <DOTNET-ADVOCACY%[email protected]> |
I wanted to provide some information on the recent article that posted on CNET as well the Gartner Commentary that discusses the costs of moving to .NET. I should preface this post by saying that Microsoft has a great deal of respect for Gartner Group and their research. This post is simply intended to provide the Microsoft perspective on this particular topic. Gartner Group=92s commentary, entitled =93A Cost Model for .NET Conversion,=94= describes Gartner findings on the costs associated with migrating a Windows DNA-style application to the .NET platform. While Gartner group does a good job of accurately discussing some of the differences developers will face in moving to .NET, such as the new component model, the ADO.NET data access model and a new paradigm for building Web applications, the overall findings don=92t match those from tests done at Microsoft as well as the with many customers who have successfully moved their applications to .NET. Gartner also weakens their findings by acknowledging the difficulty in estimating the cost of code conversion: =93The most-visible cost component, the cost of code conversion, is also the= most difficult to estimate.=94 =93Estimates of cost and time in software development projects are notoriously unreliable, due to the wide range of quality in software implementations and the wide range of programming ability in software teams. Code conversion is no exception.=94 =93Many factors affect the amount of effort required to rewrite code. These= variables can introduce an order-of-magnitude difference in costs from one application development (AD) organization to another.=94 It is important to note that Gartner does not mention the source of their data, the methodology employed, nor the statistical significance of their findings. In addition, the commentary mentions that the model used for estimating cost of conversion =93is better suited to the all-at-once conversion process.=94 We've been hearing from our customers that very few companies actually decide to convert code all at once -- the majority opt for a more gradual, incremental upgrade. This is the recommended course of action, as it enables development teams to upgrade components only as needed. Related to this is the issue of using COM interoperability to communicate with existing code without upgrading it. This is something that is not reflected in the commentary, and admittedly hasn't been touted strongly enough by Microsoft, however it is becoming a very viable option for a lot of customers - particularly those who have pre-existing code already deployed and in maintenance mode. Gartner Group also correctly points out that two basic methods of code migration exist: The first involves a direct conversion of the code as it exists today. The second involves cleaning up existing code to make it more =93migration friendly=94 prior to upgrading it. However, they then cla= im that their single approach to costing the upgrade of code applies to both methods. This is a contradiction. When developers take simple steps to clean-up their code prior to migration, it radically shortens the upgrade process. In recent months, we've been doing a number of tests on this issue with both small and large VB 6 projects. In conjunction with ArtinSoft Corporation, we've upgraded about 2 million lines of VB 6 code to VB .NET. Results showed that for each issue addressed during the pre- migration code clean-up, between 5 and 8 upgrade issues could be eliminated. In addition, when converting from VB6 to Visual Basic .NET, the five most common upgrade issues together account for about 90% of the total quantity of upgrade issues. All five of these are micro-issues that are easy-to- fix, particularly when addressed prior to the upgrade. Once code has been prepared for the upgrade, Artinsoft found that the upgraded code only encountered 1 upgrade issue for every 106 lines of code. Microsoft tests with customer projects have found that when code is cleaned prior to the upgrade, the cost of upgrading from Visual Basic 6.0 to Visual Basic .NET is typically 5-10% of the total development cost. Bottom line is that evaluating the benefits of upgrading existing code to VB .NET is definitely the sensible thing to do. I've talked to folks who have done everything from rewrite from scratch to upgrade all at once to incrementally upgrade to simply maintain existing code in VB 6 and start doing new development in VB .NET. In my mind, It's all good... -Bix Ari Bixhorn Product Manager, Visual Basic .NET [email protected]