Migrating a PowerBuilder Legacy Application to a Web 2.0 Infrastructure

 The Client

Pepsi Bottling Group is the largest soft drink bottler in North America handling brands for Pepsi, SoBe, Starbucks, and other manufacturers. In 1999, PBG was spun-off from PepsiCo as a public company (NYSE:PBG) and maintains strong ownership and partnership relationships with PepsiCo. (NYSE:PEP). PBG's business is to sell soda -- to bottle and to provide vendor services including equipment maintenance and service contracts.

With a 100-year history of selling and dispensing soda in the USA, there are hundreds of thousands of vending customers, and millions of pieces of equipment to manage from soda fountains and vending machines to ice makers and coolers. Dozens of applications have been developed with evolutionary history back to the earliest commercial computers.

PBG's IT organization has a history of leveraging legacy while migrating to state-of-the-art commercial platforms. Their interest in this exercise was to migrate several applications from 1980's PowerBuilder client-server technology to the current SOA-based RIA architecture.

The Need

One of the legacy applications identified for modernization was their Customer Equipment Tracking System (CETS). This application was used by the field services team to setup and maintain client-site distribution equipment.

 

This application was custom built on PowerBuilder client/server architecture. PBG identified the need to modernize it for the following reasons :

  • The Hardware costs were high due to the servicing of user machines in the service centers required to support the client-server architecture. 
  • Licensing costs were a consideration due to the scale of the deployment.
  • They needed to support mobile device capabilities.

The Approach

Pepsi selected Nexaweb as their Rich Internet Application technology provider, to modernize CETS. The reasons were the following :

  • Reduce user hardware costs by moving to a browser-based internet application.
  • Reduce software licensing costs by migrating off proprietary architectues.
  • Preserve rich user interaction experience by using RIA technologies - Ajax, HTML, and Nexaweb Java. 

The design principles key to the project were the following :

  • Database Reuse : 
    • Leverage existing databases and stored procedures as a reusable data-services platform
    • Complete reuse of stored procedures
  • Open Source Frameworks
    • iBats
    • Struts
    • Spring
  • Services infrastructure expandable to Web Services
    •   LDAP security.
    •   Web Service front-end to existing business logic and stored procedures.

The Solution

  • The Nexaweb Java platform was chosen to support desktop-quality look-and-feel in the browser while residing as a first-class application in the application server.
  • The Struts framework is used to map and wrap/unwrap requests from XML, serialized objects, or HTML requests to the appropriate action. This allows the server to support multiple format requests.
  • The Spring framework is used to map actions to one-or-more data-access requests.
  • The existing Sybase database and stored procedures are now accessed through an interface with iBatis.

 

 

Value

  • Signifianct reduction in cost of software maintenance costs to vendor.
  • Flexible and fast roll-out of new applications. New applications can be created or existing applications migrated to the new infrastructure in 6 to 12 months.
  • Consistent look-and-feel across multiple systems supporting style sheets
  • Unified SOA architecture that can accommodate web-services, RIA, mobile devices.
  • Flexability to support Web Services gateway to existing services and other client formats.