Chapter 1. Users Guide

This chapter describes the purpose and use of this guide, lists other related documents, and presents the conventions used within.

Purpose and Intended Audience

This section explains the intent of this document and describes its usage.

Purpose of the Users Guide

The purpose of this guide is to enable the user of the MC-3020 model compiler to generate and execute an ANSI C program from xtUML models specified in the BridgePoint Builder. Essential tasks that this guide will enable the user to perform include the following.

  • Install MC-3020.

  • Translate xtUML models into ANSI C code.

  • Build an executable program.

  • Create xtUML models that fully utilize the capabilities of MC-3020.

Intended Audience

This guide is written for software engineers who are using the Shlaer-Mellor development method and will implement their system using the MC-3020 model compiler. It assumes that the user is familiar with the ANSI C programming language and general usage of the development platform and its software development utilities.

There are various roles that software engineers can play in the course of developing a system. These roles reflect the different types of tasks that must be undertaken to successfully specify, design, construct, and test a system. Roles that are relevant to the usage of the MC-3020 model compiler include the following.

Analyst

Develops the xtUML models on the BridgePoint tool set that specify system behavior and that will be used to construct the final system.

Software Architect

Installs and maintains the MC-3020 Model Compiler. Frequently assists in its use to translate the xtUML models and build the system.

System Architect

Makes system wide decisions about how the xtUML models will be ``marked'' to utilize the facilities provided by MC-3020. This person frequently assists in the translation and building of the system.

Programmer

Designs and develops C or other code that interfaces to the MC-3020 generated code.

Tester

Tests the system.

An engineer in each of these roles will be looking for different types of information in this guide to fulfill the tasks of that role.

The Analyst will want to understand how to use MC-3020 modeling conventions to specify such things as instance initialization and bridge operations. The Analyst will also be interested in understanding the limitations that MC-3020 places on the xtUML models.

The Software Architect will want to understand how to install and run MC-3020 as well as understand its structure well enough to maintain it.

The System Architect will want to understand the underlying software design or architecture provided by MC-3020 and the marking options that are available for translating the xtUML models into ANSI C code.

The Programmer will want to understand the published interfaces to the MC-3020 generated system and how to use them to successfully interact with the generated components.

The Tester will want to understand how to execute and debug the generated system for ``black box'' testing, and how the system is constructed and operates for ``white box'' testing.

The following section provides guidance on using this guide to meet these needs.