Navigation: Introduction to ABACUS >

How do you do it? (Overview)

 

 

 

 

This topic provides a basic overview of the tasks involved with using ABACUS.

The following diagram illustrates the architecture-based analysis process that ABACUS provides for evolving a current architecture to a new or target architecture.

The ABACUS Process

To use ABACUS:

1.Audit - Before you use ABACUS, you must gather all the information you have about the architecture, and its requirements. 

Architecture - Identify the potential components of the architecture and how they interact. There should only be a few components at the top level. These are called "essential components". Even the most complex architectures should have less than 10 essential components. e.g. The essential components of an insurance company's architecture may be policies, receipts, claims, and payments. 

Requirements - You have to know what is expected of the architecture in order to determine if it is satisfactory. e.g. Number of transactions per hour.

Where do you find it? - This information may come from requirements specifications, design documents, interviews with stakeholders, the deployed code, etc. Basically any material that is available offers ABACUS information about the architecture.

2.Populate - Use ABACUS to model your architecture and to specify the requirements the architecture will be measured against. 

Architecture - In ABACUS you start out with an empty architecture - you have to populate it. This means entering all the architecture information you gathered above. You can populate your architecture manually (using the right-click menu), or you can populate it automatically (from Microsoft Visio, Excel, Access etc). Typically the top-most levels (more abstract) of the architecture will be populated manually, and the lower levels (more concrete) will be populated automatically.

Requirements - As you add your components and connections, you specify their properties. In most cases, these properties will be the requirements of the architecture. For example, if you will have a 1250 MIPS node/ cluster, you would add the node as a component, then add the performance property, and assign a value of 1250 MIPS.

3.Analyse - Use ABACUS to elegantly analyse and visualise the complex structure of your architecture. You can analyse your architecture in a number of ways or from a number of viewpoints, including diagrams, 3D and Explorer. Alternatively you may wish to use some more specific views as follows:

Chart your architecture – to get performance (response time, bandwidth, etc.), cost (bar, pie, etc.) or evolvability (capability space, trade-off, etc.) views.

Create a report on your architecture.

4.Simulate - Use ABACUS to simulate your architecture's performance, availability, cost, etc. 

To do this, run one of the simulators. ABACUS evaluates your architecture against your requirements by performing a simulation. It reads and analyses the current architecture, runs simulations, and calculates some new properties. These properties are then saved back to the architecture. The new properties are the data you're trying to analyse, such as utilisation, response time, bandwidth, % availability, TCO etc.

5.Engineer - Use ABACUS to answer various "what if" scenarios and control the evolution of your architecture. Engineering is the process of repeating the Populate - Analyse - Simulate cycle. 

At this point, you have probably developed an understanding of the Current Architecture and highlighted the areas you need to evolve. Quite often, however, you'll need to repeat the Populate - Analyse - Simulate process a number of times. This will probably be because it may take a couple of iterations before you find the Target Architecture. Also, if your architecture is very complex, you may want to repeat the process for each architectural "level".

6.Plan the future of your architecture using the information provided by ABACUS.

 Note

If you’re not trying to evolve an existing architecture, you may need to repeat some steps a number of times, and in a different order. It depends on what you're trying do. For instance, if you're designing a new architecture, you'll probably only populate your architecture once, and then use ABACUS over a long period of time to guide the future evolution(s) of the architecture. On the other hand, if you're purchasing a new architecture and have several alternatives to choose from, you'll need to Discover and Populate for each of the alternatives, and then Analyse and Simulate each one independently before performing a final comparison at the end.

 


See also

What does ABACUS do? | What is architecture? | How is an architecture represented in ABACUS? | Populating your architecture | Analysing your architecture | Simulating your architecture

 


© 2001-2024 Avolution Pty Ltd, related entities and/or licensors. All rights reserved.