IBM Systems Magazine, Mainframe - January/February 2018 - SE11
Sponsored Advertising Content
Automated Code Analysis
Is Essential to Your Mainframe
CM First Group
JOHN RHODES - CTO
John Rhodes focuses on
bringing legacy assets into
the digital economy.
As the digital economy continues to grow and evolve, organizations are quickly
realizing that their custom software is their competitive advantage. As a result, the
industry is starting to see an increased focus on reducing development cycle times
by applying agile development techniques and DevOps process automation.
Automated software analysis must be an integral part of any organization's
DevOps strategy; however, many organizations have not yet integrated static analysis
on an enterprise basis. Those that have made the shift to enterprise software models
and automated analysis are reaping the rewards. The immediate benefit of static
analysis is decreased development time and an increased capability to accurately
scope and estimate development efforts. Large software code bases are impossible
to fully comprehend without tools, particularly with legacy systems where the original
architects and developers have retired or moved on. The savings that come from
automation are considerable; customers have reported reduced engineering time by
up to 80 percent. This includes projects such as COBOL version uplifts, identifying
problematic performance bottlenecks and mass change due to new requirements.
Automated analysis also enables organizations to manage the technical debt
that occurs when shortcuts are taken over time, which is inevitable in large legacy
systems. Due to their complexity, technical debt projects are difficult to undertake
manually and are therefore often delayed until a major new requirement or
regulation forces the issue. However, once the code is modeled, code quality can be
assessed and improved over time using industry-standard metrics. Also important is
identifying and removing dead and cloned code, which can cost organizations $1 per
line of code to maintain annually.
A further benefit of software models is the capability to automatically identify
and manage business rules. Business rules are notoriously difficult to identify by
hand because the implementation of a rule often crosses program boundaries and
interfaces. Program slicing techniques are used to identify logic involved with a
particular rule pattern. Once the rules are extracted and combined with business
terminology, they can be used in decision models or business rule engines or
extended to new software.
All organizations with legacy code should look to add automated analysis to their
DevOps cycles. The benefits are substantial and immediate.
ibmsystemsmag.com/buyersguide 2018 // 11