REPI is a collection of tools aimed at enabling a modeller to build process models using the RolEnact process modelling language.
REPI includes the stepper, the simulator and a model generation tool.
There is a paper which describes RolEnact and REPI, A tool for evaluation of the Software Development Process [pdf] [postscript] .
The generation tool displays models as text or as a diagram. It also guides the modeller through the process of building a model by providing a series of dialogue boxes which eliminate the need for the modeller to understand the syntax of the language. It also provides direct access to the tools which execute the models.
The stepper allows the modeller to execute a model and explore its behaviour. It now has a feature which enables the modeller to "undo" steps.
The simulator executes a model automatically, generating a trace of the events for each execution. This output is written into an Excel spreadsheet for later analysis.
REPI should run on Windows95, 98, NT or 2000. It also requires that the target machine has Microsoft Excel installed.
REPI has no particular hardware requirements.
Download REPI package this is a self-extracting "ZIP" file. Some people who have suitable software for extracting archive files may prefer to use the slightly smaller plain "ZIP" file.
REPI has been developed as three separate applications: the stepper, the simulator and the model generator and, for the moment, they need to be installed separately. If practical, install the programs to the default locations. If the default locations are not used, then you will need to edit the "batch" files which are used by the modeller to call the other applications. This will be simpler if the locations used conform to the traditional "8.3" naming rules.
Install the applications in the following order:
1) The stepper. This is the first of the RolEnact software. Begin the install by running its self-extracting file archive file, RolEnact.exe in a suitable temporary directory. Then run the install program that will have been extracted from the original archive. For more information about this application and its installation, see the RolEnact page.
2) The Simulator. This is contained in the self-extracting file, ARE.exe. Run this file in a suitable temporary directory and then run the install program that will be extracted.
3) The model generator. This is contained in the self-extracting file, RD.exe. At present, there is no install program for the generation tool. However, installation by hand is simple. First make a directory for the program files, such as "C:\REPI\" and copy the self-extracting archive file, RD.exe into it. Then run RD.exe. This will extract the files required to run the application. Run the application in the usual way. (Once extracted, the archive file may be deleted.)
RolDraw provides access to the other applications via commands in its menu system. To do this, it needs to be able to locate the other applications. To accommodate installations where the other applications are installed to locations other than the default, these are not coded into the application. Instead, the applications are called from a pair of batch files. These files are "ARE.bat" and "RE.bat" and should be located in the same directory as the RolDraw executable. If the stepper and/or the simulator are installed to locations other than the default, these files will need to be edited to reflect the actual locations.
(Included in the archive is an application called, "trans3.exe". This is an application which is used by RolDraw (the model generator) to generate code for the stepper to execute. In the a later version of REPI, this will be incorporated into RolDraw.)
Included in the archives is an example model. This model describes a traditional gentleman's barbershop. In the real process, Customers wishing to have their hair cut, go to the Barbershop where they may have to wait for a Barber to become available. Eventually, they either get selected by a Barber who proceeds to cut their hair and collect payment, or they give up and leave. In the model, in addition to attending to the requirements of Customers, a Barber is able to take a break (for a cup of tea).
The example model is supplied in two forms: as a plain text file and as an Excel file. The Model Generator is able to read and manipulate either file. It can pass either file to the Stepper, but the model has to be in the Excel file form for the Simulator. The Excel file supplied has figures placed in it which cause the Simulator to start with 5 instances of the Customer Role and 2 of the Barber Role.
During development, the applications which form Repi have used a number of different file formats. Not all of the applications are able to read all of these formats. In particular, because it writes its output to a spreadsheet, the simulator is only able to handle Excel files and the stepper requires the model to be described in a text file using the first published syntax for RolEnact. however, when a model is run from within the model generator, a suitable file is generated and loaded into the stepper automatically. If a model is to be run using the simulator (from within the generator or from outside), it must first be saved into an Excel file. This can be done by using the "XLsave"/"XLsave as" commands from the "file" menu of the generator. The model generator does not yet have the facility for inserting numbers into a model to influence the way the simulator executes a model, though any numbers inserted by hand using Excel, should be preserved.
Drawing diagrams of the models is not as easy as it sounds and there is a variety of ways to confuse the drawing algorithm in the model generator. When this happens the problems that ensue vary from minor omissions in the diagram to complete failure of the application to draw the model thought the application itself should not fail completely. However, the generator saves the present state of a model into a temporary file (called "R~E~tmp.new") before attempting to render it as a diagram so that unsaved work should not be lost in the event of a failure.
One particular problem is models in which include Roles return to a previously visited state ("looping" behaviour), the diagramming algorithm is unable to identify this and needs hints from the modeller who must distinguish states which need to be drawn in more than one position in a diagram. This is achieved by adding extra states to the model. These extra states are distinguished from each other by suffixing one or more "=" characters to their names. These suffixes are ignored which a model is executed. As a consequence of this special meaning to the character "=", apart from this particular circumstance, it should not be used in Role or State names. Displaying a model as text is much more robust.
On some Windows95 (and possibly Windows98), the "command" windows that open when the Stepper or the Simulator are called from within the Model Generator using the menu commands may not close automatically.
Page updated June 22, 2000