The model is the top level artifact within ArgoUML. In the UML meta-model it is a sub-class of package. In many respects within ArgoUML it behaves similarly to a package (see Section 17.2, “Package”).
![]() | Note |
---|---|
ArgoUML is restricted to one model within the tool. |
Standard data types, classes and packages are loaded (the default, see Chapter 23, Built In DataTypes, Classes, Interfaces and Stereotypes) as sub-packages of the model. These sub-packages are not initially present in the model but are added to the model when used.
The details tabs that are active for the model are as follows.
ToDoItem
Standard tab.
Properties
See Section 15.2.2, “Model Property Toolbar” and Section 15.2.3, “Property Fields For The Model” below.
Documentation
Standard tab. See Section 12.5, “Documentation Tab”.
Source
Standard tab. This contains a template package declaration appropriate to the entire model. In the future this would be part of the code generation activity.
Constraints
Standard tab. ArgoUML only supports constraints on Classes and Features (Attributes, Operations, Receptions, and Methods), so this tab is grayed out.
Tagged Values
Standard tab. In the UML meta-model,
Model
has the following standard tagged
values defined.
derived
(from the
superclass, ModelElement
).
Values true
,
meaning the class is redundant
— it can be formally derived from other elements,
or false
meaning it cannot.
Derived models have their value in analysis to introduce useful names or concepts, and in design to avoid re-computation.
Go
up
Navigate up through the package structure of the model.
Since the model is the top package nothing will happen.
Add Package
This creates a new Package (see Section 17.2, “Package”) within the model (which appears on no diagram), navigating immediately to the properties tab for that package.
![]() | Tip |
---|---|
While it can make sense to create Packages of the model this way, it is usually a lot clearer to create them within diagrams where you want them. |
Delete
This tool is always downlighted, since. it is meaningless to delete the model!
Name
Text box. The name of the model. The name of a model, like all packages, is by convention all lower case.
![]() | Note |
---|---|
The default name supplied to a new model by
ArgoUML, |
Stereotype
Drop down selector.
Model is provided by default
with the UML standard stereotypes for model
(systemModel
and
metamodel
) and package
(facade
, framework
,
stub
).
Stereotyping models is a useful thing, although it is of limited value in ArgoUML where you have only a single model.
Navigate Stereotype
icon. If a
stereotype has been selected, this will navigate to the
stereotype property panel (see Section 15.4, “Stereotype”).
Namespace
Text box. Records the namespace for the model. This is the package hierarchy. However since the model is at the top of the hierarchy in ArgoUML, this box is always empty.
Visibility
Radio box,
with entries
public
,
protected
, and
private
.
Records the visibility for the model. Since ArgoUML only permits one model, this has no meaningful use.
Modifiers
Check box, with entries
Abstract
,
Leaf
and
Root
.
abstract
is used to declare that this model cannot be instantiated,
but must always be specialized.
The meaning of abstract
applied to a model is not that clear.
It might mean that the model contains
interfaces or
abstract classes
without realizations.
Since ArgoUML only permits one model,
this is not a meaningful box to check.
Leaf
indicates that this model can have no further subpackages,
while root
indicates it is the top level model.
Within ArgoUML root
only
meaningfully applies to the Model,
since all packages sit within the model.
In the absence of the topLevel
stereotype,
this could be used to emphasize that the Model is at the top level.
Generalizations
Text area. Lists any model that generalizes this model.
![]() | Note |
---|---|
Since there is only one model in ArgoUML there is no sensible specialization or generalization that could be created. |
Specializations
Text box. Lists any specialized model (i.e. for which this model is a generalization.
![]() | Note |
---|---|
Since there is only one model in ArgoUML there is no sensible specialization or generalization that could be created. |
Owned Elements
Text area. A listing of the top level packages, classes, interfaces, datatypes, actors, use cases, associations, generalizations, and stereotypes within the model.
Button 1 double click on any of the artifacts yields navigating to that artifact.