ARM Technical Architecture

As mentioned in the introduction, ARM is an object-oriented system developed to generate an object model.  First we will discuss the hardware and software environment, and then examine the software components of the solution.

Hardware and Software Environment

ARM runs on a Windows machine running Windows XP.  The client is based on VisualAge Smalltalk with an Envy code repository, (using the Instantiations module VA assist Pro to improve the Smalltalk Development Environment and expanded by the use of WindowBuilder Pro (for widget support) and Business Graphics for generating charts).  The database is GemStone/S (the powerful object database with its own Smalltalk virtual machine) providing a seamless link from the client to the database without the need for object / relational translation.

ARM Software Components

To understand ARM’s software components, you need to have a basic understanding of configuration in ARM.  The Knowledge Model makes the model definition easier to understand and is analogous to Smalltalk classes, whereas the Operational Model is analogous to Smalltalk instances.  In fact, this analogy to Smalltalk is what makes the code map very well to the application.

Each of the Knowledge Model Groups (e.g. Business Unit Groups) is represented by a Smalltalk Class, and each of the Operational Model Items (e.g. Business Units) is represented by instances of a Smalltalk Class.  In this way we ensure that all members (i.e. Business Units of a particular Business Unit Group) of a Knowledge Model Group have the same characteristics.

ARM is architected so that most everything runs on the GemStone database.  Certainly user interfaces need to run on the client, but little else does.  Three main advantages of this architecture are:

 

Next section: Key Benefits

Back to main document