Click here to Skip to main content
15,886,578 members
Articles / Desktop Programming / WPF
Article

Sybase PowerBuilder Meets Microsoft .NET

16 Mar 2012CPOL18 min read 28K   3  
An article that explores why Sybase PowerBuilder has remained throughout the years a bastion of application development productivity for a wide class of enterprise applications that combine heavy database orientation with a highly productive graphical user interface (GUI).

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

Sybase-PowerBuilder/download-powerbuilder-free.png

Sybase PowerBuilder has remained throughout the years a bastion of application development productivity for a wide class of enterprise applications that combine heavy database orientation with a highly productive graphical user interface (GUI). Revolutionary at its inception for creating and popularizing this specific genre of distributed application development, the PowerBuilder 12 development environment today combines functional maturity with aggressive modernizations that keep it a viable and compelling integrated development environment (IDE) application runtime. In particular, the direction that PowerBuilder has taken to become a seamless Windows .NET environment with the Visual Studio shell incorporated into its infrastructure has meant that the product can now be considered equally for evolving existing systems and for developing new ones for traditional Windows 32 environments and for .NET. In particular, Sybase PowerBuilder provides the following benefits:

  • A mature and highly functional application development environment that is currently in its fifteenth major release. Since its inception in 1991, PowerBuilder has aggressively evolved to meet customer demands for new architectures and technologies.
  • A highly productive development paradigm for rapidly constructing both the back end  and  the  front  end  of  an  application.  PowerBuilder  features  the  highly acclaimed "DataWindow" metaphor with native support for multiple popular database management systems as well as a graphical approach to painting the user interface screens and components of an application.
  • A powerful, yet easy-to-use scripting language, which has been kept current to support modern language features and techniques that permit the construction of business logic tying the user interface to the enterprise data.
  • The solid backing of Sybase, a financially stable and healthy concern that has provided strong stewardship of the PowerBuilder asset with an intimate customer interaction  model.  The backing  is made even  stronger  by  the acquisition  of Sybase by SAP, which, according to IDC, is the fourth largest software company in the world.

Table of Contents

List of Tables

List of Figures

In this white paper we discuss the progress of Sybase PowerBuilder and assess the overall strategic options facing many PowerBuilder customers with respect to the evolution of their PowerBuilder applications. While the visibility of the PowerBuilder toolset is not where it used to be in the early 1990s, we find that the original value proposition of the product has endured and the strategic direction taken by Sybase to evolve the installed base is sound and well thought through. The PowerBuilder road map  enables  PowerBuilder  applications  to  be  brought  into  alignment  with  the successful Microsoft .NET platform and the familiar Visual Studio IDE, including many third-party controls.

Situation Overview

PowerBuilder is a development tool with a storied history. It is recognized for bringing about a rapid application development (RAD) paradigm shift in the early 1990s that effectively created a revolution in the productivity of business application development. PowerBuilder blended scripting capabilities from the then established genre of "fourth- generation languages" (4GLs), which emerged in a textual form in the late 1980s, with a visual development metaphor that was more commonly associated with productive but not very scalable PC database products of that era. By combining the dexterity of programming in a 4GL with the visual RAD capabilities of PC databases applied to back-end business database systems, PowerBuilder was a success in short order. PowerBuilder gained developer share at a rapid pace over its competition as some of the best-known companies in the world (e.g., American Airlines, Coca-Cola, 3M) understood its advantages and utilized it to build internal business applications.

PowerBuilder proceeded on a growth trajectory until the fame and fortune of two-tier client/server architectures began to give way to Internet architectures. The second half of the 1990s was the time when the Internet got its mainstream footing promoting a specific type of Web architecture for consumer applications; it was also a time when disenchantment with the scale and manageability of two-tier client/server architectures gave rise to new entrants such as Forte and Seer that promoted three-tier and multitier architectures  for custom applications.  Third-generation languages (3GLs) were also being reborn as more programmer-friendly with better-organized frameworks operating at higher levels of abstraction and richer, more supportive shells (e.g., Visual Basic and Borland Delphi). To some extent, the productive application development tools category began to fragment, culminating in the arrival of the virtual machine–based Java platform and language followed by Microsoft's .NET framework and its languages. The virtual machine–based architectures of Java and .NET allowed them to offer the benefits of both 3GL and 4GL languages. Known as "managed languages," these development models took the edge off of some of the most painful aspects of 3GL development (e.g., memory management, type enforcement, error handling) by moving them out of programmers' error-prone hands and into the supplied language runtimes. Finally, along with the changes in programming languages and environments, a new application development architecture based on the World Wide Web began to emerge in the mid-1990s and grew to become the most popular target of new application developmenttools.

Today, most strategic application development tools are aligned along one of three major ecosystems: the Microsoft .NET environment, the Java environment, and generalized Web architectures. Most application development tools and their runtimes, which were developed during the course of the 1990s, have found themselves taking this fork in the road to align with one of these three broader ecosystems. Sybase has settled on a strategy to primarily align PowerBuilder with the Microsoft .NET ecosystem.

Where Is PowerBuilder Today?

As programming languages and application architectures have come and gone, we are hard-pressed to find an environment as productive to develop in as PowerBuilder. What's more, PowerBuilder has been evolved aggressively as these shifts have taken place. This fact has not been lost on PowerBuilder developers, many — if not most — of whom have continued to use the product as their primary development tool years after they may have run into it for the first time. In our exploration of the PowerBuilder developer community, we have noticed a degree of ardor and fondness that truly stands out even in a world where everyone is ardent about their favorite language or tool. This has translated into a level of stickiness in PowerBuilder adoption that also stands out in this market. Languages and development tools are sticky in the sense that once developers have adopted them, they tend to stick to their decisions due to invested skill and know-how, accumulated code libraries, and the generally steep learning curve of application development technology in general. Additionally, most programmers have obligations to maintain applications they have developed in the past and thus avoid switching toolsets unnecessarily. In the case of PowerBuilder, Sybase's plan of record is to continue to ensure that developers are able to fully leverage  both  the Visual  Studio  IDE  and  the .NET  runtime  while retaining  their invested skills and the power and productivity of PowerBuilder.

A History of Supporting Developers

It is interesting to follow this trajectory backward to shed some light on how PowerBuilder has managed to keep much of its installed base of developers in the fold.  Currently  in  its  fifteenth  major  production  release,  PowerBuilder  has  been evolved aggressively and continuously since its inception, as Table 1 illustrates. In addition to bringing to market strong .NET alignment, the recent releases of PowerBuilder have continued to bring new capabilities to developers. While 11.5 brought new GUI improvements such as RichText in the DataWindow for displaying columns and added 3D graphing capabilities based on the DirectX runtime support, release 12.0 delivers the most comprehensive support for .NET to date, including a DataWindow that was rewritten in C# and natively supports Windows Presentation Framework   (WPF)   as   well   as   compliance   with   .NET   Common   Language Specification.

TABLE 1
PowerBuilder Release History
Release NumberRelease DateKey New Feature Highlights
1July 1991Beginning of a historic run
2June 1992OO support, Painter
3May 1993Bundled DB (W atcom), Version Control
4November 1995Reporting, Data Pipeline, OLE 2.0
5July 1996Machine code compilation, Distributed PowerBuilder three-tier support
6December 1997Window ActiveX, CORBA, DataW indow HTML generation, DataW indow synchronization
6.5August 1998COM and Java component generators, separate Unix, Macintosh, and Unicode SKUs, internationalization via Translation Toolkit
7October 1999New IDE, new layouts and look/feel, Jaguar integration (aka EAServer) — build, create, and deploy COM and MTS components (Component Theme)
8June 2001Web Targets, Web DataW indow (integration of PowerSite functionality into PowerBuilder) (W eb Development Theme)
9February 2003.NET phase 1: Web Services, XML, Java Server Pages
10July 2004.NET phase 2: DataW indow .NET, Fully Unicode
10.5March 2006.NET-based W eb Services engine (Visual Enhancements Theme); large and small UI and core client/server enhancements, including TreeView DataW indow, RichText Edit Control
11July 2007.NET phase 3: NVOs as .NET assemblies, ASP.NET W eb Forms, W indows Forms (.NET Theme, W eb Services Theme)
11.5September 2008DataW indow enhancements, Oracle 11g and SQL Server 2008 support, improved graphing (Visual Enhancements Theme)
12April 2010.NET phase 4: W PF applications, W PF DataW indow, improved DataW indow graphing, Visual Studio isolated shell

The .NET Alignment

In its pursuit of an open developer strategy and to embrace the emerging architectural shift toward the Web, Sybase built ties into PowerBuilder that align it with the Java ecosystem. In time, however, Sybase discovered that the PowerBuilder user base is more  aligned  and  has  considerably  more  overlap  with  Microsoft's  developer community. As a result, Sybase chose to shift its PowerBuilder investment and began a trajectory of deepening alignment with Microsoft's .NET technology stack in a four- phase strategic plan involving four major releases (and two minor ones).

PowerBuilder 9, 10, and 10.5

Sybase began work on its .NET alignment in 2002 as release 9 of PowerBuilder was being planned. The four-phase strategy was kicked off with release 9, which featured a Web Services enablement necessary to extend the product in such a significant manner.  Release  10  was  delivered  in  2004,  as  was  a  separately  packaged DataWindow .NET product. The DataWindow feature was brought to .NET in parallel with and as part of the PowerBuilder 10 release in addition to being available as a separate product. The development of PowerBuilder 11 was reliant on Microsoft technologies that took longer to ship, leading Sybase to ship the 10.5 release as a packaging of all the scheduled improvements that did not rely on the new Microsoft technologies.   With  release  10.5,   ADO.NET   support   was  introduced   to  allow consistent   access   to   the   major   databases   from   within   the   managed   code environment.  Finally,  the  10.5  release  completed  and  further  refined  the  Web Services  support  introduced  in the earlier  phase of  the .NET  alignment,  namely release 9.

PowerBuilder 11 and 11.5

In release 11, the bulk of the phase 3 .NET alignment was rolled out in the form of the ability to build applications and components in PowerBuilder and deploy them to the .NET Framework version 2.0, including the creation and deployment of .NET Web Forms, Windows Forms, and Non-visual Objects (NVOs) as .NET assemblies and as .NET Web Services. Additionally, the ability to call .NET classes from PowerScript code and debugging support for .NET objects in the native .NET debugger  were added to allow PowerBuilder developers to leverage many of the assets in the .NET environment.  PowerBuilder  11.5  brought  security  capabilities  by  allowing PowerBuilder applications to run in partial trust environments when they are constrained by .NET code access security (CAS) configurations. PowerBuilder lets developers configure CAS zones (sandboxes) for .NET Web Forms, .NET Web Services,  .NET  Windows  Forms/Smart  Client,  and  .NET  Assembly  projects  to minimize the amount of trust required before application or component code is run by an end user. Finally, .NET assemblies created in PowerBuilder 11.5 are run with the security permissions of the calling application or component instead of the full trust required in prior releases.

PowerBuilder 12

For release 12, Sybase entered into a strong partnership position with the Microsoft Visual Studio division to complete the alignment of PowerBuilder  with .NET. This effort comprises the following aspects:

  • PowerScript Features for .NET Leading the set of additions to PowerBuilder 12 are language modifications that permit many .NET features to be leveraged from within the PowerScript language. Examples of the new language features include support for unbounded multidimensional arrays, .NET delegates, parameterized constructors, and user-defined enumerations, among others. Other capabilities include defining and consuming custom attributes, defining namespaces, and consuming .NET generic types from within PowerScript.
  • .NET WPF Support. Another  important  architectural  change  that  permits PowerBuilder to snap to .NET technologies is support for the Windows Presentation Framework, which provides a powerful abstraction for rich vector- based graphics. WPF was introduced with .NET 3.0 and has become the basis of Microsoft's strategic work in the presentation layer, including for the support of Rich Internet Application (RIA) development through the Silverlight browser plug- in. WPF unifies many disparate services such as 2D, 3D vector graphics, animation,  typography,  audio,  and  HD  video  under  a  new  comprehensive markup-based user interaction framework. IDC believes that Sybase will build on the foundational work of WPF support in PowerBuilder 12 by adding Silverlight support in a future release. WPF relies on an XML-based markup (XAML) approach internally, which is not necessary for developers to learn but which allows the presentation tier to be configured in isolation of the rest of the code. It is important to note that PowerBuilder and Microsoft will continue to support the Win32 API in addition to WPF and other new technologies.
  • Managed Code DataWindow. PowerBuilder 11.x applications implemented the .NET managed code runtime for virtually all components. The main exception was the DataWindow engine, which was written in native code, creating some restrictions and annoyances such as the specification of DataWindow DLL files and the inability to run in partial trust environments. For PowerBuilder 12, Sybase has rewritten the DataWindow engine in C#, including a new managed code database driver. The overall resulting architecture is represented schematically in Figure 1, which also highlights an important aspect of the new DataWindow architecture,  namely  the  design  around  separation  of  concerns  where  core functions are separate from both user interfaces and data source interfaces.

Sybase-PowerBuilder/supporting-powerbuilderruntime.png

FIGURE 1 Supporting .NET in the PowerBuilderRuntime. Source: Sybase, 2010
  • Visual Studio Shell.The fourth major enhancement in PowerBuilder 12 is a new IDE that builds on the UI innovation and R&D built into Microsoft Visual Studio. Visual Studio is acclaimed in developer circles as having a powerful yet highly productive IDE, which several million developers have enjoyed. Microsoft's investment in R&D over multiple iterations of Visual Studio is fully leveraged by Sybase through the adoption of the Visual Studio isolated shell as the core new shell for PowerBuilder developers. Sybase works closely with Microsoft as a Premier Visual Studio Industry Partner (VSIP) to ensure that support for the shell and the .NET framework overall is implemented in a reliable way. The isolated shell   approach   implies   that   PowerBuilder   can   provide   a   high   level   of customization of the shell to suit the needs of PowerBuilder developers without bringing irrelevant functionality. It also means that PowerBuilder can run side by side with a Visual Studio installation without any conflict, a capability requested by many PowerBuilder developers. IDC expects this new capability to make PowerBuilder attractive to existing .NET developers looking to supercharge their productivity in developing business applications.

Modernization of PowerBuilder Applications

In evolving PowerBuilder, Sybase has demonstrated an uncommon level of responsiveness to its customer base. The Sybase PowerBuilder customer advisory board program is one of the better-run programs in the industry, with a standing waiting list for membership. Sybase has done considerable due diligence on the direction it planned to evolve PowerBuilder, canvassing and dialoging intensively with its customers prior to settling on its course of action. This quality, which appears to be a shared cultural norm inside the overall Sybase organization, has been crucial in Sybase's overall revival as a company and bodes well for the success of PowerBuilder's  evolution  and  road  map.  We  expect  this  to  continue  under  the similarly deliberative and customer-centric SAP, which completed its acquisition of Sybase in July 2010.

Sybase's  evolution  of  PowerBuilder  will  result  in  customer  applications  that  are aligned  with  .NET  and  Microsoft's  development  strategy  yet  also  leverage  the historical value proposition of the PowerBuilder toolset and runtime. Thus, all the needed technologies to build enterprise applications in the most productive manner will be offered "in the box," making minimal demands of custom integration on developers.  PowerBuilder  will  continue  to  have  the  easiest  approach  to  putting together database-oriented business applications that deliver high-performance database   query   and   reporting   through   optimized   native   database   drivers. With the release of PowerBuilder 12, existing applications have begun to be migrated in a controlled fashion to the .NET runtime, whereby developers will have the added freedom of integrating them transparently with other .NET modules written in C# or other .NET languages and leveraging the full .NET framework.

Future Outlook

As Sybase marches forward with the evolution of PowerBuilder as part of the larger SAP, it must maintain its aggressive evolution of PowerBuilder. In particular, Sybase must find synergy with its mobility platform, which is well positioned to leverage the forthcoming wave of mobility inside the enterprise that has been the catalyst for the SAP  acquisition.  Now  based  on  .NET,  PowerBuilder  can  have  a  future  as  an application development tool that is useful for generating mobile applications that extend existing custom applications. This strategy remains to be fleshed out, but IDC expects  that  the SAP  acquisition  will  allow  Sybase  to  invest  in  such interesting projects in a way that may not have been possible before.

Challenges / Opportunities

There are three fundamental challenges facing Sybase today with PowerBuilder:

  • Execution and road map. Sybase has finally executed on its four-phase .NET strategy, an alignment that could have moved at a faster pace. However, the integration agenda can benefit from additional evolution. For example, Sybase should consider a Silverlight implementation or some other way to introduce RIA capability to PowerBuilder. Sybase can benefit from providing a more aggressive road map that outlines its intended investments and the potential developments it plans to bring forward to enhance PowerBuilder.
  • Java and Web alignment. A very small subset of PowerBuilder developers has historically articulated a preference for a different alignment path for the toolset, such as with the Java ecosystem. This is often largely driven by platform portability concerns and dissatisfaction with the level of standards compliance and support offered with the .NET platform. Some of these concerns have been attenuated by Microsoft overtures to openness and open source, and yet other concerns are being swept along by the overall shift toward Web architectures. In this regard, PowerBuilder has to walk the dual path of supporting WPF/Silverlight for Web architectures and purer HTML/JavaScript/AJAX approaches and frameworks.
  • Perception. Despite the progressive approach taken by Sybase in the evolution of PowerBuilder, some might continue to see it as a development toolset and runtime that has run its course. This is a perception problem insofar as it makes it difficult to attract new developers even if existing developers stay in the fold. IDC sees that the best antidote for this perception issue is continued investment and evolution of the platform and a more aggressive marketing strategy in alignment  with new trends  and  technologies  that  are  now  pervading  the  application  development space. Thus, finding alignment and integration with Sybase's mobility platform, offering a cloud services version of PowerBuilder, and more aggressively utilizing open source strategies might win Sybase more adoption from an entirely new and more pragmatic crowd of developers that will discover the productivity and leverage of development in PowerBuilder.

Sybase  has  taken  concrete  steps  to  bring  PowerBuilder  into  alignment  with  the modern needs of application developers. If marketed properly, PowerBuilder may emerge to have a renaissance that will take it through the next decade or two with considerable health and a possible expansion of its user base.

Conclusion

Trends come and go, but things that work outlive the moniker of legacy. While the competition for tools to build new applications continues to intensify, we find the strategic direction taken by Sybase to evolve the PowerBuilder installed base well thought through and in alignment with the needs of the majority of PowerBuilder developers. The Sybase evolution strategy for PowerBuilder provides PowerBuilder developers with all the salient aspects of the successful and popular Visual Studio environment while retaining the productivity of development that is characteristic of PowerBuilder. The strategy marries the traditional advantages for which PowerBuilder has  gained  its  fame  with  a  successful  and  powerful  ecosystem  of  software development tools that is being aggressively evolved on its own merits by Microsoft. This will allow PowerBuilder developers to leverage the power and cost-effectiveness of PowerBuilder with the flexibility and richness available in the .NET ecosystem. Sybase's  strategic  direction  with  PowerBuilder  is  on  track  to  marry  the  past  of client/server development happily with its future.

For more information and a free trial download please visit www.sybasepowerbuilder.com

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Unknown
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
This is a Organisation (No members)


Comments and Discussions