Sidebar

Using New Tools to Maintain Legacy Apps

General
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

The default situation for buying an application development tool is when you are building a system from the ground up. Nothing out there suits your business, so you need to write your own from scratch. Hello, Google! Another is when you have to add a new application, one whose features and functions are different enough from your existing systems as to require a new way to develop code. Maybe you need to add browser-based order entry to your existing green-screen business suite.

However, given the potential productivity benefits of the new generation of tools, it may be to your advantage to think about moving some or all of your development to new tooling. But can you really maintain existing applications with these new products?

The answer depends on what you want to do and which tool you want to do it with. Tooling ranges from Integrated Development Environments (IDEs) such as WebSphere Development Studio Client for System i (WDSC) to complete application development (AD) suites from vendors such as LANSA, BCD, or CA. In between, you'll find application generators and refacing tools. (Some vendors will even try to convince you to migrate your mission-critical applications off of the System i onto Windows. I believe Dante designated the Fourth Circle of Hell for those folks.)

As you might guess, each of these options has a different scope, and which one suits you best depends on your needs. Let me move from the finest grain on down to the easiest.

Application Development Suites

The goal of AD suites is to allow you to define repositories of business rules that can then be used to quickly build powerful applications. Unlike the more data-centric 4GL products of the '90s (some of you might remember the AS/SET tool from System Software Associates), the newer generation of tools is designed to help you create business rules and then build applications from there.

The benefit of this sort of approach is that the business rules should be transparent to the user interface; with the right tooling, you ought to be able to develop applications that work with Web browsers as easily as with thick clients, cell phones, or even green-screens. You would define your business rules once and then be able to concentrate on building the sort of interface features that your users need. And for ground-up application design, these tools provide huge benefits.

However, if you already have applications, it's not so easy to take advantage of these tools. The biggest hurdle facing existing shops is encapsulating existing business rules. Various vendors claim to have tools that "extract" business rules from existing green screen applications, but to my knowledge there isn't a single product available that actually succeeds at this to any significant degree. There are only two ways to do this: wrapper existing green-screen applications and in effect emulate keystrokes or else actually go into the RPG code and try to separate database logic from screen I/O without introducing any errors. The former has serious performance implications, while the latter is nearly impossible to do using programmatic techniques.

Not only that, but there is the not-so-minor issue of whether or not the vendor's business rules repository is flexible enough to handle your more-complex business rules. To take a very simplistic example, let's say a vendor's repository allows for only 13 accounting periods, and you have 14. No matter what you do, your business rules won't fit into the vendor's repository. So you need to perform a thorough examination of the vendor's framework to make sure your business fits into it.

Note that this is usually much more of an issue for packaged software than application development (AD) tools, but even AD tools have limitations. You need to spend some time mapping your requirements to the tool's capabilities before you even embark on a migration.

Once you do have a repository in place, life is wonderful, but getting your business rules into the repository is the biggest cost for this environment. In reality, you wouldn't maintain your existing applications; you would actually migrate your applications into the repository of the tool.

Application Generation Tools

Application generation tools are a bit different. The primary purpose of these tools is to build applications from predefined templates. Typically, these tools have a number of templates available. For example, a CRUD (Create, Read, Update, Delete) template is used to quickly build a file maintenance application. Depending on the tool, you can start at the file level by defining the fields in a new file, which the tool will then build for you, or you can specify an existing file and the tool will use that as its starting point.

These are more like expert systems in that the vendor has encapsulated its experience and expertise in program design into a set of coding patterns that are then extended when you provide information about your application. Typically, the business rules are simple and predefined, although the more advanced tools have some sort of exit points where you can insert your own custom logic. By and large, though, these tools are not intended to build complex, data-driven business applications, such as pricing or order processing. These tools are better suited to providing the store-front order-entry capabilities of a Web store and then allowing the back-end processing to actually handle the data. Another place these products excel is at designing standard data mining and inquiry applications, with various levels of data manipulation and drill-down capabilities.

Because of this, a good application generation tool could be a huge asset to an existing application. If it allows easy access to existing data files and is extensible, then it can probably be made to work with your existing applications relatively easily. The biggest question then is whether or not the user interface capabilities of the tool are enough for all of your business needs.

Typically, these tools have relatively hard-coded user interfaces. Because of the nature of a template-driven design, you usually have little say over the final product other than simple cosmetics (logos, colors, and the like). For example, a CRUD application may present data in a table, with each row having a set of icons that represent add, update, and delete. You wouldn't be able to change that basic capability. For example, you might instead want to have a checkbox on each record and then a button on the bottom of the panel to allow you to delete a whole set of records at once. With an application generator, you pretty much get whatever the vendor gives you. It's rare to find a tool like this with completely extensible templates.

If, though, the basic application style meets your requirements, then an application generator is likely to be one of the fastest methods to extend your application. The only question then is whether the tool has the capability of interacting seamlessly with other applications. For example, let's say you wanted to write your own application and combine it with the generated code. Can you somehow pass information between the two applications (in a browser, this might be done by passing parameters in the URL)? If the tool provides this level of integration with external applications, it means you can add your own code regardless of the capabilities of the supplied templates, which makes the tool much more flexible.

Integrated Development Environments (IDEs)

The last category of tools are the IDEs. IDEs are not application development tools like the previous tools. Typically, IDEs provide little in the way of application-building expertise (although that depends on the IDE, and I'll touch on that in a moment). Generally speaking, IDEs provide you with a workbench from which you can easily develop—and even more importantly, debug—your applications. The best IDEs provide powerful source-level debugging capabilities and excellent GUI tools to make it easy to develop applications.

One of the long-time leaders in this category has been Microsoft and its Visual Studio tools. Going back to the early days of Visual Basic, Microsoft tried to make it easier and easier for even non-programmers to build applications. With lots of point-and-click capabilities and extensive help support and online examples, it was easy for even hobbiests to put together working software. This capability has affected many tool vendors and has led to entire projects such as Eclipse, where the focus was on a simple, consistent interface that can be extended to provide all manner of development capabilities.

The pinnacle of that design today is WDSC, which is a complete end-to-end development tool that allows you to maintain and debug all the components of a multi-platform, multi-tiered application. The important part of that sentence is the fact that you can use the IDE to maintain your exiting code. You don't even have to want to modernize your application in order to take advantage of the features of WDSC; for example, a large screen allows you to have 60 lines each of four different source files all visible at the same time. That's a huge improvement over anything you'd be able to accomplish in a green-screen environment.

At the same time, WDSC allows you to build Web applications from scratch, using industry-standard languages such as Java, complete System i–centric designs such as RPG CGI, or multi-tiered architectures using a JavaServer Pages (JSP) front-end connected to RPG business logic. WDSC includes a powerful WYSIWYG HTML and JSP editor with extensive drag-and-drop design capabilities and a complete snippet library. The Site Designer is a Web site layout tool with complete template-driven design and the ability to easily apply different templates to different portions of your Web site; it also provides a consistent auto-generated navigation capability. The Cascading Style Sheet (CSS) editor is perhaps the best available today. With its integrated WebSphere Test Environment and the ability to set breakpoints on both the workstation and the host, WDSC is pretty much the only IDE that can allow you to test multi-platform, multi-language designs from end to end.

And it's a good thing that WDSC is such a great tool, because frankly it's the only thing we have. All other IDEs are targeted at markets other than the System i, ranging from Microsoft's Windows focus to the slew of Java-related IDEs to even the handful of mainframe development tools. No other tool targets the System i, but that's OK, because ours is the best.

One other point about WDSC: WDSC is a Rational tool. That is, it's based on the Rational AD product suite. Because of that, WDSC is compatible with something called the Rational Business Developer, which is tooling for the EGL language. You may not have heard about EGL yet, but you will over the coming months and years because IBM is really focusing on it. EGL is a 4GL that is currently highly data-centric, but the new version has a lot of application-generation capabilities as well as some powerful user-interface features, so you may want to take a look at the tool when you get a chance. IBM is positioning this product squarely as an application development suite, so if you're looking to create new applications, IBM would want you to take a serious look at EGL.

From my perspective as a System i developer, I'm far more intrigued by the capabilities as a remarkably easy way to develop browser pages that can interact with RPG business logic. I've written a number of articles on this technique; with just a few lines of EGL code, you can take the fields from a JSP page (actually a JavaServer Faces or JSF page) and pass them in a data structure to an RPG program to perform business logic. This capability, which I call "SDA for the browser" (much to the chagrin of the EGL developers) is exactly what System i developers need to move from the green-screen to the Web.

The only problem is that as of WDSC Version 7, IBM unbundled EGL from the base WDCS package. System i developers can only get it as an upgrade to WDSC Version 6 until June 30; after that, it becomes a separately charged product. So if you want to see what this language has to offer, you have to jump on the opportunity immediately.

Other Application Enhancements

One other quick boost that you might consider is a Web-enablement tool. Various refacing strategies exist that allow you to put a browser interface onto your existing green-screen applications. However, since these tools don't really have anything to do with maintaining your applications (they are an additional step after you maintain the green-screen application), they fall outside of the scope of this article.

The reason I bring this up, though, is that a Web-enablement tool may afford you some tactical breathing space as you begin your strategic deployment initiative. Tools such as WebFacing can give you a new UI to present to your users as you identify the best tool for your long-range development and begin to deploy it. Disclosure: I sell such a tool, so take this paragraph with the appropriate grain of salt.

In any case, the new tools available today can help you to maintain your existing applications, whether or not you need to make major enhancements. Even if your primarily development strategy right now is "if it ain't broke, don't fix it," the tools today will still make it easier to fix things when they are broken. The question is not whether you should use new tools, but which one you should use.

Joe Pluta is the founder and chief architect of Pluta Brothers Design, Inc. and has been extending the IBM midrange since the days of the IBM System/3. Joe uses WebSphere extensively, especially as the base for PSC/400, the only product that can move your legacy systems to the Web using simple green-screen commands. He has written several books, including E-Deployment: The Fastest Path to the Web, Eclipse: Step by Step, and WDSC: Step by Step. Joe performs onsite mentoring and speaks at user groups around the country. You can reach him at This email address is being protected from spambots. You need JavaScript enabled to view it..

Joe Pluta

Joe Pluta is the founder and chief architect of Pluta Brothers Design, Inc. He has been extending the IBM midrange since the days of the IBM System/3. Joe uses WebSphere extensively, especially as the base for PSC/400, the only product that can move your legacy systems to the Web using simple green-screen commands. He has written several books, including Developing Web 2.0 Applications with EGL for IBM i, E-Deployment: The Fastest Path to the Web, Eclipse: Step by Step, and WDSC: Step by Step. Joe performs onsite mentoring and speaks at user groups around the country. You can reach him at joepluta@plutabrothers.com.


MC Press books written by Joe Pluta available now on the MC Press Bookstore.

Developing Web 2.0 Applications with EGL for IBM i Developing Web 2.0 Applications with EGL for IBM i
Joe Pluta introduces you to EGL Rich UI and IBM’s Rational Developer for the IBM i platform.
List Price $39.95

Now On Sale

WDSC: Step by Step WDSC: Step by Step
Discover incredibly powerful WDSC with this easy-to-understand yet thorough introduction.
List Price $74.95

Now On Sale

Eclipse: Step by Step Eclipse: Step by Step
Quickly get up to speed and productivity using Eclipse.
List Price $59.00

Now On Sale

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

RESOURCE CENTER

  • WHITE PAPERS

  • WEBCAST

  • TRIAL SOFTWARE

  • White Paper: Node.js for Enterprise IBM i Modernization

    SB Profound WP 5539

    If your business is thinking about modernizing your legacy IBM i (also known as AS/400 or iSeries) applications, you will want to read this white paper first!

    Download this paper and learn how Node.js can ensure that you:
    - Modernize on-time and budget - no more lengthy, costly, disruptive app rewrites!
    - Retain your IBM i systems of record
    - Find and hire new development talent
    - Integrate new Node.js applications with your existing RPG, Java, .Net, and PHP apps
    - Extend your IBM i capabilties to include Watson API, Cloud, and Internet of Things


    Read Node.js for Enterprise IBM i Modernization Now!

     

  • Profound Logic Solution Guide

    SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation.
    Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects.
    The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the companyare not aligned with the current IT environment.

    Get your copy of this important guide today!

     

  • 2022 IBM i Marketplace Survey Results

    Fortra2022 marks the eighth edition of the IBM i Marketplace Survey Results. Each year, Fortra captures data on how businesses use the IBM i platform and the IT and cybersecurity initiatives it supports.

    Over the years, this survey has become a true industry benchmark, revealing to readers the trends that are shaping and driving the market and providing insight into what the future may bring for this technology.

  • Brunswick bowls a perfect 300 with LANSA!

    FortraBrunswick is the leader in bowling products, services, and industry expertise for the development and renovation of new and existing bowling centers and mixed-use recreation facilities across the entertainment industry. However, the lifeblood of Brunswick’s capital equipment business was running on a 15-year-old software application written in Visual Basic 6 (VB6) with a SQL Server back-end. The application was at the end of its life and needed to be replaced.
    With the help of Visual LANSA, they found an easy-to-use, long-term platform that enabled their team to collaborate, innovate, and integrate with existing systems and databases within a single platform.
    Read the case study to learn how they achieved success and increased the speed of development by 30% with Visual LANSA.

     

  • The Power of Coding in a Low-Code Solution

    LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed.
    Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

    • Discover the benefits of Low-code's quick application creation
    • Understand the differences in model-based and language-based Low-Code platforms
    • Explore the strengths of LANSA's Low-Code Solution to Low-Code’s biggest drawbacks

     

     

  • Why Migrate When You Can Modernize?

    LANSABusiness users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.
    In this white paper, you’ll learn how to think of these issues as opportunities rather than problems. We’ll explore motivations to migrate or modernize, their risks and considerations you should be aware of before embarking on a (migration or modernization) project.
    Lastly, we’ll discuss how modernizing IBM i applications with optimized business workflows, integration with other technologies and new mobile and web user interfaces will enable IT – and the business – to experience time-added value and much more.

     

  • UPDATED: Developer Kit: Making a Business Case for Modernization and Beyond

    Profound Logic Software, Inc.Having trouble getting management approval for modernization projects? The problem may be you're not speaking enough "business" to them.

    This Developer Kit provides you study-backed data and a ready-to-use business case template to help get your very next development project approved!

  • What to Do When Your AS/400 Talent Retires

    FortraIT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators is small.

    This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn:

    • Why IBM i skills depletion is a top concern
    • How leading organizations are coping
    • Where automation will make the biggest impact

     

  • Node.js on IBM i Webinar Series Pt. 2: Setting Up Your Development Tools

    Profound Logic Software, Inc.Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. In Part 2, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Attend this webinar to learn:

    • Different tools to develop Node.js applications on IBM i
    • Debugging Node.js
    • The basics of Git and tools to help those new to it
    • Using NodeRun.com as a pre-built development environment

     

     

  • Expert Tips for IBM i Security: Beyond the Basics

    SB PowerTech WC GenericIn this session, IBM i security expert Robin Tatam provides a quick recap of IBM i security basics and guides you through some advanced cybersecurity techniques that can help you take data protection to the next level. Robin will cover:

    • Reducing the risk posed by special authorities
    • Establishing object-level security
    • Overseeing user actions and data access

    Don't miss this chance to take your knowledge of IBM i security beyond the basics.

     

     

  • 5 IBM i Security Quick Wins

    SB PowerTech WC GenericIn today’s threat landscape, upper management is laser-focused on cybersecurity. You need to make progress in securing your systems—and make it fast.
    There’s no shortage of actions you could take, but what tactics will actually deliver the results you need? And how can you find a security strategy that fits your budget and time constraints?
    Join top IBM i security expert Robin Tatam as he outlines the five fastest and most impactful changes you can make to strengthen IBM i security this year.
    Your system didn’t become unsecure overnight and you won’t be able to turn it around overnight either. But quick wins are possible with IBM i security, and Robin Tatam will show you how to achieve them.

  • Security Bulletin: Malware Infection Discovered on IBM i Server!

    SB PowerTech WC GenericMalicious programs can bring entire businesses to their knees—and IBM i shops are not immune. It’s critical to grasp the true impact malware can have on IBM i and the network that connects to it. Attend this webinar to gain a thorough understanding of the relationships between:

    • Viruses, native objects, and the integrated file system (IFS)
    • Power Systems and Windows-based viruses and malware
    • PC-based anti-virus scanning versus native IBM i scanning

    There are a number of ways you can minimize your exposure to viruses. IBM i security expert Sandi Moore explains the facts, including how to ensure you're fully protected and compliant with regulations such as PCI.

     

     

  • Encryption on IBM i Simplified

    SB PowerTech WC GenericDB2 Field Procedures (FieldProcs) were introduced in IBM i 7.1 and have greatly simplified encryption, often without requiring any application changes. Now you can quickly encrypt sensitive data on the IBM i including PII, PCI, PHI data in your physical files and tables.
    Watch this webinar to learn how you can quickly implement encryption on the IBM i. During the webinar, security expert Robin Tatam will show you how to:

    • Use Field Procedures to automate encryption and decryption
    • Restrict and mask field level access by user or group
    • Meet compliance requirements with effective key management and audit trails

     

  • Lessons Learned from IBM i Cyber Attacks

    SB PowerTech WC GenericDespite the many options IBM has provided to protect your systems and data, many organizations still struggle to apply appropriate security controls.
    In this webinar, you'll get insight into how the criminals accessed these systems, the fallout from these attacks, and how the incidents could have been avoided by following security best practices.

    • Learn which security gaps cyber criminals love most
    • Find out how other IBM i organizations have fallen victim
    • Get the details on policies and processes you can implement to protect your organization, even when staff works from home

    You will learn the steps you can take to avoid the mistakes made in these examples, as well as other inadequate and misconfigured settings that put businesses at risk.

     

     

  • The Power of Coding in a Low-Code Solution

    SB PowerTech WC GenericWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed.
    Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

    • Discover the benefits of Low-code's quick application creation
    • Understand the differences in model-based and language-based Low-Code platforms
    • Explore the strengths of LANSA's Low-Code Solution to Low-Code’s biggest drawbacks

     

     

  • The Biggest Mistakes in IBM i Security

    SB Profound WC Generic The Biggest Mistakes in IBM i Security
    Here’s the harsh reality: cybersecurity pros have to get their jobs right every single day, while an attacker only has to succeed once to do incredible damage.
    Whether that’s thousands of exposed records, millions of dollars in fines and legal fees, or diminished share value, it’s easy to judge organizations that fall victim. IBM i enjoys an enviable reputation for security, but no system is impervious to mistakes.
    Join this webinar to learn about the biggest errors made when securing a Power Systems server.
    This knowledge is critical for ensuring integrity of your application data and preventing you from becoming the next Equifax. It’s also essential for complying with all formal regulations, including SOX, PCI, GDPR, and HIPAA
    Watch Now.

  • Comply in 5! Well, actually UNDER 5 minutes!!

    SB CYBRA PPL 5382

    TRY the one package that solves all your document design and printing challenges on all your platforms.

    Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product.

    Request your trial now!

  • Backup and Recovery on IBM i: Your Strategy for the Unexpected

    FortraRobot automates the routine tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:
    - Simplified backup procedures
    - Easy data encryption
    - Save media management
    - Guided restoration
    - Seamless product integration
    Make sure your data survives when catastrophe hits. Try the Robot Backup and Recovery Solution FREE for 30 days.

  • Manage IBM i Messages by Exception with Robot

    SB HelpSystems SC 5413Managing messages on your IBM i can be more than a full-time job if you have to do it manually. How can you be sure you won’t miss important system events?
    Automate your message center with the Robot Message Management Solution. Key features include:
    - Automated message management
    - Tailored notifications and automatic escalation
    - System-wide control of your IBM i partitions
    - Two-way system notifications from your mobile device
    - Seamless product integration
    Try the Robot Message Management Solution FREE for 30 days.

  • Easiest Way to Save Money? Stop Printing IBM i Reports

    FortraRobot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing.
    Manage your reports with the Robot Report Management Solution. Key features include:

    - Automated report distribution
    - View online without delay
    - Browser interface to make notes
    - Custom retention capabilities
    - Seamless product integration
    Rerun another report? Never again. Try the Robot Report Management Solution FREE for 30 days.

  • Hassle-Free IBM i Operations around the Clock

    SB HelpSystems SC 5413For over 30 years, Robot has been a leader in systems management for IBM i.
    Manage your job schedule with the Robot Job Scheduling Solution. Key features include:
    - Automated batch, interactive, and cross-platform scheduling
    - Event-driven dependency processing
    - Centralized monitoring and reporting
    - Audit log and ready-to-use reports
    - Seamless product integration
    Scale your software, not your staff. Try the Robot Job Scheduling Solution FREE for 30 days.