Published on Apr 19, 2020
The release of "Longhorn" represents a milestone in the history of client operating systems. The next version of the Microsoft® Windows® client represents a vast array of new functionality and provides a platform for writing a new type of software that realizes the potential for the kinds of applications demanded by customers.
New APIs and system services offer a rich array of functionality and offer many possibilities.
However, Microsoft recognizes that it is essential for existing applications to continue to run and thrive on this new platform and, with this in mind, Microsoft's goal is for all current applications to continue to execute as expected. Not only is backward compatibility essential, but it is also important to provide a mechanism such that new functionality can be incorporated into existing applications in an incremental fashion. It may be the case that some software developers will choose to rewrite their entire application using exclusively new APIs and functionality.
However, many will choose to incorporate a subset of the new APIs and functionality into their existing applications. In addition, many organizations will need to continue to maintain an existing code base for earlier clients. The platform provided by "Longhorn" allows for all of these strategies across the spectrum-from not modifying a single line of code to rewriting the entire application, and everything in between.
With this range of options, guidance is crucial to understand how to proceed. There are many different ways to approach this spectrum and important engineering decisions must be made regarding which areas of "Longhorn" to target and how to approach the topic of interoperability and migration. This guide will provide alpha patterns and practices for architects and developers with recommended approaches, strategies, and techniques.
Analysis and Assessment
There is no single "Longhorn" migration strategy for existing applications. There is a collection of possible strategies and a particular application may use more than one strategy. Much depends on the specifics of the application. In order to choose a strategy, an evaluation of the application must occur from a technical perspective. Following that, a cost/benefit analysis of the different migration strategies is in order.
There are four basic approaches to migration.
" Completely port the application to WinFX™ managed classes. This approach is the most labor intensive. However, it provides the greatest access to the "Longhorn" feature set, and puts the entire application under a common framework.
" Rewrite parts of the application using WinFX, but leave others essentially as-is. Parts of the application may make little or no use of "Longhorn" features or derive too little benefit from "Longhorn" to make porting that part of the application worthwhile. Others areas of the application, such as UI code, may gain substantial benefits from porting to "Longhorn." In this scenario, the preexisting code is left largely intact, but modified to interoperate with other parts of the application that have been ported to WinFX.
" Host discrete Win32 modules, such as an ActiveX control, in a new "Longhorn"-based application. Some applications have a substantial investment in code that is contained in discrete modules, such as ActiveX controls. This investment can be maintained by hosting these modules in a "Longhorn"-based application. This approach is especially useful short term. An application can be up and running quickly by simply hosting the modules, while over the longer term, rewriting the modules in WinFX.
" Host a "Longhorn" component, such as a wizard, in an existing application. You can extend an existing application, such as a Windows Forms application or a Win32 application, to take advantage of "Longhorn" technologies by hosting "Longhorn"-based modules such as controls or dialog boxes. This is also a useful short-term expedient to quickly add "Longhorn" capabilities to an application, while over the longer term rewriting the application more fully
More Seminar Topics:
Next Generation Secure Computing Base,
On-line Analytical Processing (OLAP),
Parallel Virtual Machine,
Pivot Vector Space Approach in Audio-Video Mixing,
Real Time Application Interface,
Remote Administration Trojan's,
Scientific Archive Management System (SAM),
Self Defending Networks,
Self Organizing Maps,