Fresche Legacy Advances App Dev Integration Plan
April 27, 2015 Dan Burger
A lack of IT integration is costing organizations untold, but not unquantifiable, sums of money. The noose on careless spending is tightening as the realization of integration benefits slowly comes into focus in specific areas–one of those being application development and modernization projects, which are top concerns for many businesses. Shortening the development process, increasing the quality of applications before turning them loose in production, and reducing the maintenance burden are all part of integration goals.
With integration as a target, Fresche Legacy has taken a step toward combining development tools, code analytics, and software change management by integrating its X-Analysis software with IBM‘s Rational Developer for i (RDi) and change management software from Remain Software.
Those three parts–code writing and editing, code analytics, and software change management–each require different tools. As developers jump from one tool to another to do what they do, it’s not especially efficient, even when people become adept at bouncing back and forth. It’s not an optimized workflow.
Fresche Legacy wants to create a unified software change management workflow. To facilitate the integration, Fresche is providing an open API for X-Analysis, its code analysis suite of products, with the expectation that other software change management (SCM) vendors will view this opportunity for development process integration in the same light. Two additional SCM providers, Midrange Dynamics and Aldon, are showing “strong interest,” according to Fresche Legacy.
The analysis and documentation functionality of X-Analysis is the key element in this integrated workflow improvement, which was designed to provide one starting point for all three ingredients: the graphical development environment, the deep code analysis, and the tracking and controlling of code. That starting point is the users’ choice of environments.
The Eclipse-based plug-in architecture is a good fit for the Rational development tools and accommodates the evolution of new plug-ins from the open source community, which is likely a more common scenario in the future. More tools are gravitating toward an Eclipse-based interface. It’s a simple standard to integrate into, plus it offers great integration with other tools. X-Analysis functionality directly available from the RDi Remote Systems LPEX editor is a result of improvements in the integration that has existed between RDi and X-Analysis for years.
Remain Software’s TD/OMS benefits from extensions to IBM’s RDi LPEX editor and the depth of analysis that X-Analysis integration brings. TD/OMS already included code analysis capabilities, but not to the extent of X-Analysis, which not only goes down to the lines of code and the business logic, but also brings visualization to the analyzing process.
Generally speaking, the software change management vendors have built in some code analysis features that relate to impact analysis and mapping object-to-object relationships. The difference between SCM impact analysis and the capabilities of X-Analysis is glaring. With X-Analysis, the capabilities include variable tracing of where info has traveled, detailed mapping of connections, dataflow, screen flow, program flow, and structure charts. It provides a system visualization that clarifies how data flows through the system and how files are connected to specific screens and programs. Users also get a look at business rules that includes tracing the rules that govern data, quality control and data control.
Application and database professionals usually advise that the first step in a modernization project is to understand what you have. X-Analysis is the type of tool that brings that understanding to light and often leads to code restructuring.
The only other widely available tool with similar capabilities that I’m aware of is the ARCAD Software‘s Source Code Analyzer.
To improve workflow in the development process you begin by asking what do developers spend time doing? Well, they get hit with things coming in from the business side such as code editing, debugging, compiling, and analysis–things that get logged into some type of change management system. That system is sometimes pretty crude and sometimes very sophisticated.
Chris Koppe, vice president of corporate strategy at Fresche Legacy, describes the X-Analysis piece in this unified workflow process as “perfecting the art of analysis.” Of course, the road to perfection is always under construction, but a work in progress is far better than no progress at all. Koppe’s point is that X-Analysis is good at deconstructing applications, which provides deep insight into a system. It also reveals changes that need to be made and the impacts of those changes.
Koppe, talking about the inefficiencies in the development process, estimates that only 30 percent to 40 percent of the existing X-Analysis customers are using change management software. And that includes large companies with good systems in place all the way down to small shops with home-grown change management that consists of a single procedure with a few programs to back it up.
“Developers enter the development process in a number of ways,” Koppe says. “Some developers start off in their SCM. They record a ticket and the tasks related to it and they break it down before starting another activity. From there they may go to an editor and open the source because they determined it’s a straight forward program. Others may decide some impact analysis needs to be made for deeper understanding before going forward. Developers should have a single interface to all these functionalities that are RDi, SCM, or X-Analysis.”
Increases in productivity are why new tools get built or new integrations are created. Improving a process, goes beyond productivity, Koppe says, and includes higher quality. Higher quality code is generally assumed to be code that is audited and peer reviewed before it gets promoted to production. Peer review, of course, is a human process.
“X-Analysis goes beyond that to a level where the code is analyzed automatically,” Koppe continues. “It assesses the code and, if there are problems, it prevents the code from being checked in. It’s automated quality control that adheres to standards.”
Without quality control, over time you get developers using different coding methods and a mish-mask of coding styles. The older the code the more incoherent it tends to become to the next developer who has to deal with it. When there are no controls in place, quality suffers.