Title: Tutorial on ArgoUML prepared by Mei Zhang
1Tutorial on ArgoUMLprepared by Mei Zhang
2Overview
- Basics
- Unified Modeling Language(UML)
- CASE-tools supporting UML
- ArgoUML
- Features
- Samples
- References
3Unified Modeling Language (UML)
- The UML is widely used in object-oriented
software development. - One keystone for its success in industry is the
wealth of CASE tools supporting UML.
http//www.omg.org/technology/documents/formal/uml
.htm
4CASE-tools supporting UML
EssModel Fujaba More ArgoUML More Visual Paradigm Community Edition More Rational Rose
Price 0 0 0 0 4290
Open Source UML tool. X X
Supported Platform(s) Windows Only Java VM Java VM Java VM Windows Only
Reverse Engineering. X X X X X
Forward Engineering/Code generation X X X
Supported UML diagrams Class diagram only. All types. All types. All types. All types.
Print and export class diagrams. X X X X X
Modify or create UML diagrams. X X X X
run-time model critique N/A N/A X N/A N/A
XMI import X N/A X
OCL support N/A N/A X N/A X
UML Modeling Tools http//www.objectsbydesign.com
/tools/umltools_byCompany.html Free UML Tools
http//www.bcs-oops.org.uk/cgi-bin/view/Technical/
FreeUMLTools
5What is ArgoUML?
- ArgoUML is a Java based UML tool that helps you
do your design using UML. It is able to create
and save most of the nine standard UML diagrams.
- ArgoUML is not only a free UML modeling tool, it
is also an Open Source Development project where
you are invited to contribute.
6Where does the name ArgoUML come from?
- According to Greek mythology, the hero Jason
built a ship called Argo and with his comrades,
the Argonauts, he left for the quest of the
golden fleece. Poseidon, god of seas, protected
and safely guided their journey.
7Who to use?
- The users of ArgoUML are
- software designers architects
- software developers
- business analysts
- systems analysts and other professionals involved
in the analysis, design and development of
software applications.
8Features
- Support open standards extensively UML, XMI,
SVG, OCL and others. - 100 Platform independent thanks to the exclusive
use of Java - Open Source, which allows extending or
customizing. - Cognitive features like
- reflection-in-action
- opportunistic design
- comprehension and problem solving
9Features(cont)
Design critics are simple agents that
continuously execute in a background thread of
control. They analyze the design as the designer
is working and suggest possible improvements.
- Cognitive features like
- reflection-in-action
- Design Critics
- Corrective Automations (partially implemented)
- "To Do" List
- User model (partially implemented)
- opportunistic design
- "To Do" List
- Checklists
- Comprehension and Problem Solving
- Explorer Perspectives
- Multiple, Overlapping Views
- Alternative Design Representations Graphs, Text,
or Table
10Critiquing Systems
- Phases of the ADAIR Process
- Activate
- Detect
- Advise
- Improve
- Record
11Critique
1. Activate
12The To-Do Pane
3. Advise
4. Improve
2. Detect
13Checklist
14How to use
- User Interface
- Class Diagram Specific Tools
- How to install ArgoUML?
http//argouml.tigris.org/documentation/defaulthtm
l/manual/pt02.html
http//argouml.tigris.org/documentation/defaulthtm
l/manual/ch11s03.htmld0e9002
http//argouml.tigris.org/documentation/defaulthtm
l/quick-guide/ch02.html
15Overview of ArgoUMLWindows
ArgoUML's user interface is divided into 4 panels
Top left a hierarchical view of the current
project file.
Top right editor for the selected part of the
project, in this case a class diagram.
Bottom right details of the selected object in
the diagram or the selected "to do" item.
Bottom left the designer's "to do" list.
16Supported Diagrams
- The current developer release of ArgoUML
implements all the diagram types of the UMLÂ 1.3
standard - Use Case Diagrams
- Class Diagrams
- Behavior Diagrams
- Statechart Diagrams
- Activity Diagrams
- Interaction Diagrams
- Sequence Diagrams
- Collaboration Diagrams
- Implementation Diagrams
- Component Diagrams
- Deployment Diagrams
Todays Tutorial!
Class Diagrams
17The Menu Bar and Toolbars
1. New a Model.
18The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
19The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
20The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
21The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
- Add an attribute in the class Customer.
22The Menu Bar and Toolbars
1. New a Model.
Double click the return
2. Add a class in the class diagram in the Model.
- Add an attribute in the class Customer.
- Add an method in the class Customer.
23The Menu Bar and Toolbars
1. New a Model.
Double click it.
2. Add a class in the class diagram in the Model.
3. Add a generalization to the class Customer.
- Alternative I double click the generalization
icon under the class.
24The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
3. Add a generalization to the class Customer.
- Alternative I double click the generalization
icon under the class.
- Alternative II add a new class and use the
generalization line in the tool bar.
25The Menu Bar and Toolbars
1. New a Model.
Left click when the mouse is on the icon, then
drag it to the class to be associated, release
the left button in the mouse. The associate is
done now.
2. Add a class in the class diagram in the Model.
Double click it.
3. Add a generalization to the class Customer.
4. Add a association to the class Customer.
26The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
3. Add a generalization to the class Customer.
4. Add a association to the class Customer.
5. Add a constraints to the class Order.
27The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
3. Add a generalization to the class Customer.
4. Add a association to the class Customer.
5. Add a constraints to the class Order.
http//argouml.tigris.org/documentation/defaulthtm
l/manual/ch12s07.htmls2.ref.details_constraint_ed
itor
28The Menu Bar and Toolbars
1. New a Model.
2. Add a class in the class diagram in the Model.
3. Add a generalization to the class Customer.
4. Add a association to the class Customer.
5. Add a constraints to the class Order.
6. Add a aggregation and composition to the class
Order.
29The Menu Bar and Toolbars
30The Menu Bar and Toolbars
The Folder-Up icon. Clicking on this icon will bring us to the parent folder of the current folder.
The Home Folder icon. Clicking on this icon will bring us to our home directory.
The New Folder icon. Clicking on this icon will create a new folder called "New Folder" under the current folder. After the folder is created selecting it an clicking in the name allows us to select the name of our choice.
The Folders Presentation Icon.
31The Menu Bar and Toolbars
Save to picture
- Permanently Save
- Save to a file, including .gif, .ps, .svg,
.eps, .pgn
32Save to picture
- Temporarily Save ---- Save to a clipboard.
-
33XMI XML Metadata Interchange
Using XMI from Rational Rose
Provide XMI to Rational Rose
34References
- Object Management Group(OMG) UML 2.0
- http//www.omg.org/technology/documents/formal/um
l.htm - UML Modeling Tools
- http//www.objectsbydesign.com/tools/umltools_byC
ompany.html - Free UML Tools
- http//www.bcs-oops.org.uk/cgi-bin/view/Technical
/FreeUMLTools - Information on Argo UML, an .open source UML
modeling tool built in Java - http//argouml.tigris.org/
- Jason Robbins
- http//www1.ics.uci.edu/jrobbins/
- Poseidon for UML
- http//www.gentleware.com/products/
- ArgoUML Manual
35Acronym
UML Unified Modelling Language
OCL Object Constraint Language
XMI XML Metadata Interchange
GEF UCI Graph Editing Framework
SVG Scalable Vector Graphics
CASE Computer-Aided Software Engineering