A1 Modeller Treatment

A1

Teodric Abstract: This document is the treatment for the A1 modeller, a tool that has evolved from the needs of the Haven project . End users may wish to see the A1 product page instead. See also A1 Modeller Concept .

Availability: Public

Contents

Introduction - Sketches and Elements : Basic User Interface , Palette , Model Browser , Properties , AttachingCopyright

Introduction

The A1 modeller arose from a need for a basic symbolic diagram editor in a software development context. It is heavily influenced by object oriented practices and aims to provide easily used support for quite advanced modelling needs such as multiple view UML editing of underlying models and use of design patterns.

Sketches and Elements

This section explores the main elements of the application, how they are meant to be used and how they relate to each other and the problems users try to solve.

Basic User Interface

The user sees a graphical representation of the model being edited. The application presents the model in views, naïvely spoken different diagram types. In terms of UML methodology, a model might have for instance a class hierarchy view, an interaction view, a state view etc - each would be presented as a different view to the user who can choose which view to work in. DIfferent types of model parts behave differently when placed in different views. A class definition object for instance when placed in an interaction view will show up as an instance, as a class itself has no interaction. A use relation from a class hierarchy shows up in an interaction as a call (or several calls). The model can have many views of the same type, for instance showing different subsets of the entire design.
These mappings are retained. The model contains information about for instance which object instance is an implementation of which class. User defined definitions can define new mappings and new view types.

Palette

The palette is the basic toolbox for editing the model (in a view). Its contents will change to suit the active view and show suitable objects. The user selects an object in the palette and clicks the diagram to place a new symbol or relation (other standard variants include dragging a symbol from the palette to the drawing area, clicking and dragging to set size and placement immediately, copying an existing object etc).
The palette behaves much like the toolbox does in an application like Visio or Dia.
(See image for Model Browser, below)

Model Browser

The model browser allows contextual browsing. It shows all definitions available in the model, not only those of the active view, and all objects in all views, arranged systematically in a tree structure. The model browser can be used like a palette - this way the user can immediately drag an object from one view (in the browser) into the open view, and the application will create the correct mapping.
The model browser allows users to easily access the components of the underlying model to create a new view to describe a different aspect of the system under construction.

Model Browser
Model Browser (bottom left) and Palette (tool window docked under toolbar) visible - both are fully dockable on any side or freely floatable . The menus are conceptual only.


Properties

By editing properties, each component's parameters can be edited. Each parameter can be named and optionally bound to a type of data. The component can also be mapped to different views, and all mappings are shown.
The property editing interface/functionality is still under construction.

Properties Dialog Sketch
Early draft of property interface.


Attaching

Attaching is still under construction.

Attaching Dialog Sketch
Early draft of attachment interface.

Copyright

This text was written in its entirety by Olof Ekström. For more information about the author of this page, see Olof Ekström's personal information in the Haven Project Profiles document.

Rational Rose is a registered trademark of Rational Corporation. Visio is a registered trademark of Microsoft Corporation.

In no way is the A1 Modeller or Extro System related to or endorsed by any other company or trademark holder mentioned in this document.

Copyright © 2002 Olof Ekström/Extro System. All rights reserved.

Bälinge/Uppsala, Sweden, February 2002