Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼

Open Source

ISIS and the Eclipse Process Framework

Agile Business Rules Development

As part of ISIS, ILOG developed the Agile Business Rule Development process, an iterative methodology that leverages agile software development approaches to successfully manage the short deployment cycles associated with business rules applications. This subset of ISIS is tool-agnostic and can be applied regardless of the BRMS platform used for development.

It was thus an obvious candidate for a separate plug-in within ISIS, and was later contributed to the Eclipse Foundation as the OpenUP/ABRD plug-in.

As a general purpose plug-in, OpenUP/ABRD uses the "extends" variability on the OpenUP elements so that it leaves the OpenUP elements untouched. Within ISIS, the ISIS/BRMS plug-in references OpenUP/ABRD and its elements use the "extends and replace" variability so that the more generic concepts of OpenUP/ABRD are instantiated with ILOG-specific contents.

ISIS Methodology Deployment

The last operation performed during the development of an EPF library is to publish the desired method elements configuration. The result of the publication is either organized as a collection of static HTML pages or as a web archive, deployable on a servlet container such as Tomcat.

While the static publish can easily be packaged as a web archive, the standard EPF web application publish offers the option to add a search feature to the deployable application, based on Apache Lucene's text search engine.

A static publish offers the convenience of installing the methodology contents locally, on the user's hard drive. This means quick and safe access to the contents on the user's desktop or laptop, regardless of the availability of an Internet connection.

The obvious downside is that whenever the methodology is expanded or updated, users need to update their local copy accordingly. The danger is that different users might, over time, use different versions of the contents, in particular different templates, resulting in inconsistencies in the projects work products.

By contrast, a centralized access to the published methodology through a corporate web application ensures the immediate user access to the latest contents, as well as the simplicity in making frequent updates. However, it leaves users at the mercy of Internet availability.

ISIS is dedicated to ILOG consultants and PS project managers who spend most of their time at a customer's site, often with limited or no access to the Internet. Because of that, they need a local copy of the contents. At the same time, we want to be able to publish new or refined contents frequently, in order to reflect the experience that is regularly gathered from new customer's engagements.

Because of this specific situation, ISIS actually uses both publish methods:

  • A static version of the publication is packaged with an installer executable (using the Inno Setup installation builder). Using an installer provides an easy and foolproof way to install and uninstall the methodology contents on the user's computer.
  • A web archive version with search capability, deployed as a web application and running on a password-protected portal connected to the Internet. The web application encapsulates the static version installer and makes it available for download.

An RSS feed advertises the regular updates to the contents of the publication (minor updates are published on a weekly basis). With information from the feed, consultants can decide for themselves whether the changes are relevant enough for them to warrant a new download, which can take time, given the overall size of the ISIS body of knowledge.

Publish Instrumentation

Some tooling is required to complement the EPF Composer in customizing its output and managing contents that evolves and that is updated and republished on a weekly basis.

Portal Customization

EPF supports basic customization of the published pages by letting the user select the contents of the about window, and the banner image.

Additional branding and customization of the published pages can be easily achieved by substituting some of the standard HTML files produced by EPF. Typically, the top navigation frame of the screen (which contents are implemented by the topnav.htm file) can be rewritten to introduce more elaborate branding, additional functionality and additional links. Figure 5 shows the standard top navigation frame generated by EPF. Figure 6 shows the ISIS custom top navigation frame with added buttons for methodology RSS feed subscription, offline-version download, and portal logout.

[Click image to view at full size]
Figure 5: EPF standard top navigation frame

[Click image to view at full size]
Figure 6: ISIS custom top navigation frame

Content Checking

When the EPF library becomes large enough (which is the case for ISIS, with close to 2000 method elements), it becomes quite easy to overlook some of the method elements in the EPF publish, either because these elements are not directly included in a published custom category, or because they are not transitively referenced by a published element.

To avoid these oversights, ISIS uses a script that compares the set of elements contained in the published EPF plug-ins and the elements produced in the published pages. As a result of its execution, the script flags all the elements that are present in the library but absent from the publication.

To keep internal consistency and conventions, ILOG developed some content checking scripts that verify that the attached document names and the method element names follow the established naming conventions.

Users Support

Once the methodology is published, there should be some standard mechanisms in place to ensure that the users are informed in a timely and non-intrusive manner of the updates and that they can provide some feedback on the artifacts.

Issues Management

The EPF published pages provide out-of-the-box a mechanism to submit feedback (e.g., on a specific page) through email. In ISIS, these emails go to a mailing list backed by an issue tracking system. Upon publication of a new ISIS update, there is an automatic harvest and a report generation of the comments associated to the resolution of these issues, into a "What's New" page added to the published pages. This way, the users are regularly kept informed of the fixes and updates that go into each specific release.

RSS Feed

We found RSS to be a good medium to communicate significant updates and improvements to the methodology material. The portal thus points to an RSS feed to which the users can subscribe to.

Workbook Generator

The ISIS Workbook Generator supports the implementation of the ISIS methodology for ILOG customers by allowing the automatic creation of customer project workbooks which are tailored to a type of project.

A project workbook is an organized collection of deliverables (mostly document templates) that should be produced while executing a specific type of project (for example, an Assessment Report template for an Application Assessment engagement).

The Workbook Generator is a standalone Java Swing GUI application that is made available as part of the ISIS package installer.

It takes in a few parameters such as the name of the customer, his project name and the nature of the engagement. Using this information, it fetches the necessary documents from the ISIS publish, customize the templates and the file names with the given parameters, and organizes them into a hierarchy of folders.

This gives a standard layout to start up a project. Then, as the nature of the project evolves (for example, from an assessment type of engagement to a full-fledged project), the workbook can be extended by the Workbook Generator by incrementally adding the relevant document and templates.


ISIS currently has a regular user base of more than 300 consultants. The extensive and flexible framework provided by EPF allowed ILOG to structure its methodology along several dimensions, and easily support the extensions to the ISIS body of knowledge as it gains experience in new application domains.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.