s the Microsoft .NET platform has matured, desktop application technologies have reached a new plateau. Decades-old client/server applications built for Win32 using the PowerBuilder platform are reaching the end of their useful life cycle, consequently IT managers and application developers are seeking the most cost-effective, lowest-risk method to move these applications into a next-generation format. The upcoming release of PowerBuilder 12, which is compliant with the .NET Common Language Runtime (CLR) promises to be the most effective method to migrate valuable PowerScript-based code assets to a standards-compliant, interoperable format with minimum risk and exposure.
This article explores some of the new PowerBuilder platform's potential to accomplish that goal. It also offers suggestions on how to approach a PowerBuilder legacy application migration effort while leveraging available developer skills and knowledge.
|Author's Note: All opinions expressed in this article are those of the author and do not reflect the views of Sybase Inc. or any of its subsidiaries.|
After its introduction in 1991, PowerBuilder (PB) quickly grew to dominate the client/server application development marketplace. In 1994 PowerBuilder had a 40% market share and was recognized as the COBOL of client/server development. The number of PB developers and the applications they produced continued to grow until around 1997, when—according to Sybase—PB had nearly a million development licenses worldwide. At that point however, things began to change. Y2K concerns, scalability issues inherent in the Client/Server architecture, and a shift to internet-based application deployment drew focus and resources away from new client/server based development.
Key factors in PB's rise to fame and longevity include:
- Its patented, highly productive DataWindow Technology; a richly functional mechanism for presenting and interacting with relational data.
- Its productive object-oriented programming language called PowerScript.
- Its open standards database interface that supports all relational DBMS vendor products.
- Its highly productive integrated developer environment (IDE) that supports both rapid prototyping and rapid application development methodologies.
- Its stable runtime environment, which is based on MS Win32 technology.
- Sybase's commitment to timely update releases, which help keep the platform current with ongoing technology advances.
From my unique perspective as a longstanding PB trainer and independent developer, I can personally testify to the broad use of the PB platform across the entire enterprise spectrum. Of late, however, interest in PB and its market recognition has waned—due in no small part to the staggering number of new technologies and paradigms that garner the attention of IT academics, industry pundits, and the developer community. Next-generation development is partially driven by available developer skills. Many software professionals now entering the work force have never even heard of PB and its capabilities. Currently, universities churn out software engineers and developers who are highly trained in Java, PHP, and C, and are conversant with the latest web-based presentation techniques. Technical schools and community colleges produce application development specialists who are well versed in .NET technologies and C#. Add to this the fact that many PB experts were forced to move on to greener pastures to remain employed, and you can understand why shops with existing PB-based mission-critical applications are concerned about using PB to develop the next generation of their mission critical applications.
Sybase has remained loyal to its developer base, releasing regular incremental enhancements to its core platform and tools. PowerBuilder also extended its reach in the enterprise with the addition of standards-based extensions to support multi-tiered computing, such as adding the ability to build server-based business logic and data-access components as well as client-side interfaces based on CORBA, Java EJB, and web services standards.
But before committing to a revolutionary overhaul to the base platform, language support, and code generation capabilities, Sybase patiently waited out the battle for desktop language dominance between Sun's Java and Microsoft's .NET. Finally though, for corporate desktop application development, .NET has emerged as the dominant force. With the release of version 11, PB threw its hat on the side of Microsoft .NET and began its long march toward full .NET compliance. PB version 11.x gained the ability to deploy Win32 applications as .NET 2.0 WinForms or WebForms applications, and let developers embed .NET Framework calls into their code inside special compiler directive blocks. The .NET compatibility trend will culminate later this year with the release of PB 12, a major overhaul that will once again position the platform in the sweet spot of application development.
What has Sybase accomplished?
There is much new functionality to embrace in PB 12, including:
- A brand new MS Visual Studio 2010-based IDE
- .NET 3.5 CLR compliance
- A completely new UI windowing system based on Windows Presentation Foundation (WPF)
- Windows Communication Foundation (WCF) support for integrating applications into a service oriented architecture (SOA) design.
The good news for the community is that it's easy to master the features in PB 12 whether you approach it from the perspective of a seasoned classic PB developer or from the perspective of a veteran Visual Studio .NET developer. From the perspective of someone who has worked with the Community Technology Preview and early Beta releases to produce learning modules to support rapid migration, here's a brief description of what I found, what I did, what I think and what I project will be your initial experiences.