Using slicing to extract online services from batch programs

Transaction processing a key constituent of the IT workload
for commercial enterprises (e.g., banks, insurance companies). Even to-
day, in many large enterprises transaction processing is done by legacy
batch applications, that run offline and process accumulated transac-
tions. Identifying independent services from these batch applications is
a hard problem the enterprises are grappling with, and one without sat-
isfactory automated solutions.
In this paper we propose a novel static-analysis-based solution to the
problem of identifying transaction processing loops in batch programs
that can bedeserialized, to yield services that are invocable online. Our
solution is based on a combination of detecting conditional code exe-
cution regions, backward slicing, and parallelizability detection, and is
well suited to the idioms commonly exhibited by batch programs. We
evaluate our solution in the context of a case study.

By: Komondoor Raghavan, Krishna Nandivada Venkata, Saurabh S Sinha and John Field

Published in: RI09001 in 2009

LIMITED DISTRIBUTION NOTICE:

This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.

RI09001.pdf

Questions about this service can be mailed to reports@us.ibm.com .