ArgoUML User Manual

A tutorial and reference description

Alejandro Ramirez

Philippe Vanpeperstraete

Andreas Rueckert

Kunle Odutola

Jeremy Bennett

Linus Tolke

Michiel van der Wulp

This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later. A copy of this license is included in the section Open Publication License. The latest version is presently available at http://www.opencontent.org/openpub/.

Abstract

This version of the manual is intended to describe the version 0.20 of ArgoUML.


Table of Contents

1. Preface
1. Introduction
1.1. Origins and Overview of ArgoUML
1.1.1. Object Oriented Analysis and Design
1.1.2. The Development of ArgoUML
1.1.3. Finding Out More About the ArgoUML Project
1.2. Scope of This User Manual
1.2.1. Target Audience
1.2.2. Scope
1.3. Overview of the User Manual
1.3.1. Tutorial Manual Structure
1.3.2. Reference Manual Structure
1.3.3. User Feedback
1.4. Assumptions
I. Tutorial
2. UML Based OOA&D
2.1. Introduction
2.2. Background to UML
2.3. UML Based Processes for OOA&D
2.3.1. Types of Process
2.3.2. A Development Process for This Manual
2.4. Why ArgoUML is Different
2.4.1. Cognitive Psychology
2.4.2. Open Standards
2.4.3. 100% Pure Java
2.4.4. Open Source
2.5. ArgoUML Basics
2.5.1. Getting Started
2.5.2. The ArgoUML User Interface
2.5.3. Output
2.5.4. Working With Design Critics
2.6. The Case Study (To be written)
3. Requirements Capture
3.1. Introduction
3.2. The Requirements Capture Process
3.2.1. Process Steps
3.3. Output of the Requirements Capture Process
3.3.1. Vision Document
3.3.2. Use Case Diagram
3.3.3. The Use Case Specification
3.3.4. Supplementary Requirement Specification
3.4. Using Use Cases in ArgoUML
3.4.1. Actors
3.4.2. Use Cases
3.4.3. Associations
3.4.4. Hierarchical Use Cases
3.4.5. Stereotypes
3.4.6. Documentation
3.4.7. System Boundary Box
3.5. Case Study
3.5.1. Vision Document
3.5.2. Identifying Actors and Use Cases
3.5.3. Associations (To be written)
3.5.4. Advanced Diagram Features (To be written)
3.5.5. Use Case Specifications (To be written)
3.5.6. Supplementary Requirements Specification (To be written)
4. Analysis
4.1. Introduction
4.2. The Analysis Process (To be written)
4.2.1. Output of the Analysis Process (To be written)
4.3. Class Diagrams (To be written)
4.3.1. The Class Diagram (To be written)
4.3.2. Advanced Class Diagrams (To be written)
4.4. Creating Class Diagrams in ArgoUML
4.4.1. Classes
4.4.2. Associations (To be written)
4.4.3. Class Attributes and Operations (To be written)
4.4.4. Advanced Class Features (To be written)
4.5. Sequence Diagrams (To be written)
4.5.1. The Sequence Diagram (To be written)
4.5.2. Identifying Actions (To be written)
4.5.3. Advanced Sequence Diagrams (To be written)
4.6. Creating Sequence Diagrams in ArgoUML
4.6.1. Sequence Diagrams
4.6.2. Actions (To be written)
4.6.3. Advanced Sequence Diagrams (To be written)
4.7. Statechart Diagrams (To be written)
4.7.1. The Statechart Diagram (To be written)
4.7.2. Advanced Statechart Diagrams (To be written)
4.8. Creating Statechart Diagrams in ArgoUML
4.8.1. Statechart Diagrams (To be written)
4.8.2. States (To be written)
4.8.3. Transitions (To be written)
4.8.4. Actions (To be written)
4.8.5. Advanced Statechart Diagrams (To be written)
4.9. Realization Use Cases (To be written)
4.10. Creating Realization Use Cases in ArgoUML (To be written)
4.11. Case Study (To be written)
4.11.1. Concept Class Diagrams (To be written)
4.11.2. System Sequence Diagrams (To be written)
4.11.3. System Statechart Diagrams (To be written)
4.11.4. Realization Use Cases (To be written)
5. Design
5.1. Introduction
5.2. The Design Process (To be written)
5.2.1. Output of the Design Process (To be written)
5.3. Package Diagrams (To be written)
5.3.1. The Package Diagram (To be written)
5.3.2. Advanced Package Diagrams (To be written)
5.4. Creating Package Diagrams in ArgoUML
5.4.1. Packages
5.4.2. Relationships between packages (To be written)
5.4.3. Advanced Package Features (To be written)
5.5. More on Class Diagrams (To be written)
5.5.1. The Class Diagram (To be written)
5.5.2. Advanced Class Diagrams (To be written)
5.6. More on Class Diagrams in ArgoUML (To be written)
5.6.1. Classes (To be written)
5.6.2. Class Attributes and Operations (To be written)
5.6.3. Advanced Class Features
5.7. Sequence and Collaboration Diagrams (To be written)
5.7.1. More on the Sequence Diagram (To be written)
5.7.2. The Collaboration Diagram (To be written)
5.7.3. Advanced Collaboration Diagrams (To be written)
5.8. Creating Collaboration Diagrams in ArgoUML (To be written)
5.8.1. Collaboration Diagrams (To be written)
5.8.2. Messages (To be written)
5.8.3. Advanced Collaboration Diagrams (To be written)
5.9. Statechart Diagrams (To be written)
5.9.1. The Statechart Diagram (To be written)
5.9.2. Advanced Statechart Diagrams (To be written)
5.10. Creating Statechart Diagrams in ArgoUML (To be written)
5.10.1. Statechart Diagrams (To be written)
5.10.2. States (To be written)
5.10.3. Transitions (To be written)
5.10.4. Actions (To be written)
5.10.5. Advanced Statechart Diagrams (To be written)
5.11. Activity Diagrams (To be written)
5.11.1. The Activity Diagram (To be written)
5.12. Creating Activity Diagrams in ArgoUML (To be written)
5.12.1. Activity Diagrams (To be written)
5.12.2. Action States (To be written)
5.13. Deployment Diagrams (To be written)
5.13.1. The Deployment Diagram (To be written)
5.14. Creating Deployment Diagrams in ArgoUML (To be written)
5.14.1. Nodes (To be written)
5.14.2. Components (To be written)
5.14.3. Relationships between nodes and components (To be written)
5.15. System Architecture (To be written)
5.16. Case Study (To be written)
5.16.1. Packages (To be written)
5.16.2. Class Diagrams (To be written)
5.16.3. Sequence Diagrams (To be written)
5.16.4. Collaboration Diagrams (To be written)
5.16.5. Statechart Diagrams (To be written)
5.16.6. Activity Diagrams (To be written)
5.16.7. The Deployment Diagram (To be written)
5.16.8. The System Architecture (To be written)
6. Code Generation, Reverse Engineering, and Round Trip Engineering
6.1. Introduction
6.2. Code Generation
6.2.1. Generating Code from the Static Structure
6.2.2. Generating code from interactions and state machines
6.3. Code Generation in ArgoUML
6.3.1. Static Structure
6.3.2. Interactions and statechart diagrams
6.4. Reverse Engineering
6.5. Round-Trip Engineering
II. User Interface Reference
7. Introduction
7.1. Overview of the Window
7.2. General Mouse Behavior in ArgoUML
7.2.1. Mouse Button Terminology
7.2.2. Button 1 Click
7.2.3. Button 1 Double Click
7.2.4. Button 1 Motion
7.2.5. Shift and Control with Button 1
7.2.6. Alt with Button 1: Panning
7.2.7. Button 2 Actions
7.2.8. Button 2 Double Click
7.2.9. Button 2 Motion
7.3. General Information About Panes
7.3.1. Re-sizing Panes
7.4. The status bar
8. The Toolbar
8.1. File operations
8.2. Edit operations
8.3. View operations
8.4. Create operations
9. The Menu bar
9.1. Introduction
9.2. Mouse Behavior in the Menu Bar
9.3. The File Menu
9.3.1. New
9.3.2. Open Project...
9.3.3. Save Project
9.3.4. Save Project As...
9.3.5. Revert to Saved
9.3.6. Import XMI...
9.3.7. Export XMI...
9.3.8. Import Sources...
9.3.9. Page Setup...
9.3.10. Print...
9.3.11. Export Graphics...
9.3.12. Export All Graphics...
9.3.13. Save Configuration
9.3.14. Most Recent Used Files
9.3.15. Exit
9.4. The Edit Menu
9.4.1. Select
9.4.2. Remove From Diagram
9.4.3. Delete From Model
9.4.4. Settings...
9.5. The View Menu
9.5.1. Goto Diagram...
9.5.2. Find...
9.5.3. Zoom
9.5.4. Adjust Grid
9.5.5. Adjust Grid Snap
9.5.6. Page Breaks
9.5.7. Notation
9.6. The Create Menu
9.6.1. New Use Case Diagram
9.6.2. New Class Diagram
9.6.3. New Sequence Diagram
9.6.4. New Collaboration Diagram
9.6.5. New Statechart Diagram
9.6.6. New Activity Diagram
9.6.7. New Deployment Diagram
9.7. The Arrange Menu
9.7.1. Align
9.7.2. Distribute
9.7.3. Reorder
9.7.4. Nudge
9.7.5. Set Preferred Size
9.7.6. Toggle Auto Resizing
9.7.7. Layout
9.8. The Generation Menu
9.8.1. Generate Selected Classes ...
9.8.2. Generate All Classes...
9.8.3. Generate Code for Project... (To be Written)
9.8.4. Settings for Generate for Project... (To be Written)
9.9. The Critique Menu
9.9.1. Toggle Auto-Critique
9.9.2. Design Issues...
9.9.3. Design Goals...
9.9.4. Browse Critics...
9.10. The Tools Menu
9.11. The Help Menu
9.11.1. System Information
9.11.2. About ArgoUML
10. The Explorer
10.1. Introduction
10.2. Mouse Behavior in the Explorer
10.2.1. Button 1 Click
10.2.2. Button 1 Double Click
10.2.3. Button 1 Motion
10.2.4. Button 2 Actions
10.2.5. Button 2 Double Click
10.3. Keyboard Behavior in the Explorer
10.4. Perspective Selection
10.5. Configuring Perspectives
10.5.1. The Configure Perspectives dialog
10.6. Context Sensitive Menu
10.6.1. Add to Diagram
10.6.2. Delete From Model
10.6.3. Set Source Path... (To be written)
10.6.4. Add Package
10.6.5. Add All Classes in Namespace
11. The Editing Pane
11.1. Introduction
11.2. Mouse Behavior in the Editing Pane
11.2.1. Button 1 Click
11.2.2. Button 1 Double Click
11.2.3. Button 1 Motion
11.2.4. Shift and Control with Button 1
11.2.5. Alt with Button 1 motion
11.2.6. Button 2 Actions
11.2.7. Button 2 Double Click
11.2.8. Button 2 Motion
11.3. The tool bar
11.3.1. Layout Tools
11.3.2. Annotation Tools
11.3.3. Drawing Tools
11.3.4. Use Case Diagram Specific Tools
11.3.5. Class Diagram Specific Tools
11.3.6. Sequence Diagram Specific Tools
11.3.7. Collaboration Diagram Specific Tools
11.3.8. Statechart Diagram Specific Tools
11.3.9. Activity Diagram Specific Tools
11.3.10. Deployment Diagram Specific Tools
11.4. The Broom
11.5. Selection Action Buttons
11.6. Clarifiers
11.7. The Drawing Grid
11.8. The Diagram Tab
11.9. Pop-Up Menus
11.9.1. Critiques
11.9.2. Ordering
11.9.3. Add
11.9.4. Show
11.9.5. Modifiers
11.9.6. Multiplicity
11.9.7. Aggregation
11.9.8. Navigability
12. The Details Pane
12.1. Introduction
12.2. To Do Item Tab
12.2.1. Wizards
12.2.2. The Help Button
12.3. Properties Tab
12.4. Documentation Tab
12.5. Presentation Tab
12.6. Source Tab
12.7. Constraints Tab
12.7.1. The Constraint Editor
12.8. Stereotype Tab
12.9. Tagged Values Tab
12.10. Checklist Tab
13. The To-Do Pane
13.1. Introduction
13.2. Mouse Behavior in the To-Do Pane
13.2.1. Button 1 Click
13.2.2. Button 1 Double Click
13.2.3. Button 2 Actions
13.2.4. Button 2 Double Click
13.3. Presentation Selection
13.4. Item Count
14. The Critics
14.1. Introduction
14.1.1. Terminology
14.1.2. Design Issues
14.2. Uncategorized
14.3. Class Selection
14.3.1. Wrap DataType
14.3.2. Reduce Classes in diagram <diagram>
14.3.3. Clean Up Diagram
14.4. Naming
14.4.1. Resolve Association Name Conflict
14.4.2. Revise Attribute Names to Avoid Conflict
14.4.3. Change Names or Signatures in an Artifact
14.4.4. Duplicate End (Role) Names for an Association
14.4.5. Role name conflicts with member
14.4.6. Choose a Name (Classes and Interfaces)
14.4.7. Choose a Unique Name for an Artifact (Classes and Interfaces)
14.4.8. Choose a Name (Attributes)
14.4.9. Choose a Name (Operations)
14.4.10. Choose a Name (States)
14.4.11. Choose a Unique Name for a (State related) Artifact
14.4.12. Revise Name to Avoid Confusion
14.4.13. Choose a Legal Name
14.4.14. Change an Artifact to a Non-Reserved Word
14.4.15. Choose a Better Operation Name
14.4.16. Choose a Better Attribute Name
14.4.17. Capitalize Class Name
14.4.18. Revise Package Name
14.5. Storage
14.5.1. Revise Attribute Names to Avoid Conflict
14.5.2. Add Instance Variables to a Class
14.5.3. Add a Constructor to a Class
14.5.4. Reduce Attributes on a Class
14.6. Planned Extensions
14.6.1. Operations in Interfaces must be public
14.6.2. Interfaces may only have operations
14.6.3. Remove Reference to Specific Subclass
14.7. State Machines
14.7.1. Reduce Transitions on <state>
14.7.2. Reduce States in machine <machine>
14.7.3. Add Transitions to <state>
14.7.4. Add Incoming Transitions to <artifact>
14.7.5. Add Outgoing Transitions from <artifact>
14.7.6. Remove Extra Initial States
14.7.7. Place an Initial State
14.7.8. Add Trigger or Guard to Transition
14.7.9. Change Join Transitions
14.7.10. Change Fork Transitions
14.7.11. Add Choice/Junction Transitions
14.7.12. Add Guard to Transition
14.7.13. Clean Up Diagram
14.7.14. Make Edge More Visible
14.7.15. Composite Association End with Multiplicity > 1
14.8. Design Patterns
14.8.1. Consider using Singleton Pattern for <class>
14.8.2. Singleton Stereotype Violated in <class>
14.8.3. Nodes normally have no enclosers
14.8.4. NodeInstances normally have no enclosers
14.8.5. Components normally are inside nodes
14.8.6. ComponentInstances normally are inside nodes
14.8.7. Classes normally are inside components
14.8.8. Interfaces normally are inside components
14.8.9. Objects normally are inside components
14.8.10. LinkEnds have not the same locations
14.8.11. Set classifier (Deployment Diagram)
14.8.12. Missing return-actions
14.8.13. Missing call(send)-action
14.8.14. No Stimuli on these links
14.8.15. Set Classifier (Sequence Diagram)
14.8.16. Wrong position of these stimuli
14.9. Relationships
14.9.1. Circular Association
14.9.2. Make <association> Navigable
14.9.3. Remove Navigation from Interface via <association>
14.9.4. Add Associations to <artifact>
14.9.5. Remove Reference to Specific Subclass
14.9.6. Reduce Associations on <artifact>
14.9.7. Make Edge More Visible
14.10. Instantiation
14.11. Modularity
14.11.1. Classifier not in Namespace of its Association
14.11.2. Add Elements to Package <package>
14.12. Expected Usage
14.12.1. Clean Up Diagram
14.13. Methods
14.13.1. Change Names or Signatures in <artifact>
14.13.2. Class Must be Abstract
14.13.3. Add Operations to <class>
14.13.4. Reduce Operations on <artifact>
14.14. Code Generation
14.14.1. Change Multiple Inheritance to interfaces
14.15. Stereotypes
14.16. Inheritance
14.16.1. Revise Attribute Names to Avoid Conflict
14.16.2. Remove <class>'s Circular Inheritance
14.16.3. Class Must be Abstract
14.16.4. Remove final keyword or remove subclasses
14.16.5. Illegal Generalization
14.16.6. Remove Unneeded Realizes from <class>
14.16.7. Define Concrete (Sub)Class
14.16.8. Define Class to Implement <interface>
14.16.9. Change Multiple Inheritance to interfaces
14.16.10. Make Edge More Visible
14.17. Containment
14.17.1. Remove Circular Composition
14.17.2. Duplicate Parameter Name
14.17.3. Two Aggregate Ends (Roles) in Binary Association
14.17.4. Aggregate End (Role) in 3-way (or More) Association
14.17.5. Wrap DataType
III. Model Reference
15. Top Level Artifact Reference
15.1. Introduction
15.2. The Model
15.2.1. Model Details Tabs
15.2.2. Model Property Toolbar
15.2.3. Property Fields For The Model
15.3. Datatype
15.3.1. Datatype Details Tabs
15.3.2. Datatype Property Toolbar
15.3.3. Property Fields For Datatype
15.4. Enumeration
15.4.1. Enumeration Details Tabs
15.4.2. Enumeration Property Toolbar
15.4.3. Property Fields For Enumeration
15.5. Stereotype
15.5.1. Stereotype Details Tabs
15.5.2. Stereotype Property Toolbar
15.5.3. Property Fields For Stereotype
15.6. Diagram
15.6.1. Diagram Details Tabs
15.6.2. Diagram Property Toolbar
15.6.3. Property Fields For Diagram
16. Use Case Diagram Artifact Reference
16.1. Introduction
16.1.1. ArgoUML Limitations Concerning Use Case Diagrams
16.2. Actor
16.2.1. Actor Details Tabs
16.2.2. Actor Property Toolbar
16.2.3. Property Fields For Actor
16.3. Use Case
16.3.1. Use Case Details Tabs
16.3.2. Use Case Property Toolbar
16.3.3. Property Fields For Use Case
16.4. Extension Point
16.4.1. Extension Point Details Tabs
16.4.2. Extension Point Property Toolbar
16.4.3. Property Fields For Extension Point
16.5. Association
16.6. Association End
16.7. Dependency
16.8. Generalization
16.8.1. Generalization Details Tabs
16.8.2. Generalization Property Toolbar
16.8.3. Property Fields For Generalization
16.9. Extend
16.9.1. Extend Details Tabs
16.9.2. Extend Property Toolbar
16.9.3. Property Fields For Extend
16.10. Include
16.10.1. Include Details Tabs
16.10.2. Include Property Toolbar
16.10.3. Property Fields For Include
17. Class Diagram Artifact Reference
17.1. Introduction
17.1.1. Limitations Concerning Class Diagrams in ArgoUML
17.2. Package
17.2.1. Package Details Tabs
17.2.2. Package Property Toolbar
17.2.3. Property Fields For Package
17.3. Datatype
17.4. Stereotype
17.5. Class
17.5.1. Class Details Tabs
17.5.2. Class Property Toolbar
17.5.3. Property Fields For Class
17.6. Attribute
17.6.1. Attribute Details Tabs
17.6.2. Attribute Property Toolbar
17.6.3. Property Fields For Attribute
17.7. Operation
17.7.1. Operation Details Tabs
17.7.2. Operation Property Toolbar
17.7.3. Property Fields For Operation
17.8. Parameter
17.8.1. Parameter Details Tabs
17.8.2. Parameter Property Toolbar
17.8.3. Property Fields For Parameter
17.9. Signal
17.9.1. Signal Details Tabs
17.9.2. Signal Property Toolbar
17.9.3. Property Fields For Signal
17.10. Reception (to be written)
17.11. Association
17.11.1. Three-way and Greater Associations and Association Classes
17.11.2. Association Details Tabs
17.11.3. Association Property Toolbar
17.11.4. Property Fields For Association
17.12. Association End
17.12.1. Association End Details Tabs
17.12.2. Association End Property Toolbar
17.12.3. Property Fields For Association End
17.13. Dependency
17.13.1. Dependency Details Tabs
17.13.2. Dependency Property Toolbar
17.13.3. Property Fields For Dependency
17.14. Generalization
17.15. Interface
17.15.1. Interface Details Tabs
17.15.2. Interface Property Toolbar
17.15.3. Property Fields For Interface
17.16. Abstraction
17.16.1. Abstraction Details Tabs
17.16.2. Abstraction Property Toolbar
17.16.3. Property Fields For Abstraction
18. Sequence Diagram Artifact Reference
18.1. Introduction
18.1.1. Limitations Concerning Sequence Diagrams in ArgoUML
18.2. Object
18.2.1. Object Details Tabs
18.2.2. Object Property Toolbar
18.2.3. Property Fields For Object
18.3. Stimulus
18.3.1. Stimulus Details Tabs
18.3.2. Stimulus Property Toolbar
18.3.3. Property Fields For Stimulus
18.4. Stimulus Call
18.5. Stimulus Create
18.6. Stimulus Destroy
18.7. Stimulus Send
18.8. Stimulus Return
18.9. Link
18.9.1. Link Details Tabs
18.9.2. Link Property Toolbar
18.9.3. Property Fields For Link
19. Statechart Diagram Artifact Reference
19.1. Introduction
19.1.1. Limitations Concerning Statechart Diagrams in ArgoUML
19.2. State
19.2.1. State Details Tabs
19.2.2. State Property Toolbar
19.2.3. Property Fields For State
19.3. Action
19.3.1. Action Details Tabs
19.3.2. Action Property Toolbar
19.3.3. Property Fields For Action
19.4. Composite State
19.5. Concurrent Region
19.6. Submachine State
19.7. Stub State
19.8. Transition
19.8.1. Transition Details Tabs
19.8.2. Transition Property Toolbar
19.8.3. Property Fields For Transition
19.9. Event
19.9.1. Event Details Tabs
19.9.2. Event Property Toolbar
19.9.3. Property Fields For Event
19.10. Guard
19.10.1. Guard Details Tabs
19.10.2. Guard Property Toolbar
19.10.3. Property Fields For Guard
19.11. Pseudostate
19.11.1. Pseudostate Details Tabs
19.11.2. Pseudostate Property Toolbar
19.11.3. Property Fields For Pseudostate
19.12. Initial State
19.13. Final State
19.13.1. Final State Details Tabs
19.13.2. Final State Property Toolbar
19.13.3. Property Fields For Final State
19.14. Junction
19.15. Choice
19.16. Fork
19.17. Join
19.18. Shallow History
19.19. Deep History
19.20. Synch State
19.20.1. Synch State Details Tabs
19.20.2. Synch State Property Toolbar
19.20.3. Property Fields For Synch State
20. Collaboration Diagram Artifact Reference
20.1. Introduction
20.1.1. Limitations Concerning Collaboration Diagrams in ArgoUML
20.2. Classifier Role
20.2.1. Classifier Role Details Tabs
20.2.2. Classifier Role Property Toolbar
20.2.3. Property Fields For Classifier Role
20.3. Association Role
20.3.1. Association Role Details Tabs
20.3.2. Association Role Property Toolbar
20.3.3. Property Fields For Association Role
20.4. Association End Role
20.4.1. Association End Role Details Tabs
20.4.2. Association End Role Property Toolbar
20.4.3. Property Fields For Association End Role
20.5. Message
20.5.1. Message Details Tabs
20.5.2. Message Property Toolbar
20.5.3. Property Fields For Message
21. Activity Diagram Artifact Reference
21.1. Introduction
21.1.1. Limitations Concerning Activity Diagrams in ArgoUML
21.2. Action State
21.2.1. Action State Details Tabs
21.2.2. Action State Property ToolBar
21.2.3. Property fields for action state
21.3. Action
21.4. Transition
21.5. Guard
21.6. Initial State
21.7. Final State
21.8. Junction (Decision)
21.9. Fork
21.10. Join
21.11. ObjectFlowState
22. Deployment Diagram Artifact Reference
22.1. Introduction
22.1.1. Limitations Concerning Deployment Diagrams in ArgoUML
22.2. Node
22.2.1. Node Details Tabs
22.2.2. Node Property Toolbar
22.2.3. Property Fields For Node
22.3. Node Instance
22.3.1. Node Instance Details Tabs
22.3.2. Node Instance Property Toolbar
22.3.3. Property Fields For Node Instance
22.4. Component
22.4.1. Component Details Tabs
22.4.2. Component Property Toolbar
22.4.3. Property Fields For Component
22.5. Component Instance
22.5.1. Component Instance Details Tabs
22.5.2. Component Instance Property Toolbar
22.5.3. Property Fields For Component Instance
22.6. Dependency
22.7. Class
22.8. Interface
22.9. Association
22.10. Object
22.11. Link
23. Built In DataTypes, Classes, Interfaces and Stereotypes
23.1. Introduction
23.1.1. Package Structure
23.1.2. Exposure in the model
23.2. Built In Datatypes
23.3. Built In Classes
23.3.1. Built In Classes From java.lang
23.3.2. Built In Classes From java.math
23.3.3. Built In Classes From java.net
23.3.4. Built In Classes From java.util
23.4. Built In Interfaces
23.5. Built In Stereotypes
Glossary
A. Supplementary Material for the Case Study
A.1. Introduction
A.2. Requirements Documents (To be written)
A.2.1. Vision Document (To be written)
A.2.2. Use Case Specifications (To be written)
A.2.3. Supplementary Requirements Specification (To be written)
B. UML resources
B.1. The UML specs (To be written)
B.2. UML related papers (To be written)
B.2.1. UML action specifications (To be written)
B.3. UML related websites (To be written)
C. UML Conforming CASE Tools
C.1. Other Open Source Projects (To be written)
C.2. Commercial Tools (To be written)
D. The C++ Module
D.1. Modeling for C++
D.1.1. Class tagged values
D.1.2. Attribute tagged values
D.1.3. Parameters
D.1.4. Preserved sections
E. Limits and Shortcomings
E.1. Diagram Canvas Size
E.2. Missing functions
F. Open Publication Licence
F.I. REQUIREMENTS ON BOTH UNMODIFIED AND MODIFIED VERSIONS
F.II. COPYRIGHT
F.III. SCOPE OF LICENSE
F.IV. REQUIREMENTS ON MODIFIED WORKS
F.V. GOOD-PRACTICE RECOMMENDATIONS
F.VI. LICENSE OPTIONS
F.. OPEN PUBLICATION POLICY APPENDIX:
Index

List of Figures

2.1. The waterfall process
2.2. Effort involved in the steps of the waterfall process
2.3. Effort involved in the steps of an iterative process
2.4. Overview of the ArgoUML window
2.5. Overview of the Explorer
2.6. Overview of the Editing Pane
2.7. Overview of the Details Pane
2.8. Overview of the To-Do Pane
2.9. ArgoUML window at start-up
2.10. Invoking Save Project As...
2.11. File chooser dialog
2.12. ArgoUML window having saved FirstProject.argo
2.13. ArgoUML window showing the critic item Revise Package Name UntitledModel
2.14. ArgoUML window showing the critic wizard to rename the package
3.1. Basic use case diagram for an ATM system
3.2. Use case diagram for an ATM system showing navigation.
3.3. Use case diagram for an ATM system showing multiplicity.
3.4. Use case diagram for an ATM system showing include relationships.
3.5. Use case diagram for an ATM system showing an extend relationship.
5.1. Selecting the Interface tool
5.2. Interface artifact on the Class Diagram
5.3. Generalization on the Class Diagram tool bar
5.4. Generalization between two Interfaces.
7.1. Overview of the ArgoUML window
8.1. The Zoom slider on the Toolbar
9.1. The confirmation dialog for New.
9.2. The file selection dialog for Open Project....
9.3. The warning dialog for Revert to Saved.
9.4. The confirmation dialog for Import XMI....
9.5. The dialog for Import XMI....
9.6. The dialog for Export XMI....
9.7. The file selection dialog for Import Sources....
9.8. The diagram exceeds page size dialog.
9.9. The save changes dialog.
9.10. The dialog for confirmation of Remove from Model.
9.11. The dialog for Settings - Preferences.
9.12. The dialog for Settings - Environment.
9.13. The dialog for Settings - User.
9.14. The dialog for Settings - Notations.
9.15. The dialog for Settings - Appearance.
9.16. The dialog for Goto Diagram....
9.17. The dialog for Find....
9.18. The dialog for Generate Selected Classes....
9.19. The dialog for Design Issues....
9.20. The dialog for Design Goals....
9.21. The dialog for Browse Critics....
9.22. The dialog for System Information.
9.23. The help window for ArgoUML
10.1. Overview of the explorer
10.2. The Configure Perspectives dialog box
11.1. Overview of the editing pane
11.2. The dialog for adding a new class diagram
11.3. The drawing tools selector.
11.4. The association tool selector.
11.5. The Broom.
11.6. Some examples of “Selection Action Buttons”.
12.1. Overview of the details pane
12.2. Example of the To Do Item tab on the properties pane
12.3. Dialog box for New To Do Item
12.4. Dialog box for Resolve Item
12.5. Example of a Wizard
12.6. A typical Properties tab on the details pane
12.7. A typical Documentation tab on the details pane
12.8. A typical Presentation tab on the details pane
12.9. The Custom Fill/Line Color dialog box
12.10. The Custom Fill/Line Color dialog box
12.11. The Custom Fill/Line Color dialog box
12.12. The Source Tab of a class.
12.13. A C++ example.
12.14. A typical Constraints tab on the details pane
12.15. Dialog box for configuring constraints
12.16. Dialog box for configuring constraints
12.17. An example of a stereotype tab for a class.
12.18. An example of a checklist for a class.
13.1. Overview of the to-do pane
16.1. Possible artifacts on a use case diagram.
16.2. Example use of a discriminator with generalization
17.1. Possible artifacts on a class diagram.
17.2. Possible artifacts on a package diagram.
17.3. The “add/remove context” dialog box
17.4. The “Add/Remove Specifications” dialog box
18.1. Possible artifacts on a sequence diagram.
19.1. Statechart diagram artifacts 1.
19.2. Statechart diagram artifacts 2.
20.1. Possible artifacts on a collaboration diagram.
20.2. The “add context” dialog box
20.3. The “add predecessors” dialog box
21.1. Possible artifacts on an activity diagram.
22.1. Possible artifacts on a component diagram.
22.2. Possible artifacts on a deployment diagram.
23.1. Hierarchy of datatypes, classes and interfaces within ArgoUML

List of Tables

23.1. Stereotypes defined in UML 1.4 and ArgoUML