Thoroughly Modern: More Than Just A Pretty Face
December 9, 2019 Greg Patterson and Mike Pavlak
The most difficult, thorny, and intractable problems can sometimes be effectively addressed, if not outright fixed, by breaking them down into smaller problems that can be addressed tactically while also hewing to a broader and deeper strategic plan.
That, in a nutshell, is the issue facing most IBM i shops that have not done much application modernization above and beyond pushing the display part of the code to a 5250 green screen emulator or maybe doing a little screen scraping to gussy it up a little bit. The reality is there are still an awful lot of IBM i shops that have not really embarked on their digital transformation journey. The good news is that there has never been a better time to get started because there are a wealth of tools and techniques that can be brought to bear on both the front end and the backend of applications to revitalize them. The user interface is a good place to start, and that is what we are going to focus on today. Well, for the most part, since you can’t really talk about the front end of an application without considering the backend.
Before we get into specifics, the important thing to consider is that the UI modernization process is not a one-time event. Some people wish that they could fire that silver bullet and be done. But UI modernization is about more than making your applications look modern. It’s also about preserving your investment in them and extending their capabilities, taking advantage of modern technologies and adding value to the business.
Green screen modernization has been around for more than three decades in one form or another, and over the years we have been making screens better and more interactive. Once the Web came into the picture, you could deliver modernized screens using a standard Web tool kit, including HTML, CSS, and JavaScript, which took it to a whole new level. And because this technology is all server based, users didn’t have to install software on their clients. But even with all of these advances, somewhere between 80 percent and 85 percent of the IBM i customers we talk to are still looking to modernize their green screens – and these are green screens in their original form. This is their first stab at any modernization outside of using an emulator. The other 15 percent to 20 percent of customers we talk to have perhaps used another tool, and maybe they use a tool that is not supported anymore, or they want to update something they did with a new look and feel that’s also more mobile-friendly.
The point is, there are still so many companies that have not started on their digital transformation journey. At one of the sessions we hosted at the last PowerUP conference, there were several Synon users asking other customers in the room what they were doing to modernize screens and what tools they employed for net-new Web development. Many companies using Synon, RPG, and even COBOL have been running programs for decades, and now they want a fresh face on it and maybe they want to add a little bit extra to the interface. This is not just slapping some lipstick on it, but adding new features, often things that weren’t possible on the green screen, such as images or document links or even consolidated screens so users don’t have to jump into four different systems to find the item on the green screen and then the images on the web server and then the specifications are in a different location.
No matter what the project is, the first thing that we do when we are working with customers is ask questions and decide on a roadmap. Think about it . . . Google Maps only needs two things: Where you are and where you want to go. But it not only tells you one way to get there, but multiple routes, times and traffic conditions along the way based on current road conditions.
When looking at an application modernization project, whether for the front end or the back end of that application, the first question you have to answer is: Where am I? Do you know how many programs you have? Do you know how many applications you have, or how many lines of code? Do you look at your applications logically as one great big ball of mush, or do you have maybe 10 or 15 individual pieces that are highly integrated? So understanding where you are today with your applications is critical.
And then there is the harder issue of where you want to go. Do you need quick results, are you looking to add strategic value with new web applications, or a combination or both? What is your ideal end state 3, 5, or even 10 years down the road? How do you see your IT department aligning with the business and helping the company grow?
Modernizing the UI separate from the back end application could mean maintaining two code bases. But that might be a far better tradeoff than trying to recode all of the “secret sauce” embedded in homegrown RPG or Java applications in yet another language. In the case of many IBM i shops, these applications cannot be replaced easily. Here is a good example: In the retail industry, you have to put things into inventory before you can sell them, usually a 24-hour cycle, but retailers based on the IBM i platform have created very sophisticated algorithms in their code that allow them to sell stuff as soon as it comes into the store and before it is formally stocked. This is a tremendous commercial advantage and touching that code or porting it involves a substantial risk to the business. So the best strategic approach might be the leave that code alone and only change the interfaces as needed. The worst approach might be dropping millions of dollars on a code porting exercise and hope for the best.
On some projects we will start with solutions like Newlook and Presto to work on the obvious issues with the interface, such as the limited size, limited colors, and other layout and resolution aspects of the interface. On some of the projects where clients don’t know where to start, we use a great heatmap feature in Newlook and Presto that shows us how users spend their time in applications. This helps us prioritize modernization efforts and where we might want to further enhance screens to improve workflows and make the end-users’ job easier.
Out of the box, users will have a much-improved experience: Modern, mobile-friendly screens, clickable links and browser-based access to applications. This is a great start. From there, you have flexibility to add new functionality. Visual editors make this easier if you have no web development experience but ultimately you have full control over the UI. You also have flexibility to extend your screens beyond the 5250 datastream. An example of this would be linking to other applications or using APIs to integrate with other technologies and platforms.
As a start, refacing provides some quick wins, especially in terms of productivity, and it gives the IT group that is driving the project some initial success with modernization, which could give them the credibility to justify some larger scale projects.
There is also a lot of value in creating net-new web and mobile applications (e.g., eCommerce, B2B Order Entry and more). Automated solutions like WebSmart really simplify development by providing templates that generate the initial code (RPG, PHP, Node, etc.) as well as built-in developer tools to customize the applications. We hear all the time that developers either don’t have time to start these initiatives or that they don’t have the right tools or skills. There is an abundance of both tooling and services from organizations like Fresche that make it feasible. And, it is easy to justify a strategic web application that is going to drive new sales and improve an organizations competitive advantage. Many of our clients that didn’t have the bandwidth or skills recognized this and took advantage of our team of web development and IBM i experts to build the applications for them.
These two user interface modernization approaches – using tools to reface applications or tools to create whole new interfaces from scratch – differ in the sense that you can think of them as tactical versus strategic. Tactical is right now. Someone in authority at the company might say that a process encapsulated in the application needs to be Web enabled by a given date, and we have got a hard deadline. You have to take the shortest distance between two points, then. With the strategic initiative, you are thinking longer term and might have an application roadmap that goes out three, five, or seven years. With digital transformation, we are talking about a larger investment in many cases – sometimes orders of magnitude more than a refacing project – and so we have to look at the effort, the funding, and the ROI over a longer time.
No matter what, companies really need to have a roadmap. And it doesn’t have to be a perfect plan because there is no perfect plan; it will change a little bit as conditions change. Figuring out where to go on either the front end or the back end requires a plan and a commitment to that plan. The good news is that you can work on these aspects independently, even if there are tradeoffs.
And finally, just a reminder: Chris Koppe and Richard Downey of Fresche Solutions are hosting an online session on Wednesday, December 11, at 1 p.m. Eastern to dive into some of the challenges that Synon users are seeing these days and to discuss how you can address them. UI modernization is one of the key topics they will be discussing. You can register here.
This content is sponsored by Fresche Solutions.
Greg Patterson is an IBM i Modernization Specialist at Fresche Solutions. He has been in the IT field for 18 years, the last 11 with Fresche. In addition to business development activities, Greg also coordinates pre-sales technical demonstrations and discussions, performs business analysis and is sometimes involved at the coding level for specific projects.
Mike Pavlak is an IBM i Strategist at Fresche Solutions. Mike has been working with IBM midrange solutions since 1992 and IBM Mainframes before that. After years of developing applications using RPG, CL and PHP he managed IT development and IT for power protection manufacturer Tripp Lite. Later Mike was instrumental in developing the adoption of PHP as a primary solution for web development on IBM i working with Zend Technologies. Today, as an IT Strategist, Mike helps companies around the world approach the challenges of modernization and open source technologies. In addition to several roles as a volunteer with COMMON the premier IBM midrange user group, Mike also teaches PHP & Python classes part time at Moraine Valley Community College in Suburban Chicago.
RELATED STORIES
Thoroughly Modern: Driving Your Synon Applications Forward
Thoroughly Modern: What To Pack For The Digital Transformation Journey