Test Drive Road Report
SolutionSoft Systems, Inc.
2350 Mission College Blvd., Suite 715
Santa Clara, CA 95054
A software tool for simulating past or future dates for any session, program or process. It neither alters the system hardware clock nor affects any process or user outside the local TM environment. Time Machine also requires no programming changes or system downtime.
Time Machine runs on MPE/iX 4.0 and later. The standalone version is tier-priced from $850 to $6,350 and includes the first year of support. Evaluation copies are available.
Review by John Burke
If you are anything like me, these days your eyes start glazing over and you want to scream "Enough already!" when you hear the phrase "Year 2000 Problem." At its most annoying it gets reduced to acronyms. Bear with me -- even though you will hear about Time Machine in connection with TY2KP, it is much more than just another Year 2000 tool.
Time Machine (TM) from SolutionSoft, an HP Cure2000 partner, can simulate a past or future date for any session, program or process. [Editor's note: For a story on HP's Cure2000 project see our page one story from the August 1997 NewsWire.]
TM does not alter the system hardware clock and does not affect any process or user outside the local TM environment. Time Machine does not require any programming changes or system downtime. If viewed from a narrow perspective, TM is simply a Year 2K tool that lets you test your applications against any point in time. And without having to reboot your HP 3000 with some bogus date. That in itself is cool, but there is much more.
What can it do?
Obviously, TM can aid any Year 2000 compliance project by creating a test bed environment where specific future dates are returned by the date intrinsics and commands. For example, set the virtual date/time to January 1, 2000 and test your software against test files.
TM can also:
Aid Y2K projects by identifying the date intrinsics and date commands referenced;
Facilitate the development of, testing of, and training on, any date and time sensitive applications. For example, with TM you can easily test and train users on month-end, quarter-end and year-end procedures;
Create a local time view of application screens and reports; and,
Rerun failed reports and jobs with the proper date and time references.
How does it work?
TM intercepts calls to the system clock. For example, TM intercepts the CALENDAR intrinsic, the SHOWTIME command and the SHOWVAR command when referring to date variables such as HPDATEF.
To invoke Time Machine, you simply run it with appropriate parameters before running any program. The virtual date and time is only visible to the process, including the CI, that activates TM and all its descendant child processes. This is true whether in a job or session. It means that different programs or even different instances of the same program can be set up to see a different virtual time. Note that a STREAMed job is not a child process. Also, the virtual clock is only visible to user programs and user libraries. All file system timestamps will, for example, remain on true time. [See Figure 1 for examples.]
The virtual date and time in a TM-controlled environment can be set as an absolute value or set relative to the current time (the hardware clock). TM virtual time can act like a normal clock, including rolling over to the next day at midnight or it can be frozen at a particular point in time.
A running virtual clock set to an absolute time late in the day on December 31, 1999 makes it easy to test what will happen to a program at the century rollover. A frozen clock lets you test corner conditions over and over. Or rerun something that may be time/date sensitive.
Relative time lets you adjust reports and displays to the local time of the user. Think about that. Without any programming changes, your users can see their local time. This is beyond just cool.
Resetting the hardware clock might "break" demo software or third-party software with some type of time bomb in it. The same could be true of TM. To address this, TM supports an exclusion list for programs that should see the true clock and not the virtual clock. For example, most backup programs need to see the true system clock. TM comes with all common backup programs already recorded in its exclusion list. If different applications require different exclusion lists, a file equation can be used to link each application to the correct exclusion list.
As an option, TM will log all application calls to date and time intrinsics or commands. This can be very useful in determining which programs or command files access date/time information.
New features not available for testing
Version 1.06 was available for this Test Drive. Version 1.07 (shipping now) adds two new features, automatic activation on logon and usage audit trails.
Automatic activation on logon enables you to specify by session/job name, user and group those jobs or sessions that will automatically be on virtual time from the moment of logon. This is sort of like running TM from a logon UDC. You could accomplish the same goal with a logon UDC, but it would be difficult to administrate. Instead, SolutionSoft has created a means for defining your virtual time configuration in a configuration file, each record containing session name, user name, account name and the TM virtual time configuration. For example, the line
would be interpreted to mean that any user of the TEST account with user ID beginning "TESTER" will find the "clock" says January 29, 2000, 12 noon at the moment of signon. Much like system-wide UDCs, this feature is turned on and off globally with the "SETCAT" and "RESETCAT" TM commands.
This feature makes it easy to use TM in test/development environments with many interdependent jobs without having to modify job streams. It also allows you to present "local time" to users of your system who may be working in different time zones from the system itself.
The second new feature, audit trails, allows you to audit who (session name, user name, account, timestamp and command parameters) has activated and/or deactivated TM.
Installation and documentation
Installation does not get any easier then this: RESTORE some files with the CREATE and OLDDATE options and execute a command file. It takes longer to load the tape and put it online then it does to install the product. Installation of Time Machine does note require any system downtime. Using it requires no code modifications.
The documentation is complete, though slim at only 12 pages. As with most new products, there are some annoying typos in the documentation and examples, but the glitches should not stop you from quickly learning and deploying the product.
Although Time Machine was probably first conceived as a tool to help in Year 2000 projects, it can do much more. Its usefulness will outlast any current and future Year 2000 Compliance projects.
Time Machine can also be acquired as part of the Time & Space Manager bundle along with SolutionSoft's Compression Storage Manager (CSM). [Editor's note: For a TestDrive of CSM, see the June 1996 3000 NewsWire. The article is available at the FreeNews site, under the Tech section. The Time & Space Manager combination can be used to create a space efficient test, training and development environment.]