AspenTech

BIA - IDE for AspenTech MIMI

Bringing modern tooling to a legacy industrial modeling language

Aug 2006 - Nov 2007

6 min

1 /3

Background

AspenTech’s MIMI (Manager for Interactive Modeling Interfaces) was the foundation of its early Supply Chain Management (SCM) solutions. Developed in the 1980s and 1990s, MIMI powered production scheduling tools for large industrial clients, using a custom language and runtime engine encapsulated in monolithic .CAS files.

Despite its long life and powerful modeling capabilities, MIMI lacked basic development tooling: there was no version control, no syntax validation, and no modern interface for editing or managing code. In 2007, AspenTech partnered with Manas to design and implement a full-featured IDE to support its global user base while preserving the legacy system underneath.

2 /3

What We Did

Platform selection: Eclipse

We chose the Eclipse Platform as the foundation for the IDE. It provided a mature and extensible environment for building development tools, including:

Eclipse also allowed us to define custom wizards and templates to guide users in creating new MIMI projects, and it offered strong plugin support for expanding capabilities over time. The core IDE was implemented in Java, with C/C++ modules used for native integration via JNI.

Deep Integration with MIMI

To interact with MIMI itself, we developed a MIMI Connector: a JNI bridge between the Java IDE and MIMI’s native C API. This allowed the IDE to:

  1. Extract data from an existing MIMI instance: When creating a new project, the IDE retrieves all relevant objects from a MIMI .CAS file—rules, macros, tables, forms—and represents them as individual editable text files.

  2. Deploy objects back to MIMI: Developers can push changes back to the MIMI engine either automatically on save, or manually when working in “disconnected mode.” The connector writes modified items back into the .CAS structure using MIMI’s own API.

This integration allowed developers to work seamlessly with MIMI as if it were a modern file-based project system—without modifying the MIMI engine itself.

Version Control Integration

Using Eclipse’s version control framework, we implemented full support for managing MIMI projects through systems like CVS (with the potential for SVN or SourceSafe connectors). Key features included:

This brought collaborative development practices to MIMI for the first time, allowing teams to track history, resolve conflicts, and roll back changes safely.

Code Editor Features

We built a custom MIMI-aware editor within Eclipse, with the following features:

The editor dramatically improved both the usability and maintainability of MIMI projects.

Visual Form Designer

MIMI supported form-based UI components within its models. We added a form designer that allowed developers to build and edit forms visually, rather than writing code by hand. Key features included:

This reduced the learning curve for building MIMI-based interfaces and helped teams debug and evolve complex models more easily.

3 /3

Outcome

The MIMI IDE delivered by Manas gave AspenTech users the best of both worlds: a modern development experience built on top of a legacy modeling system. We preserved compatibility with MIMI’s C-based engine while dramatically improving productivity, maintainability, and collaboration.

By choosing Eclipse and designing a clean bridge to MIMI’s API, we enabled extensibility for future tools and support for additional version control systems. The IDE is still remembered as a pivotal step in extending the life of a critical industrial platform.


Let’s work together

Start your project