Our technology
When it comes to working with existing applications, a prepackaged product can rarely cover all the particular requirements of a given project. For this reason we employ technologies which could be customized and adapted to the specifics of each project. Such technologies are sometimes called "service software" or "serviceware".
The Batch Process Optimizer
A batch process that was set up decades ago and went through multiple enhancements and modifications due to changing business requirements may have accumulated a number of inefficiencies. The Batch Cycle Optimizer is a software tool that helps discover such inefficiencies, resulting in a streamlined and optimized batch process which is easy to understand and maintain.
The Batch Cycle Optimizer delivers three types of functions:
- Transparency - the ability to visualize and understand the batch process
- Optimization - the capability to modify the schedule or the jobs in such a way as to deliver the same functionality in less time and with less CPU consumption.
- Prevention - the ability to discover the scenarios that lead to possible disasters and to take preventive steps to avoid them.
Here are ten results we deliver as a result of our analysis and optimization:
- A complete visual representation of the batch process, rendered in a friendly interface, easy to understand and use to make improvements.
- Multiple queries that reveal, among other things
- The inputs to the batch cycle, including interfaces from other applications or systems
- The persistent outputs, including interfaces to other applications and systems
- The jobs and steps relevant to a particular aspect of the application (for instance, everything having to do with money transfers)
- The discovery of left-over jobs that produce outputs no longer consumed either inside or outside of the batch process. Such leftovers may be eliminated, together with other steps that run in order to provide inputs for them.
- The cleanup of obsolete reports which nobody needs anymore. This is a non-trivial task, as usually many steps are run to fed information into a report. The tool and technology help discover which steps can be eliminated and which must be kept because they contribute to other essential tasks.
- The discovery of potential step mergers. Such mergers may be performed because multiple programs read the same inputs. It is more efficient to read the data once and produce all desired output, rather than read it again every time.
- The discovery of all opportunities for parallelism. If enough computing power is available, some can run in parallel. This improvement can save precious time from the batch cycle window. With the Batch Cycle Optimizer, one can create schedules based on a specific or indefinite number of queues capable to run parallel jobs.
- A client defined priority classification of process outputs, followed by a discovery of the execution jobs and steps relevant to a particular priority.
- An interactive what-if scenario play, by which one can determine the impact of any set of failures at any number of points in the process.
- Definition of alternative reduced batch cycles, which only produce high priority outputs. In case of some outside disasters, one may run the reduced cycle instead of the whole cycle.
- A risk classification, which would rate any program or utility based on its impact on the whole process. The client may discover that the some particular programs are in fact cornerstones on which the whole batch process stands.