Login | Register
My pages Projects Community openCollabNet

argouml
Wiki: The Basics

Revision 2 as of 2009-12-01 08:04:51 -0700

Edit this page | Links to this page | Page information | Attachments | Refresh page

 

This page is for anyone who wants to understand the basic implementation concepts behind the UML modeling tool ArgoUML. You should know Java and UML a little bit to understand everything here. For the authors of this page, it sometimes might be hard to keep things understandable, especially for the super-experts among them, so please help by adding comments like "Argh I'm bailing out here!" or "WHAT?" in big bold letters, so that others can fix it. If you feel guilty for only adding such nasty todos, you can in return fix some typos or beautify this page a little bit. ;-)

So, let's have fun! (hopefully)

Introduction

ArgoUML is a tool for graphically designing UML models. So, after saving your work you'd expect that whatever you designed is stored somewhere (in a file), so you can later continue working on it. But what entities are created under the hood that make up your UML design? Basically two things:

  1. the model
  2. the diagrams

We will explain later what these two consist of in more detail, and how they are handled inside ArgoUML. As a first step, see if you can understand this: the model is a set of nonvisual entities with relations between each other, while the diagrams are just views or visualizations of the entities in the model. Can you get an imagination? (If not, then maybe put some marking comment here.) Let's describe the model a little bit more in the next section.

The UML model

If you strip all visual aspects from your UML design, you end up with (UML specific) entities that are nothing more than just a bunch of objects somewhere in memory. They are instances of all the know elements of UML, like: classes, associations, actors, lifelines, states and so on.

...

The diagrams

...

ArgoUML concepts

When looking at ArgoUML with the background knowledge about models and diagrams, one starts thinking which parts deal with the model or model elements, which other parts address the diagrams, which parts work with both or even with none of them (these parts do exist!). Distinguishing between model and diagram gains a much deeper understanding on how ArgoUML works than just viewing this tool as some graphical editor! Let's first go through the for most obvious parts with this new perspective.

The explorer pane

...

The details pane

...

The property pane

...

The todo pane

...