DSI Time Compression

DSI Time Compression

Published By : Andy Kilhoffer September 29, 2016

This is the first in a series of articles on IBM Decision Server Insights (DSI) innovation at Salient Process. See IBM ODM DSI Innovation at Salient Process for the initial post outlining the overall list of DSI innovations and coming blogs.

The Decision Server Insights (DSI) product includes a number of powerful testing frameworks to exercise a DSI solution and determine whether it is operating correctly. Key among these are the Java test client, Test Scenarios, and Insight Inspector. The Java test client and Test Scenarios exercise a DSI solution by injecting a series of events; then Insight inspector is used to visually inspect a recording of the solution’s execution results. One of the indispensable values of these frameworks is that they allow testing to be conducted in an incredibly compressed time frame of less than a minute, while correctly emulating the operation of the system over an extended period of time involving days, weeks, or even months. (READ: DSI Entity Paging)

While tremendously valuable, this testing in a compressed time-frame has two deficiencies, which both derive from the blinding speed at which the testing is conducted. First, it does not support human-paced user interaction with the inputs and outputs of the system . Second, it does not permit human-paced, ad hoc inspection and manipulation of the system. While these deficiencies may not impact testing for the majority of DSI users, for those impacted, it can present an insurmountable obstacle. For DSI solutions where testing requires human-paced interaction, Salient’s time compression framework can provide a solution that is both completely flexible and completely transparent.

The reader who is experienced with DSI will realize that it is possible to test a DSI solution without using the DSI testing frameworks. Since these alternate testing facilities operate in an uncompressed timeframe and allow users to control the timing of event injection, they can support human-paced interactions with the solution. User Acceptance Testing (UAT) requires means other than the DSI testing frameworks to evaluate the operation of the DSI solution, so an alternate testing facility is eventually required anyway. In many cases, the alternate testing facility needed for UAT can also be used for development testing.

However, a particularly challenging situation arises during UAT of DSI solutions with human interaction requirements and deferred rule processing involving extended periods of time. It is simply not feasible to test a solution when the human has to wait 3 days for a deferred rule to fire after the initial event, then takes an action and waits another 3 months for the final rule to fire before evaluating whether the output is correct. Testing solutions of this nature requires not only the ability to compress time at different rates, but the ability to dynamically alter the rate of compression to meet the requirements of the testing scenario.

Salient’s time compression framework is noteworthy in that it is non-intrusive with respect to the construction and operation of the DSI solution’s rules. In addition to requiring no rule changes, Salient’s time compression is so totally transparent that its use is undetectable by the rules. Finally, the framework can be left in place with absolutely no performance or behavioral impact of any kind during production operation of the system. The only time performance overhead is introduced and the behavior of the system is altered is during testing. With Salient’s time compression framework, you can follow the time-honored best practice of testing what you deploy and deploying what you test.

Salient can help you determine whether time compression would facilitate testing your DSI solution. For more information or to schedule a free evaluation, send your contact information and a brief explanation of your project to IBM ODM DSI Innovation at Salient Process.