demo_doc/puml/spacelab/usecase-ex.svg

803 lines
19 KiB
XML
Raw Permalink Normal View History

2021-06-25 21:37:59 +08:00
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="441.6667px" preserveAspectRatio="none" style="width:407px;height:441px;background:#00000000;" version="1.1" viewBox="0 0 407 441" width="407.2917px" zoomAndPan="magnify"><defs><linearGradient id="g1b9cetkjbvmqh0" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#B8B8B8"/><stop offset="100%" stop-color="#999999"/></linearGradient><linearGradient id="g1b9cetkjbvmqh1" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#B8B8B8"/><stop offset="100%" stop-color="#6B6B6B"/></linearGradient><linearGradient id="g1b9cetkjbvmqh2" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#7C9AB9"/><stop offset="100%" stop-color="#304D6D"/></linearGradient></defs><g><rect fill="url(#g1b9cetkjbvmqh0)" height="46.1528" rx="4.1667" ry="4.1667" style="stroke:#6B6B6B;stroke-width:1.0416666666666667;" width="394.7917" x="2.0833" y="2.0833"/><text fill="#304D6D" font-family="Verdana" font-size="20.8333" lengthAdjust="spacing" textLength="367.7083" x="15.625" y="33.4452">Usecase Diagram - spacelab theme</text><!--MD5=[111002b242a260edbcaabc3e471064d0]
cluster checkout--><rect fill="url(#g1b9cetkjbvmqh1)" height="317.7083" rx="4.1667" ry="4.1667" style="stroke:#304D6D;stroke-width:2.0833333333333335;" width="154.1667" x="144.2708" y="58.6528"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" font-weight="bold" lengthAdjust="spacing" textLength="61.4583" x="190.625" y="78.5116">checkout</text><ellipse cx="221.5149" cy="231.4481" fill="url(#g1b9cetkjbvmqh2)" rx="60.5774" ry="21.2328" style="stroke:#304D6D;stroke-width:2.0833333333333335;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="58.3333" x="192.3483" y="234.336">checkout</text><ellipse cx="221.2992" cy="125.1981" fill="url(#g1b9cetkjbvmqh2)" rx="59.8409" ry="21.2328" style="stroke:#304D6D;stroke-width:2.0833333333333335;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="57.2917" x="192.6534" y="128.086">payment</text><ellipse cx="221.5086" cy="337.6981" fill="url(#g1b9cetkjbvmqh2)" rx="39.2169" ry="21.2328" style="stroke:#304D6D;stroke-width:2.0833333333333335;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="28.125" x="207.4461" y="340.586">help</text><!--MD5=[92848cbaf65985a669855153c5362c37]
entity customer--><ellipse cx="59.8958" cy="196.1528" fill="url(#g1b9cetkjbvmqh2)" rx="8.3333" ry="8.3333" style="stroke:#304D6D;stroke-width:1.5625;"/><path d="M59.8958,204.4861 L59.8958,232.6111 M46.3542,212.8194 L73.4375,212.8194 M59.8958,232.6111 L46.3542,248.2361 M59.8958,232.6111 L73.4375,248.2361 " fill="none" style="stroke:#304D6D;stroke-width:1.5625;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="60.4167" x="29.6875" y="268.6157">customer</text><!--MD5=[ebeabf449828f4e0b33bbb47961e644b]
entity clerk--><ellipse cx="367.7083" cy="196.1528" fill="url(#g1b9cetkjbvmqh2)" rx="8.3333" ry="8.3333" style="stroke:#304D6D;stroke-width:1.5625;"/><path d="M367.7083,204.4861 L367.7083,232.6111 M354.1667,212.8194 L381.25,212.8194 M367.7083,232.6111 L354.1667,248.2361 M367.7083,232.6111 L381.25,248.2361 " fill="none" style="stroke:#304D6D;stroke-width:1.5625;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="30.2083" x="352.6042" y="268.6157">clerk</text><!--MD5=[852381a7bb976b86080137fb6d718ea9]
link customer to checkout--><path d="M95.5208,231.5694 C114.5625,231.5694 138.7292,231.5694 160.7083,231.5694 " fill="none" id="customer-checkout" style="stroke:#446E9B;stroke-width:3.125;"/><!--MD5=[3ad5c6d5c608bfd6b87dc9c07c40a15f]
link checkout to payment--><path d="M221.3542,210.0694 C221.3542,193.3611 221.3542,170.1007 221.3542,152.1632 " fill="none" id="checkout-to-payment" style="stroke:#446E9B;stroke-width:3.125;stroke-dasharray:7.0,7.0;"/><polygon fill="#446E9B" points="221.3542,146.7882,217.1875,156.1632,221.3542,151.9965,225.5208,156.1632,221.3542,146.7882" style="stroke:#446E9B;stroke-width:3.125;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="45.8333" x="181.7708" y="183.7199">include</text><!--MD5=[739e7928149c8fe27c2b5850560351c7]
link help to checkout--><path d="M221.3542,316.3194 C221.3542,299.6111 221.3542,276.3507 221.3542,258.4132 " fill="none" id="help-to-checkout" style="stroke:#446E9B;stroke-width:3.125;stroke-dasharray:7.0,7.0;"/><polygon fill="#446E9B" points="221.3542,253.0382,217.1875,262.4132,221.3542,258.2465,225.5208,262.4132,221.3542,253.0382" style="stroke:#446E9B;stroke-width:3.125;"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="53.125" x="178.125" y="289.9699">extends</text><!--MD5=[b4c4ee8f2d94c159d2b9e04bd372cbe0]
link checkout to clerk--><path d="M281.9063,231.5694 C305.1979,231.5694 330.2917,231.5694 347.0833,231.5694 " fill="none" id="checkout-clerk" style="stroke:#446E9B;stroke-width:3.125;"/><rect fill="#999999" height="36.025" rx="5.2083" ry="5.2083" style="stroke:#6B6B6B;stroke-width:1.0416666666666667;" width="135.4167" x="131.7708" y="389.9028"/><text fill="#EEEEEE" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="112.5" x="143.2292" y="412.8866">This is my legend</text><!--MD5=[fb358371706f1e4c2e4e367d0888cc55]
@startuml
!$THEME = "spacelab"
!if %not(%variable_exists("$BGCOLOR"))
!$BGCOLOR = "transparent"
!endif
skinparam backgroundColor $BGCOLOR
skinparam useBetaStyle false
!$BLUE = "#446e9b"
!$INDIGO = "#6610f2"
!$PURPLE = "#6f42c1"
!$PINK = "#e83e8c"
!$RED = "#cd0200"
!$ORANGE = "#fd7e14"
!$YELLOW = "#d47500"
!$GREEN = "#3cb521"
!$TEAL = "#20c997"
!$CYAN = "#3399f3"
!$WHITE = "#ffffff"
!$GRAY = "#777777"
!$GRAYDARK = "#333333"
!$PRIMARY = "#446e9b"
!$SECONDARY = "#999999"
!$SUCCESS = "#3cb521"
!$INFO = "#3399f3"
!$WARNING = "#d47500"
!$DANGER = "#cd0200"
!$LIGHT = "#eeeeee"
!$DARK = "#333333"
!$FGCOLOR = $WHITE
!$PRIMARY_DARK = "#304d6d"
!$PRIMARY_LIGHT = "#7c9ab9"
!$PRIMARY_TEXT = $WHITE
!$SECONDARY_DARK = "#6b6b6b"
!$SECONDARY_LIGHT = "#b8b8b8"
!$SECONDARY_TEXT = $WHITE
!$INFO_DARK = "#246baa"
!$INFO_LIGHT = "#70b8f7"
!$INFO_TEXT = $WHITE
!$SUCCESS_DARK = "#32a243"
!$SUCCESS_LIGHT = "#4cbc5c"
!$SUCCESS_TEXT = $WHITE
!$WARNING_DARK = "#945200"
!$WARNING_LIGHT = "#e19e4d"
!$WARNING_TEXT = $WHITE
!$DANGER_DARK = "#900100"
!$DANGER_LIGHT = "#dc4e4d"
!$DANGER_TEXT = $WHITE
!$DARK_DARK = "#242424"
!$DARK_LIGHT = "#707070"
!$LIGHT_DARK = "#a7a7a7"
!$LIGHT_LIGHT = "#f3f3f3"
!procedure $success($msg)
<font color=$SUCCESS><b>$msg
!endprocedure
!procedure $failure($msg)
<font color=$DANGER><b>$msg
!endprocedure
!procedure $warning($msg)
<font color=$WARNING><b>$msg
!endprocedure
!procedure $primary_scheme()
FontColor $PRIMARY_TEXT
BorderColor $PRIMARY_DARK
BackgroundColor $PRIMARY_LIGHT-$PRIMARY_DARK
!endprocedure
skinparam defaultFontName "Verdana"
skinparam defaultFontSize 12
skinparam dpi 100
skinparam shadowing false
skinparam roundcorner 8
skinparam ParticipantPadding 40
skinparam BoxPadding 40
skinparam Padding 5
skinparam ArrowColor $DARK
skinparam stereotype {
CBackgroundColor $SECONDARY_LIGHT
CBorderColor $SECONDARY_DARK
ABackgroundColor $SUCCESS_LIGHT
ABorderColor $SUCCESS_DARK
IBackgroundColor $DANGER_LIGHT
IBorderColor $DANGER_DARK
EBackgroundColor $WARNING_LIGHT
EBorderColor $WARNING_DARK
NBackgroundColor $INFO_LIGHT
NBorderColor $INFO_DARK
}
skinparam title {
FontColor $PRIMARY_DARK
BorderColor $SECONDARY_DARK
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
}
skinparam legend {
BackgroundColor $SECONDARY
BorderColor $SECONDARY_DARK
FontColor $LIGHT
}
!startsub swimlane
skinparam swimlane {
BorderColor $INFO
BorderThickness 2
TitleBackgroundColor $SECONDARY_LIGHT-$SECONDARY
TitleFontColor $PRIMARY_DARK
}
!endsub
!startsub activity
skinparam activity {
$primary_scheme()
BarColor $SUCCESS
StartColor $INFO
EndColor $INFO
DiamondBackgroundColor $SECONDARY_LIGHT-$SECONDARY_DARK
DiamondBorderColor $SECONDARY_DARK
DiamondFontColor $SECONDARY_TEXT
}
!endsub
!startsub participant
skinparam participant {
$primary_scheme()
ParticipantBorderThickness 2
}
!endsub
!startsub actor
skinparam actor {
$primary_scheme()
}
!endsub
!startsub arrow
skinparam arrow {
Thickness 3
Color $PRIMARY
FontColor $FGCOLOR
}
!endsub
!startsub sequence
skinparam sequence {
BorderColor $PRIMARY
TitleFontColor $PRIMARY
BackgroundColor $BGCOLOR
StartColor $PRIMARY
EndColor $PRIMARY
BoxBackgroundColor $BGCOLOR
BoxBorderColor $DARK
BoxFontColor $DARk
LifeLineBorderColor $SECONDARY
LifeLineBorderThickness 2
LifeLineBackgroundColor $SECONDARY_DARK-$SECONDARY_DARK
GroupBorderColor $DARK
GroupFontColor $DARK
GroupHeaderFontColor $INFO
GroupBackgroundColor $SECONDARY_DARK-$SECONDARY_DARK
GroupBodyBackgroundColor $BGCOLOR
GroupHeaderBackgroundColor $BGCOLOR
DividerBackgroundColor $DARK_LIGHT-$DARK_DARK
DividerBorderColor $DARK
DividerBorderThickness 2
DividerFontColor $LIGHT
ReferenceBackgroundColor $BGCOLOR
ReferenceBorderColor $DARK
ReferenceFontColor $DARK
ReferenceHeaderFontColor $INFO
ReferenceHeaderBackgroundColor $SECONDARY_DARK-$SECONDARY_DARK
}
!endsub
!startsub partition
skinparam partition {
BorderColor $PRIMARY
FontColor $PRIMARY
BackgroundColor $BGCOLOR
}
!endsub
!startsub collections
skinparam collections {
$primary_scheme()
}
!endsub
!startsub control
skinparam control {
$primary_scheme()
}
!endsub
!startsub entity
skinparam entity {
$primary_scheme()
}
!endsub
!startsub boundary
skinparam boundary {
$primary_scheme()
}
!endsub
!startsub agent
skinparam agent {
BackgroundColor $WARNING
BorderColor $WARNING_LIGHT
FontColor $DARK
}
!endsub
!startsub note
skinparam note {
BorderThickness 1
BackgroundColor $INFO_LIGHT-$INFO_DARK
BorderColor $INFO_DARK
FontColor $WHITE
}
!endsub
!startsub artifact
skinparam artifact {
BackgroundColor $DARK
BorderColor $DARK_DARK
FontColor $LIGHT
}
!endsub
!startsub component
skinparam component {
$primary_scheme()
}
!endsub
!startsub interface
skinparam interface {
BackgroundColor $DANGER_DARK
BorderColor $DANGER
FontColor $DARK
}
!endsub
!startsub storage
skinparam storage {
BackgroundColor $WARNING
BorderColor $WARNING_DARK
FontColor $WARNING_TEXT
}
!endsub
!startsub node
skinparam node {
BackgroundColor $SECONDARY
BorderColor $LIGHT
FontColor $LIGHT
}
!endsub
!startsub cloud
skinparam cloud {
BackgroundColor transparent
BorderColor #F2FCFE
FontColor $DARK
}
!endsub
!startsub database
skinparam database {
$primary_scheme()
}
!endsub
!startsub class
skinparam class {
$primary_scheme()
FontColor $WHITE
HeaderBackgroundColor $PRIMARY_LIGHT-$PRIMARY
StereotypeFontColor $LIGHT
BorderThickness 1
AttributeFontColor $LIGHT
AttributeFontSize 11
}
!endsub
!startsub object
skinparam object {
$primary_scheme()
StereotypeFontColor $DARK
BorderThickness 1
AttributeFontColor $SECONDARY_TEXT
AttributeFontSize 11
}
!endsub
!startsub usecase
skinparam usecase {
$primary_scheme()
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub rectangle
skinparam rectangle {
$primary_scheme()
BackgroundColor $SECONDARY_LIGHT-$SECONDARY_DARK
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub package
skinparam package {
BackgroundColor $SECONDARY_LIGHT-$SECONDARY_DARK
BorderColor $PRIMARY
FontColor $PRIMARY
BorderThickness 2
}
!endsub
!startsub folder
skinparam folder {
BackgroundColor $SECONDARY_LIGHT-$SECONDARY_DARK
BorderColor $WARNING
FontColor $WARNING
BorderThickness 2
}
!endsub
!startsub frame
skinparam frame {
BackgroundColor $SECONDARY_LIGHT-$SECONDARY_DARK
BorderColor $INFO
FontColor $INFO
BorderThickness 2
}
!endsub
!startsub state
skinparam state {
$primary_scheme()
StartColor $INFO
EndColor $INFO
AttributeFontColor $SECONDARY_TEXT
AttributeFontSize 11
}
!endsub
!startsub queue
skinparam queue {
$primary_scheme()
}
!endsub
!startsub card
skinparam card {
BackgroundColor $INFO_LIGHT-$INFO_DARK
BorderColor $INFO_DARK
FontColor $INFO_TEXT
}
!endsub
!startsub file
skinparam file {
BackgroundColor $SECONDARY_DARK-$SECONDARY_DARK
BorderColor $LIGHT
FontColor $LIGHT
}
!endsub
!startsub stack
skinparam stack {
$primary_scheme()
}
!endsub
!if %variable_exists("$THEME")
title Usecase Diagram - $THEME theme
!else
title Usecase Diagram
!endif
legend
This is my legend
endlegend
'skinparam BackgroundColor transparent
left to right direction
actor customer
actor clerk
rectangle checkout {
customer - - (checkout)
(checkout) .> (payment) : include
(help) .> (checkout) : extends
(checkout) - - clerk
}
@enduml
@startuml
skinparam backgroundColor transparent
skinparam useBetaStyle false
skinparam defaultFontName "Verdana"
skinparam defaultFontSize 12
skinparam dpi 100
skinparam shadowing false
skinparam roundcorner 8
skinparam ParticipantPadding 40
skinparam BoxPadding 40
skinparam Padding 5
skinparam ArrowColor #333333
skinparam stereotype {
CBackgroundColor #b8b8b8
CBorderColor #6b6b6b
ABackgroundColor #4cbc5c
ABorderColor #32a243
IBackgroundColor #dc4e4d
IBorderColor #900100
EBackgroundColor #e19e4d
EBorderColor #945200
NBackgroundColor #70b8f7
NBorderColor #246baa
}
skinparam title {
FontColor #304d6d
BorderColor #6b6b6b
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor #b8b8b8-#999999
}
skinparam legend {
BackgroundColor #999999
BorderColor #6b6b6b
FontColor #eeeeee
}
skinparam swimlane {
BorderColor #3399f3
BorderThickness 2
TitleBackgroundColor #b8b8b8-#999999
TitleFontColor #304d6d
}
skinparam activity {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
BarColor #3cb521
StartColor #3399f3
EndColor #3399f3
DiamondBackgroundColor #b8b8b8-#6b6b6b
DiamondBorderColor #6b6b6b
DiamondFontColor #ffffff
}
skinparam participant {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
ParticipantBorderThickness 2
}
skinparam actor {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam arrow {
Thickness 3
Color #446e9b
FontColor #ffffff
}
skinparam sequence {
BorderColor #446e9b
TitleFontColor #446e9b
BackgroundColor transparent
StartColor #446e9b
EndColor #446e9b
BoxBackgroundColor transparent
BoxBorderColor #333333
BoxFontColor $DARk
LifeLineBorderColor #999999
LifeLineBorderThickness 2
LifeLineBackgroundColor #6b6b6b-#6b6b6b
GroupBorderColor #333333
GroupFontColor #333333
GroupHeaderFontColor #3399f3
GroupBackgroundColor #6b6b6b-#6b6b6b
GroupBodyBackgroundColor transparent
GroupHeaderBackgroundColor transparent
DividerBackgroundColor #707070-#242424
DividerBorderColor #333333
DividerBorderThickness 2
DividerFontColor #eeeeee
ReferenceBackgroundColor transparent
ReferenceBorderColor #333333
ReferenceFontColor #333333
ReferenceHeaderFontColor #3399f3
ReferenceHeaderBackgroundColor #6b6b6b-#6b6b6b
}
skinparam partition {
BorderColor #446e9b
FontColor #446e9b
BackgroundColor transparent
}
skinparam collections {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam control {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam entity {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam boundary {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam agent {
BackgroundColor #d47500
BorderColor #e19e4d
FontColor #333333
}
skinparam note {
BorderThickness 1
BackgroundColor #70b8f7-#246baa
BorderColor #246baa
FontColor #ffffff
}
skinparam artifact {
BackgroundColor #333333
BorderColor #242424
FontColor #eeeeee
}
skinparam component {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam interface {
BackgroundColor #900100
BorderColor #cd0200
FontColor #333333
}
skinparam storage {
BackgroundColor #d47500
BorderColor #945200
FontColor #ffffff
}
skinparam node {
BackgroundColor #999999
BorderColor #eeeeee
FontColor #eeeeee
}
skinparam cloud {
BackgroundColor transparent
BorderColor #F2FCFE
FontColor #333333
}
skinparam database {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam class {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
FontColor #ffffff
HeaderBackgroundColor #7c9ab9-#446e9b
StereotypeFontColor #eeeeee
BorderThickness 1
AttributeFontColor #eeeeee
AttributeFontSize 11
}
skinparam object {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
StereotypeFontColor #333333
BorderThickness 1
AttributeFontColor #ffffff
AttributeFontSize 11
}
skinparam usecase {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
BorderThickness 2
StereotypeFontColor #446e9b
}
skinparam rectangle {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
BackgroundColor #b8b8b8-#6b6b6b
BorderThickness 2
StereotypeFontColor #446e9b
}
skinparam package {
BackgroundColor #b8b8b8-#6b6b6b
BorderColor #446e9b
FontColor #446e9b
BorderThickness 2
}
skinparam folder {
BackgroundColor #b8b8b8-#6b6b6b
BorderColor #d47500
FontColor #d47500
BorderThickness 2
}
skinparam frame {
BackgroundColor #b8b8b8-#6b6b6b
BorderColor #3399f3
FontColor #3399f3
BorderThickness 2
}
skinparam state {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
StartColor #3399f3
EndColor #3399f3
AttributeFontColor #ffffff
AttributeFontSize 11
}
skinparam queue {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
skinparam card {
BackgroundColor #70b8f7-#246baa
BorderColor #246baa
FontColor #ffffff
}
skinparam file {
BackgroundColor #6b6b6b-#6b6b6b
BorderColor #eeeeee
FontColor #eeeeee
}
skinparam stack {
FontColor #ffffff
BorderColor #304d6d
BackgroundColor #7c9ab9-#304d6d
}
title Usecase Diagram - spacelab theme
legend
This is my legend
endlegend
left to right direction
actor customer
actor clerk
rectangle checkout {
customer - - (checkout)
(checkout) .> (payment) : include
(help) .> (checkout) : extends
(checkout) - - clerk
}
@enduml
PlantUML version 1.2021.01(Mon Feb 01 23:55:08 PST 2021)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>