![]() ![]() ![]() ![]() |
|
|
| ![]() ![]() ![]() |
|
Audience | Granularity of Requirements | Deliverable | Individual Documents | |
---|---|---|---|---|
Static | Dynamic | |||
End-Users | Business Functional and Non-Functional Requirements |
| Features for stakeholders, Domain Glossary, Deployment Diagrams | Role State Transitions Scenarios through Use Cases ![]() |
Designers | System Requirements |
| Logical Database Schema Objects and Services | Robustness Diagrams User Interface Guidelines Activity Diagrams |
Developers | Subsystem Requirements |
| Physical Database Structure (DDL) | Sequence Diagrams Components User Interface User Interface Mockups |
Programmers | Unit Requirements |
| Package Diagrams Class Diagrams | Application demo modules Unit Tests |
|
Development Stage | Graphical Representations |
---|---|
Use Case Model | Use case, Activity Diagrams |
Domain Model | BMPN (Business Process Modeling Notation), Class, State Diagrams |
Architectural Design | Robustness, Package, Implementation Diagrams |
Detailed Design | Class, Sequence, Package Diagrams |
Source Code | Java, C#, C++, XML, DDL |
|
Model Views | Focus |
Diagrams![]() |
---|---|---|
Use Case view | what functionality the system provides to its users.
Code generated from this diagram appear in user GUI menus as activity that a user wants to do and which the computer can help. |
![]() ![]() ![]() ![]() ![]() ![]() |
Robustness (Static) view ("rescued" from Jacobson�s Objectory work before UML) | The traceability between what the system does (use cases) to how the system works (sequence diagrams). Done to disambiguate the use cases and identify gaps in the domain model. | ![]() Control objects (controllers) transmit data from boundary objects to persistent entity objects (domain databases or other repositories of data). An improvement. ![]() |
Structural (Static) view | what elements are in the system structure. |
Class diagrams![]() ![]() ![]()
|
Behavioral (Dynamic) view | how elements interact over time (in lifecycles) to provide the functionality of the system. |
Two types of Interaction diagrams show how objects interact with each other:
Some modeling software, such as Rational Rose, lets you toggle between these two views. The ICONIX methodology eliminates Collaboration diagrams entirely for its redundancy.
UML2 added for embedded software Additionally:
A variant of Activity Diagrams are UML 2.0
Agile modelers begin from a |
Implementation view | how the system is realized or implemented (into a jar file). | ![]() ![]() ![]() ![]() UML 2 added ports and interfaces to component diagrams. |
Environmental view | the context (run-time configuration) of an implemented system in use. |
![]() ![]() ![]() ![]() |
| ![]() ![]() ![]() |
| UML 1.1 was first adopted Nov. '97. UML 1.2 had editorial revisions without significant technical changes. UML 1.3 doc# 06-08-99 adopted Nov. '99 UML 1.4 doc# 01-09-67 formally adopted Q2 2001 UML 2.0 adoption planned for end of 2002 breaks out into
The Unified Modeling Language User Guide by Booch, Rumbaugh, and Jacobson UML Notation Guide, Version 1.1
| ![]() ![]() ![]() |
|
<<file>> | A physical file in the context of the system developed. |
<<script>> | A script file that can be interpreted by a computer system. |
<<executable>> | A program file that can be executed on a computer system. |
<<library>> | A static or dynamic library file. |
<<source>> | A source file that can be compiled into an executable file. |
<<document>> | A generic file that is not a source file or executable. |
notes, dependencies, and type/instance and type/class dichotomies
The default stereotypes within Microsoft Visio 2003 provides are listed below. Its UML Stereotypes dialog does not allow sorting, so here is the list sorted by Base Class:
Stereotype | Base Class |
---|---|
Action | |
ActionSequence | |
ActionState | |
ActivityModel | |
ActivityState | |
Actor | |
Adornment | |
Argument | |
Association | |
AssociationEnd | |
association | AssociationEndRole |
global | AssociationEndRole |
local | AssociationEndRole |
self | AssociationEndRole |
AssociationRole | |
Attribute | |
AttributeLink | |
create | BehaviorFeature |
destroy | BehaviorFeature |
Binding | |
CallAction | |
CallEvent | |
ChangeEvent | |
delegate | Class |
implemtation class | Class |
struct | Class |
type | Class |
union | Class |
utility | Class |
powertype | Classifier |
process | Classifier |
stereotype | Classifier |
thread | Classifier |
ClassifierInState | |
ClassifierRole | |
Collaboration | |
requirement | Comment |
document | Component |
executable | Component |
file | Component |
library | Component |
table | Component |
CompositeState | |
invariant | Constraint |
postcondition | Constraint |
powertype | Constraint |
CreateAction | |
enumeration | DataType |
DataValue | |
becomes | Dependency |
call | Dependency |
copy | Dependency |
derived | Dependency |
friend | Dependency |
import | Dependency |
instance | Dependency |
powertype | Dependency |
send | Dependency |
DestroyAction | |
Element | |
create | Event |
destroy | Event |
extends | Generalization |
inherits | Generalization |
private | Generalization |
protected | Generalization |
subclass | Generalization |
subtype | Generalization |
uses | Generalization |
Guard | |
Instance | |
Interface | |
Link | |
association | LinkEnd |
global | LinkEnd |
local | LinkEnd |
self | LinkEnd |
LinkObject | |
LinkInvocation | |
Message | |
MessageInstance | |
Method | |
useCaseModel | Model |
ModelElement | |
Namespace | |
Node | |
Object | |
ObjectFlowState | |
Operation | |
facade | Package |
framework | Package |
stub | Package |
system | Package |
topLevelPackage | Package |
Parameter | |
Partition | |
Primitive | |
PseudoState | |
Reception | |
deletion | Refinement |
Request | |
ReturnAction | |
Request | |
ReturnAction | |
SendAction | |
Signal | |
SignalEvent | |
SimpleState | |
State | |
StateMachine | |
StateVertex | |
Stereotype | |
StructuralFeature | |
SubMachineState | |
TaggedValue | |
TerminateAction | |
TimeEvent | |
Trace | |
Transition | |
UniterpretedAction | |
Usage | |
UseCase | |
UseCaseInstance | |
ViewElement |
| ![]() ![]() ![]() |
![]() | Your first name: Your family name: Your location (city, country): Your Email address: |
Top of Page ![]() Thank you! |