The work area of Poseidon is separated in five parts. At the top of the window, there is a main menu and a toolbar that provide access to the main functions. Below this are four panes:
Diagram Pane
Generally the largest pane
Located in the top right-hand section of the screen
Displays the various UML diagrams and is the main working screen
Navigation Pane
Located in the top left-hand section of the screen
Displays models and model elements based on the selected view
Provides quick and intuitive movement through the diagrams
Overview Pane
Located in the bottom left-hand section
Bird's-eye view provides another means of navigation and display control
Usually the smallest pane
Details Pane
Located in the bottom right-hand section of the screen
Displays all information about selected elements, some of which may not be available in the diagram
Provides the means to add or change details of an element
Yet another means of navigation
You can hide and redisplay panes by clicking on the small arrows that are located on the separation bars between panes, much in the same way you can manipulate panes in most other GUI applications. This allows you to gain extra room for drawing in the Diagram pane while the other panes are not needed. You can also resize the panes to best fit your needs by moving the separation bars with the mouse.
The first pane we will explore is the Navigation pane in the
upper left corner. It is used to access all of the main parts of a
model by presenting the elements of the model in various tree
structures. There are many different ways the model information could
be organized into a tree structure; for example, the tree could be
sorted alphabetically by element name, by diagram name, or by model
element type. The classic way to organize them is by
packages
. Poseidon for UML uses the package
structure as the default navigation tree, as do most UML tools. But,
as we will see a little later, Poseidon provides additional tree
structures called
views
. This is one
of the strong points of Poseidon for UML, providing enormous
flexibility for navigation. The default view is called the
Package
view.
The root node of the tree is the model itself, in our example it
is called
Webstore
. The first level of the tree
is open by default. In the Package Centric view, all first-level
packages are shown, as well as all model elements that are not inside
a specific package. As you can see, each element in the tree is
preceded by a little icon. Element icons have one symbol, diagrams
have several of these symbols combined into one icon. These icons are
used consistently throughout the application.
Some sample icons:
Model
- The model
icon is a colored box, which is also used as a logo for
UML
Package
- The
package icon is a folder
Class Diagram
-
The class diagram icon is a combination of two class
icons
You can navigate through the tree by clicking on the icon in front of an element name, similar to many other applications. Any element you subsequently add to the model will automatically appear in the corresponding branch of the tree hierarchy, no matter how it is created.
Right now, your Navigation pane should look like this:
The model
Webstore
contains many packages
(e.g.
Analysis
and
Design
) as well as diagrams (
Overview
).
Select the class diagram
by clicking on it in the Navigation pane. The selected
diagram will then be displayed in the Diagram pane, which is located
to the right of the Navigation Pane. The 'Container Class
Analysis-Packages' diagram (Figure 6-3) visualizes the dependencies
between the included packages:
Overview
Analysis
,
Design
, and
Deployment
.
Inside the packages you can find further diagrams, but to quickly browse through the existing diagrams you need not navigate through the packages themselves. You can find diagrams directly (and much more quickly) using the diagram tree .
This view sorts the model elements according to the diagrams in which they are included. Of course, this view includes only includes those model elements that are included in at least one diagram. The organization of this view has the advantage of quick navigation to any diagram or to the elements they contain. It logically follows that sometimes the Diagram Centric view and at other times the Package Centric view is more useful. Take a few moments now to look at the other available views.
We will now turn our attention to the diagrams themselves and how to edit them by looking at the Diagram Pane.
As diagrams are the center of UML, naturally the Diagram pane is the main working space in Poseidon for UML. It is the primary place for constructing and editing the diagrams that compose all models. Just as the Navigation pane can display multiple views, the Diagram pane also makes use of tabs to open additional workspaces. Let's take a closer look at some of the functions available in the Diagram pane.
Open the diagram
in the Diagram pane by clicking on its name under Class Diagrams in
the Navigation pane. Expand the tree for this diagram by clicking the
'expand tree'
Design
icon that appears to the left of the diagram
name.
The Diagram pane to the right should now look like this:
This is an overview diagram that provides a high level view of the design of our example. The classes from this diagram happen to be located in different packages. You can see the package name in parentheses under the class name (e.g. (from Design::Customers) ). For each package in this example, there is another diagram you can view that shows the classes of that package and how they relate to each other. In UML, model elements can be represented in different diagrams to highlight specific aspects in different contexts. Other diagrams covered later in this guide will give us another perspective.
This diagram shows important classes from our example model. It already tells you quite a bit about this example, such as:
It models
that are associated with
Accounts
Customers
.
Accounts
can have
Orders
and a history is
maintained
We also see how the packages
Customer
,
Orders
, and
Products
relate to one another.
If you select one of these classes in the navigation tree, you will see that the corresponding class is also selected in the diagram. Similarly, if you select a class in the diagram it is also selected in the Navigation pane. This is true for all elements: your selection is synchronized between the different panes.
Try it for yourself by selecting one of the classes in this diagram from the Navigation pane. Notice how the class name is highlighted in the Navigation pane, while the Diagram pane displays the same class with its rapid buttons visible around it.
So much more goes into a model than just the shapes representing elements and the connections between them. But if all of this information were displayed in the Diagram pane, the diagrams would quickly become cluttered and unreadable. The Details pane organizes and presents all of these important particulars via tabs.
So let's now take a closer look at the Details pane, located at
the bottom of the application. Select the class
Customer
by either clicking on the class itself in the
diagram or clicking on the class name in the Navigation pane.
The Details pane is composed of seven tabs. These tabs (sometimes referred to as panels) display all of the detailed information about the element currently selected, allow changes to be made to these elements, add related elements, or delete the element all together. Properties can be changed, documentation can be written, the resulting code can be previewed and edited, and more. The tabs always reflect the currently selected model element and are enabled only if they make sense in the context of the selected element. The Details pane also serves as another mechanism to navigate through the model.
Tabs available in the Details pane:
Properties
Style
Documentation
SourceCode
Constraints
Tabbed Values
C++ Properties
The larger a diagram becomes, the harder it gets to keep track of all of the elements, especially once they are out of the immediate viewing area. The Overview pane allows you to keep track of the elements already in the diagram. The pane, located at the bottom left, provides access to the 'Birdview' tab, which displays a graphic summary of the diagram currently displayed in the Diagram pane. From this tab you can zoom and/or pan in either the Diagram pane or the Overview pane.
To directly scale the section displayed in the main diagram area, enable the checkbox in the lower left-hand corner and use the slider bar to adjust the zoom factor. To pan and zoom the small diagram in the Birdview tab without disturbing the Diagram pane, disable this checkbox.