SmartAdvice: Standardize Backup-And-Restore Storage

Deploy backup tasks to underused resources for best efficiency in an enterprise backup system, The Advisory Council says. Also, there's a high threshold for moving PowerBuilder developers to Java.

InformationWeek Staff, Contributor

June 10, 2005

3 Min Read

Question B: How should we effectively migrate legacy applications from PowerBuilder to Java?

Our advice: Retraining developers with expertise in legacy languages such as PowerBuilder or Cobol to use rapid-application-development tools, or RAD, is a challenging issue with few clear-cut answers.

The Eclipse Java Integrated Development Environment provides a solid base from which new Java developers can start; however, there's a significant threshold for moving PowerBuilder developers to Java, and not every developer will be successful with the current Java IDE technology.

Typical steps in preparing for migration between development tools include: Upfront application analysis to determine dependencies among modules; Determining modules that can be run through automated migration tools; Customized coding of remaining modules; and Enabling developers to learn features of the Java language that are used in the migrated application.

Depending on the level of Java expertise in your company, external solution providers may need to seed the initial analysis and implementation. The migrated application needs to undergo comprehensive testing from users, and incorporating user feedback into an improved Java application will encourage users to accept the migrated Java application.

Understanding of Java design, architecture, and development guidelines, along with detailed knowledge of the business logic embedded in the applications, is essential to a successful migration.

Training courses on Java, coupled with on-the-job guidance, are necessary ingredients in transitioning to Java. However, the more important determinant of success has been the individual developer's desire to learn, practice, and repeat.

The resulting Java code should use native data types to separate business logic from data structures, and to enhance the maintainability of the code. Java code also positions the application for better back-end integration with Java 2 Enterprise Edition application servers, improved workflow, and a more flexible, modular N-tier architecture. Business logic and object relationships are often reused, or only slightly modified. This ensures that existing developers are somewhat familiar with the program and data structure of the migrated application.

Automated migration tools help convert PowerBuilder screens to Java GUI clients. Converting to a SWT/JFace Java graphical user interface client is preferred over conversion to Java Swing client. This is because Swing has a larger memory footprint, and the resulting GUIs aren't as attractive across different platforms, such as Windows and Unix. Ideally, the automated conversion tools should be compliant with Java 2 Platform, Standard Edition 5.0. This ensures that resulting Java code is compliant with latest specifications for Java.

Migrating from PowerBuilder to Java will lower long-term software development, deployment, and maintenance costs, while providing additional architectural flexibility, platform independence, and additional headroom for enterprisewide integrated workflow solutions in the future.

-- Anurag Gupta

Peter Sorrentino, TAC Thought Leader, has more than 20 years experience in consulting and software development, with extensive experience in the high-technology and financial industries in trading, cash management, and risk management. His specialties include development of business-differentiating software systems and providing consulting to IT organizations with an emphasis on applications. Consulting expertise includes joint business and IT evaluation of software offerings, business-service platforms, application architecture, and development of best practices in support of real-time business opportunities.

Anurag Gupta, TAC Expert, has more than 12 years experience at Intel and in enterprise platform technologies, performance, architecture, and strategy. He helps companies use technology to build sustainable competitive advantage. He is an Engineering Manager at Intel responsible for the Eclipse open-source development platform program and strategy. He's active in the Eclipse Architecture Council and the Eclipse Requirements Council.

Never Miss a Beat: Get a snapshot of the issues affecting the IT industry straight to your inbox.

You May Also Like

More Insights