Professional Documents
Culture Documents
UML2(UML2.0)
James Rumbaugh, Ivar Jacobson, Grady Booch,
“The Unified Modeling Language Reference Manual, Second Edition”,
Addison-Wesley, 2005.
Koichiro Ochimizu
Japan Advanced Institute of
Science and technologies
School of Information Science
Schedule(3/3)
• March 12
– 13:00 Unified Process and COMET
– 14:30 Case Study of Elevator Control System
(problem definition, use case model)
• March 13
– 13:00 Case Study of Elevator Control System
(finding analysis classes by developing a consolidated
communication diagram)
– 14:30 Case Study of Elevator Control System
(sub-system structuring and task structuring)
• March 14
– 13:00 Case Study of Elevator Control System
( performance analysis)
– 14:30 UML2.0 and MDA
UML2.0 1
Koichiro Ochimizu, JAIST
authorized
alt print tickets ( performance ,seats )
unauthorized
reject
eject card
UML2.0 2
Koichiro Ochimizu, JAIST
rehearse completion
transition
• An activity shows the flow
of control among the
dress rehearsal computational activities
involved in performing a
join calculation or a workflow.
Activities are shown on
perform activity diagrams
Structured Classifier
name: Type port
connector
name1:Type part
UML2.0 3
Koichiro Ochimizu, JAIST
guide: PerformanceGuide
db:PerformanceDB [*]
• Each port has a set of provides interfaces and required interfaces that define its external
interactions. A provided interface specifies the services that a message to the port may
request. A required interface specifies the services that a message from the port may
require from the external environment.
J.Rumbaugh, I.Jacobson, G.Booch,”The Unified Modeling Language Reference Manual, Second Edition” Addison-Wesley 2005
UML2.0 4
Koichiro Ochimizu, JAIST
component
:CreditCardChargers use : Tickets
supplier purchase
status
provided interface
required interface
client
groupSales
:TicketSeller : ManagerInterface
subscriptionSales IndividualSales
: KioskInterface : ClerkInterface
customerAccess clerkAccess
component
Tickets definition
CreditCardCharges
purchase status
provided interface
charge
compatible interface purchase
charge required interface
status manage
groupSales
TicketSeller ManagerInterface
subscriptionSales IndividualSales
groupSales
subscriptionSales individualSales subscriptionSales individualSales
KioskInterface ClerkInterface
clerkAccess
customerAccess
UML2.0 5
Koichiro Ochimizu, JAIST
Views of UML1.5
Component Logical
View View
Use-Case
View
Deployment Concurrency
View View
H.E. Eriksson and M. Penker, “UML Toolkit” John Wiley & Sons, Inc.
UML2.0 Views
• Major Area,
‒ View
• Diagram
‒ Main Concepts
• structural
‒ static view:class diagram
‒ design view:internal structure (connector, interface, part, port, provided
interface, role, required interface), collaboration diagram (connector,
collaboration use, role), component diagram (component, dependency, port,
provided interface, realization, required interface, subsystem)
‒ use case view:usecase diagram
• dynamic
‒ state machine view:state machine diagram
‒ activity view:activity diagram
‒ interaction view:sequence diagram, communication diagram
• physical
‒ deployment view:deployment diagram
• model management
‒ model management view:package diagram
‒ profile:package diagram
UML2.0 6
Koichiro Ochimizu, JAIST
MDA(1/2)
M3
MOF (Meta Object Facility)
MetaMetaModel
M1
Class “Customer”, Class “Account”
Model
M0
Customer Jane Smith, Account 2989
objects and data
UML2.0 7
Koichiro Ochimizu, JAIST
MDA(2/2)
Meta Language
is-described-by is-described-by
Mapping
Language 1 Definition Language 2
PIM PIM
(Platform (Platform
Translator Specific
Independent
Model) Model)
Other Modifications
UML2.0 8
Koichiro Ochimizu, JAIST
buy
tickets
Clerk
buy
<<include>> subscription
relationship <<include>>
make
Kiosk charges Credit card
Service
use case
survey
sales Supervisor
Class Content
stereotype icon
<<stereotypeName>> stereotype name
Cname class name (italics for
abstract)
+attrName:Cname = expression public attribute with initial
#attrName:Cname value
visibility
-attrName: Cname[*] protected attribute
private attribute with
+opName(p:C1, q:C2): C3 multiplicity many
<<constructor>> public concrete operation
opName(v:Cname = value) with return type
stereotype on subsequent
optional Responsibility operations
named text description abstract operation with
default value
compartment
compartment name
compartment list element
<<stereotypeName>>
tagName = value stereotype application
tagged value
J.Rumbaugh, I.Jacobson, G.Booch,”The Unified Modeling Language Reference Manual, Second Edition” Addison-Wesley 2005
UML2.0 9
Koichiro Ochimizu, JAIST
1 performance
Ticket qualifier 1..*
3..6 available: Boolean Performance
seat:String
sell(c:Customer) 0..1 1 date: Date
exchange time:TOD
operations
Active Class
Cname
Attr: Atype
Op(par:Type):Rtype
J.Rumbaugh, I.Jacobson, G.Booch,”The Unified Modeling Language Reference Manual, Second Edition” Addison-Wesley 2005
UML2.0 10
Koichiro Ochimizu, JAIST
Relationship
Aname
association
generalization
realization
<<kind>>
dependency
J.Rumbaugh, I.Jacobson, G.Booch,”The Unified Modeling Language Reference Manual, Second Edition” Addison-Wesley 2005
TheatreSales
1 1 *
kiosk: Kiosk[*] :BoxOffice terminal: SalesTerminal[*]
*
UML2.0 11
Koichiro Ochimizu, JAIST
Interaction View
alt authorized
print tickets ( performance ,seats )
unauthorized
reject
eject card
UML2.0 12
Koichiro Ochimizu, JAIST
1: request(count, performance)
4: offer(seat-list)
link 5: buy(seats) guide: DBCluster
8: comfirm(seats, cost)
subscribe/assign()
timed out/unlock()
state
initial state
accept/buy()
select/lock() Sold
Available Locked
reject/unlock()
transition
exchange(other)/assign();reset(other)
trigger event
event parameter effect
UML2.0 13
Koichiro Ochimizu, JAIST
TicketServer
<<artifact>> <<artifact>>
CreditCardCharges.jar ManagerInterface.jar
artifact
<<artifact>> <<artifact>>
TicketSeller.jar TicketDB
dependency
1 communication 1
* association *
SalesTerminal
Kiosk
<<artifact>> <<artifact>>
CustomerInterface.c ClerkInterface.c
<<manifest>> <<manifest>>
KioskInterface ClerkInterface
Customer Clerk
node instance
Main St. kiosk: Kiosk
headquarters: TicketServer
UML2.0 14
Koichiro Ochimizu, JAIST
Publicity Scheduling
Customer Ticket
Ticket Sales
Records Records
Operations
stereotype icon
stereotype
<<database>>
TicketDB application
TicketDB
<<authorship>>
<<database>> author = “Frank Martin” tagged values
Scheduling Due = Dec.31,2009
UML2.0 15