By now, most technology professionals are aware of Microsoft's new open platform .NET. While the product may still be in its beta testing stages, Microsoft plans to roll out the market version by the end of 2001. This means we'll start seeing .NET applications popping up more and more in 2002.
For those who may not be familiar with .NET, it's a framework composed of a server platform, a new development environment and a new application integration protocol that allows for sharing over the Internet. The .NET platform allows for the creation of a "Web Service," which lets users build components that can be accessed by others over the Internet while still being run on the host company's server. For example, Dollar Rental Car and Southwest Airlines are currently testing a .NET application. Dollar has designed an application that lets Southwest customers reserve cars from Southwest's website after they have bought an airline ticket. To make this work, Southwest accesses Dollar's .NET application on Dollar's server. The advantage is that other airlines, travel agencies, etc. can also access Dollars .NET application. .NET allows Dollar to share data with a number of groups directly on its server.
So if a company is looking to explore the benefits of an open system, .NET could be a solution, but .NET isn't right for everyone.
"If you have an application now that is working fine and don't see any need to change it for the foreseeable future, I don't think there is much of a need to migrate it over to .NET," says Xenos Sroka, Principal Solution Developer for Pinnacle Decision Systems, a computer consulting and software development firm headquartered in Middletown, Connecticut. Pinnacle is also a Microsoft Gold Certified Partner, so Sroka and his co-workers have extensive experience with .NET. "A good candidate for migration is an application that you would like to keep that needs more accessibility and integration features. Any applications that might be useful to a group of other businesses, like the Dollar car rental model, are good candidates. Applications that have the potential for integration into other applications would benefit the most from migration."
So how would a company migrate a current application to .NET? Unfortunately it isn't as easy as some other migrations.
Get the Right Platform: "The first step is to make sure that the machine that will host the .NET application is running either a Windows NT server, Windows 2000 or Windows XP platform," says Michael Pelletier, Emerging Technologies Specialist for Pinnacle. "Normally, with most applications, once the platform is set up, you load the old code into a new tool and it will work pretty well. Unfortunately, that isn't necessarily the case with .NET architecture."
Check Assignments: Pelletier points to migrating an application written with Visual Basic 6.0 to Visual Basic.NET as an example. Many Visual Basic 6.0 developers use default properties for certain objects. However, these default properties are not supported in Visual Basic.NET; developers must always explicitly identify the property being assigned. So if something that uses default properties in Visual Basic 6.0 is migrated to Visual Basic.NET, chances are it will not work until someone edits the code to specify the properties being assigned.
Allot Enough Time: "You can take some steps to prepare your code for migration to .NET. Even so, you still need to run it as a test and then debug it," says Pelletier. "It's important to budget enough time for any migration to .NET. When you look at it from a people perspective, there are also a number of things that have to happen with your staff to make the migration go right."
Do Your Homework Before Programming: Pelletier says if a company has lots of developers who are skilled in Visual Basic, this doesn't necessarily mean they can just start working with Visual Basic.NET. "Of course you can give the developers the Visual Basic.NET tools and tell them to start designing and migrating applications, but the chances are any gains that will be realized by the company will be minimal," says Pelletier. "This is because there are a number of principles with .NET that are different than other systems. It's almost a completely different way of thinking. I suggest learning the .NET platform through training or mentoring programs with a consultant who is familiar with the .NET advancements."
Embrace New Concepts: "In addition to learning the new .NET framework from a technical perspective, programmers will also need to learn new object oriented design concepts, like design patterns and object modeling," says Sroka. ".NET offers a whole new way to do things. However to do those new things, you have to learn and embrace new concepts and ideas. This is one of the major stepping stones to migrating an application to .NET."
Hold Off on Critical Systems: Sroka warns companies that are considering an immediate migration to .NET to be cautious. This is because the .NET architecture is still in its beta phase, which can mean technical glitches. Sroka says companies should be careful to not migrate critical systems to .NET. Instead, they should start experimenting with other systems. Once the first release to manufacturing comes out at the end of the year, then Sroka thinks companies can start considering the change.
Work As A Team: "Typically, when you migrate an application from one language to another, such as Visual Basic to Java, there are lots of things that you will need to do technically to make it work," says Pelletier. "This is what we have going on here with .NET. While some may think of it as just an upgrade, it is more like a migration. To make it successful, you need to have people working on the team who are skilled both in the architecture from which the application is coming from and in .NET."
Of course it wouldn't make any sense at all to go through the migrations to .NET if the platform didn't have a bright future. On that Pelletier and Sroka agree that it does.
"I think that there is a future for .NET, but a lot depends on how many companies realize the benefits from the .NET architecture," says Sroka. "When companies see that there is a major advantage to the Web Service idea, there will be a future, as long as the architecture provides the performance Microsoft has promised. One of the things that I've found from .NET development is there is going to be uneasiness and concern about having outside companies accessing a company's production server, and until that feeling goes away, .NET will grow slowly. But using history as a guide I think that adoption will be in full swing by the 3rd quarter of 2002."
"From a marketing perspective, look at XML about 6 years ago," says Pelletier. "That was just when the specs were coming out. It wasn't until two to three years later that you started to see articles and press developing around XML. Since then it has become almost impossible to talk to a technology person without having XML come into the discussion. With technology there is always an incubation period and that is what we are starting now with .NET. Since .NET is coming from Microsoft I think that incubation period will be much shorter, because Microsoft has an excellent marketing team and when the company talks, developers listen."