Sequence

A→B
Sync Msg
A -> B: Sync Message
A—B
Async Msg
A ->> B: Async Message
A→A
Self Msg
B -> B: Do work
activate B #FFBBBB
    
deactivate B
alt
Alternate
alt Success
    A -> B: Success
else failed
    A -> C: Fail
end
Ω
Loop
loop until some condition
    A -> B: Keep working
end

Use case

A->(B)
Actor -> Usecase
Customer -> (start) : Customer starts application
(A)
Use case
usecase (First usecase) as U1
Actor
Actor
actor Customer as C
Extend
(Start) <|-- (Use)

Class

©
Class
class Dummy {
  String data
  void methods()
}
♦→
Contains
Class01 "1" *-- "many" Class02 : contains
Ψ
Aggregation
Class03 o-- Class04 : agregation
Directed
Class05 --> "1" Class06
A—B
Association
Driver -- Car: drives
Δ
Inherits
Parent <|-- Child

Component

Ο
Interface
HTTP - [Webserver]
[A]
Component
[Component]
C→Ο
Use
[Client] ..> HTTP : use
Π
Package
package "Some Group" {
    HTTP - [First Component]
    [Another Component]
}