Welcome!

Java IoT Authors: Liz McMillan, APM Blog, Jnan Dash, Elizabeth White, Stackify Blog

Article

Bridging Unisys MAPPER to Cloud-Ready Java

Legacy Modernization Experts Discuss New Cost-Effective Approach

By John Dandeneau, VP of marketing and business development, Astadia

During a recent webinar, Astadia legacy modernization expert Craig Marble and Abbey Road Software CEO Dave MacSwain discussed how companies can cost-effectively solve the ever-increasing demand for Unisys MAPPER/BIS conversion as they move to the cloud. Today, CIOs take a very different view of MAPPER. Most see it as an increasingly costly application that is keeping them from modernizing their legacy systems and realizing the promise of digital transformation and cloud computing. Typically, the only way available to convert MAPPER to a more modern system is to manually rewrite millions of lines of code and recreate the embedded critical business logic. This is an error-prone process that is loaded with risks and can cost millions or tens of millions of dollars.

Fortunately, there's a better alternative now: Six years in development, MAPPER2Java is a new conversion tool on an automated transformation platform that takes native MAPPER applications and transforms them into cloud-ready Java applications, leveraging the SQL database of the customer's choice. This enables the customer to rapidly move these applications and related databases to the cloud while avoiding the costs and risks associated with a full rewrite of the code. It also helps CIOs avoid further paying significant amounts of money for the recurring high costs of maintaining the Unisys hardware and software. During the webinar, a holistic, step-by-step approach to legacy modernization was outlined, focusing on MAPPER2Java as the tool to migrate legacy Unisys MAPPER/BIS systems to the cloud.

Scott Adams, vice president and CTO of Abbey Road Software, also joined the webinar to answer questions by participants. I have selected the best of the bunch:

Craig: How do you handle MAPPER calculate commands?

Scott: That's one of the most complex commands in MAPPER. One of the things MAPPER is known for is that it's very succinct. You can do a lot of things in a few lines of code. A calculate command tends to have a lot of additional things in it. The calculate command itself is short, and then there are the expressions and conditionals that actually do the work. When you're in Java, you don't have the same sort of expression language built into Java. So what MAPPER2Java does is use formulas, and we use it for @ART, @CHG and @DC as well. That allows us to carry forward some of that succinctness of an expression that's embedded as part of the instructions on how you process results with @CAL. So, that's one key part of MAPPER2Java - the idea of formulas. We also modify Spring (open source project), which is a lightweight framework in the Java world. It's called a "Spring Expression Language" (SpEL), and we based our formulas off this standard SpEL. That's a key part of it. There are also some Java patterns we have to apply to iterate through the result set. There's the idea of decorators for things like summing a column using the vertical functions; record projection comes into play which is a large topic in itself. Also, the idea of context is important, meaning you are on a row identified by line number, which is another thing we could segue into: "How do you handle line numbers?" which are very prevalent in a MAPPER application; how do they carry forward in an M2J application?

Craig: Do you support other relational databases as target platforms for MJ support?

Scott: Yes. We're agnostic. We've been targeting Oracle because it has a high penetration in the enterprise space. But since we're using Hibernate for object relational mapping, it has a number of other dialects. For example, you could do Microsoft's SQL Server, Derby or MySQL. There are a number of options there.

Craig: Does Java run on Windows with the same JVM interface as other operating systems?

Scott: Yes, it does. You can get a JVM that runs fine on Windows from Oracle. IBM sells a variation of the old Sun JVM that they've enhanced that can be run on commodity hardware. What we recommend is that you have a 64-bit JVM. If you have some 32-bit machines lying around, those are great for development, but for anything serious in production or for performance testing, you definitely want a 64-bit JVM.

Craig: How are the result RIDs handled in the new framework?

Scott: Everything is a RID in MAPPER. It could contain a run; it could contain a screen; it could contain data. And what M2J is doing is converting the data reports to a relational database. You can query that relational database with a "search" or a binary find, and you can get a result out of it. And there are other ways to get results. What we do there is, since it's Java, everything is a class, but you've got a collection of classes, and we leverage something called CQ engine which is a very fast, efficient way of representing a collection of objects. Once again, we're in the Java world now - bridging that gap between MAPPER and Java - and you can search using SQL dialect, but you can also search using what I'll call some sort of "algebra" on a collection. The upshot is that the search features that work on a MAPPER report or a MAPPER results set can be carried over to Java.

Craig: Does it handle line continuations in the MAPPER code, or does each line need to start with @?

Scott: No, you can cram all of your MAPPER commands onto one line. If that's what you've got, we would parse that.

Craig: How are line types handled?

Scott: The line type is preserved because that's something we just have to do. So, let's go back to our first question on the conversion of MAPPER (which is very succinct and has served a lot of these organizations very well) and what do you do when you're trying to get to the cloud, which is easier to do with another technology like Java and JEE. When we migrate and move, we retain the line type which can be enumerated if it makes sense. For example, if you have multiple line types that somehow convey information about the type of record, we can create in Java what is called an enumeration so you can get a better representation of what the line type represents. The line type might signify an order that has been fulfilled, an order that is back ordered or something like that. Or you can just store the actual line type character itself. But it gets stored on something we call a "shadow table." We take the rows, and there could be trailer lines because they represent a different entity, that represent entities and convert them into a relational database. They're represented in Java as "entity objects." And the line type is stored in a shadow table that is joined to the table that stores the business data.

The idea is that after you have converted the application, you run it for a while and make sure that it works; as part of the migration, you're going to have this shadow table. As you evolve and enhance away from some of those paradigms that came over from MAPPER and refactor some code, you can drop that shadow table. So the line type goes away after a while. It doesn't have to. You can continue to run the initially migrated code for as long as you want, but most organizations eventually get to this "enhance and evolve" phase where you remove things like the shadow table as an artifact of the migration.

Craig: How is code with looped @RLN handled?

Scott: The line numbers are tricky to migrate. What we do with the line numbers is we carry them over as well, but we carry them over for the purpose of having them be relative positions. They are carried over in the shadow table. Therefore, if you had 10 lines in the MAPPER report, the line numbers would be 1 through 10 in MAPPER, but when that data actually gets loaded into the shadow table, the line numbers are spaced at intervals. For example, the first line might be loaded as line number 500, and the next one might be line number 1,000. In other words, there are gaps that allow inserts to occur. You can still seek to a line number, but the main thing we are interested in is going back and forth, traversing by line number. You can increment the line number (or decrement the line number). So when you add to a line number and the application seeks to it, you're really saying "advance to the next line." If the application is adding three to the current line number (for example, line number 1), you can see how those kinds of things can be tricky to deal with. We treat this example as a relative thing - advance three rows instead of seeking to row with line number 4.

The move from MAPPER to Java is a path that many will take. To learn more, the on-demand recording of the webinar can be accessed at http://www.astadia.com/insights.

As first published in Dzone.

###

John Dandeneau is vice president of marketing and business development at Astadia, a premier cloud consultancy for businesses expanding to the cloud. He brings more than 20 years of experience to planning and executing marketing and partner strategies. John holds a bachelor's degree in Management Science and Decision Support Systems from Virginia Tech. Follow Astadia at @AstadiaInc, Facebook/AstadiaInc, and LinkedIn/Astadia.

More Stories By Astadia CloudGPS

Astadia is a premier technology services consultancy for businesses expanding to the cloud. We bring industry insights and a keen eye for our clients’ bottom line that makes us an ideal and trusted partner for responding to business and technology change.

@ThingsExpo Stories
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection between Coke and its customers. Digital signs pair software with high-resolution displays so that a message can be changed instantly based on what the operator wants to communicate or sell. In their Day 3 Keynote at 21st Cloud Expo, Greg Chambers, Global Group Director, Digital Innovation, Coca-Cola, and Vidya Nagarajan, a Senior Product Manager at Google, discussed how from store operations and ...
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
It is of utmost importance for the future success of WebRTC to ensure that interoperability is operational between web browsers and any WebRTC-compliant client. To be guaranteed as operational and effective, interoperability must be tested extensively by establishing WebRTC data and media connections between different web browsers running on different devices and operating systems. In his session at WebRTC Summit at @ThingsExpo, Dr. Alex Gouaillard, CEO and Founder of CoSMo Software, presented ...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, introduced two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a multip...
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, whic...
SYS-CON Events announced today that Evatronix will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Evatronix SA offers comprehensive solutions in the design and implementation of electronic systems, in CAD / CAM deployment, and also is a designer and manufacturer of advanced 3D scanners for professional applications.
Leading companies, from the Global Fortune 500 to the smallest companies, are adopting hybrid cloud as the path to business advantage. Hybrid cloud depends on cloud services and on-premises infrastructure working in unison. Successful implementations require new levels of data mobility, enabled by an automated and seamless flow across on-premises and cloud resources. In his general session at 21st Cloud Expo, Greg Tevis, an IBM Storage Software Technical Strategist and Customer Solution Architec...
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...
An increasing number of companies are creating products that combine data with analytical capabilities. Running interactive queries on Big Data requires complex architectures to store and query data effectively, typically involving data streams, an choosing efficient file format/database and multiple independent systems that are tied together through custom-engineered pipelines. In his session at @BigDataExpo at @ThingsExpo, Tomer Levi, a senior software engineer at Intel’s Advanced Analytics gr...