Migration and Coexistence Requirements
Businesses will tend to upgrade and replace their mission critical applications in pieces rather than replacing all of them at once. It is clear that a business will not replace all of their mission critical applications with San Francisco based applications at one time. San Francisco will provide ways for applications based on the frameworks to coexist with existing business systems.
The first part of accomplishing this is to allow integration with legacy databases. San Francisco provides for the use of schema mappers to allow developers to access relational databases as San Francisco objects. These databases may be part of a new application design, or could be from existing applications. An open interface is used so that relational databases from several vendors are supported. Our goal is to allow shared, concurrent, update access between legacy and San Francisco-based applications.
A second area to address for coexistence is the interoperation of legacy code with San Francisco objects. We plan to demonstrate that San Francisco objects can call functions provided by applications written in traditional languages. This provides access to a large set of legacy application function. The ability for other programs and objects (such as OLE/COM objects) to invoke San Francisco objects is also being examined. We observed many groups, both within and outside of IBM (including MicrosoftTM working on this problem. We are providing sample code to help ISVs better understand the interoperability requirements for migration and coexistence.
A final area to consider in migrating to San Francisco-based applications is how to reeducate the developers to the use of the new technology. Developers must learn how to design and develop objects. They must also understand what functions the San Francisco frameworks provide, and how to extend and customize them for their own applications. IBM will provide training to help teach them the new skills they will require. We are working with tool vendors to ensure their tools make effective use of the frameworks.