![]() ![]() ![]() ![]() |
|
|
| ![]() ![]() ![]() |
|
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. |
![]() ![]() ![]() ![]() |
| ![]() ![]() ![]() |
|
<<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! |