Skip to content

Commit c9ca312

Browse files
committed
Adjusted archimate shapes for behavioral, passive structure elements and motivations. Also a couple of custom looks for Product, a couple of nodes and cloud for meaning.
1 parent d44f015 commit c9ca312

File tree

1 file changed

+75
-31
lines changed

1 file changed

+75
-31
lines changed

Archimate.puml

Lines changed: 75 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
skinparam defaultTextAlignment center
1111
skinparam wrapWidth 400
1212
skinparam maxMessageSize 150
13+
skinparam StereotypeAlignment right
1314

1415
skinparam Arrow {
1516
Color #000000
@@ -25,6 +26,7 @@ skinparam Folder<<grouping>> {
2526
}
2627
skinparam Folder<<group>> {
2728
Shadowing true
29+
StereotypeFontSize 0
2830
FontColor #444444
2931
BackgroundColor lightgrey
3032
}
@@ -35,6 +37,48 @@ skinparam rectangle<<boundary>> {
3537
BorderColor #444444
3638
BorderStyle dashed
3739
}
40+
skinparam node {
41+
StereotypeAlignment right
42+
}
43+
skinparam cloud {
44+
StereotypeAlignment right
45+
}
46+
skinparam frame {
47+
StereotypeAlignment right
48+
}
49+
skinparam archimate {
50+
StereotypeAlignment right
51+
RoundCorner<<strategy-capability>> 25
52+
RoundCorner<<strategy-course-of-action>> 25
53+
RoundCorner<<business-process>> 25
54+
RoundCorner<<business-function>> 25
55+
RoundCorner<<business-interaction>> 25
56+
RoundCorner<<business-event>> 25
57+
RoundCorner<<business-service>> 25
58+
RoundCorner<<application-function>> 25
59+
RoundCorner<<application-interaction>> 25
60+
RoundCorner<<application-process>> 25
61+
RoundCorner<<application-event>> 25
62+
RoundCorner<<application-service>> 25
63+
RoundCorner<<technology-function>> 25
64+
RoundCorner<<technology-process>> 25
65+
RoundCorner<<technology-interaction>> 25
66+
RoundCorner<<technology-event>> 25
67+
RoundCorner<<technology-infra-service>> 25
68+
RoundCorner<<implementation-workpackage>> 25
69+
RoundCorner<<implementation-event>> 25
70+
DiagonalCorner<<motivation-stakeholder>> 12
71+
DiagonalCorner<<motivation-driver>> 12
72+
DiagonalCorner<<motivation-assessment>> 12
73+
DiagonalCorner<<motivation-goal>> 12
74+
DiagonalCorner<<motivation-outcome>> 12
75+
DiagonalCorner<<motivation-principle>> 12
76+
DiagonalCorner<<motivation-requirement>> 12
77+
DiagonalCorner<<motivation-constraint>> 12
78+
}
79+
skinparam usecase {
80+
BorderColor #000000
81+
}
3882

3983
' Layout
4084
' ##################################
@@ -76,10 +120,10 @@ skinparam rectangle<<boundary>> {
76120
!define Business_Interaction(e_alias, e_label) archimate #BUSINESS "e_label" <<business-interaction>> as e_alias
77121
!define Business_Event(e_alias, e_label) archimate #BUSINESS "e_label" <<business-event>> as e_alias
78122
!define Business_Service(e_alias, e_label) archimate #BUSINESS "e_label" <<business-service>> as e_alias
79-
!define Business_Object(e_alias, e_label) archimate #BUSINESS "e_label" <<business-object>> as e_alias
80-
!define Business_Contract(e_alias, e_label) archimate #BUSINESS "e_label" <<business-contract>> as e_alias
81-
!define Business_Representation(e_alias, e_label) archimate #BUSINESS "e_label" <<business-representation>> as e_alias
82-
!define Business_Product(e_alias, e_label) archimate #BUSINESS "e_label" <<business-product>> as e_alias
123+
!define Business_Object(e_alias, e_label) archimate #BUSINESS "---\n e_label" <<business-object>> as e_alias
124+
!define Business_Contract(e_alias, e_label) archimate #BUSINESS "---\n e_label \n---" <<business-contract>> as e_alias
125+
!define Business_Representation(e_alias, e_label) archimate #BUSINESS "---\n e_label" <<business-representation>> as e_alias
126+
!define Business_Product(e_alias, e_label) frame #BUSINESS "e_label" <<$archimate/business-product>> as e_alias
83127

84128
'Application Elements
85129
!define Application_Component(e_alias, e_label) archimate #APPLICATION "e_label" <<application-component>> as e_alias
@@ -90,47 +134,47 @@ skinparam rectangle<<boundary>> {
90134
!define Application_Process(e_alias, e_label) archimate #APPLICATION "e_label" <<application-process>> as e_alias
91135
!define Application_Event(e_alias, e_label) archimate #APPLICATION "e_label" <<application-event>> as e_alias
92136
!define Application_Service(e_alias, e_label) archimate #APPLICATION "e_label" <<application-service>> as e_alias
93-
!define Application_DataObject(e_alias, e_label) archimate #APPLICATION "e_label" <<application-data-object>> as e_alias
137+
!define Application_DataObject(e_alias, e_label) archimate #APPLICATION "---\n e_label" <<application-data-object>> as e_alias
94138

95139
'Technology Elements
96140
!define Technology_Node(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-node>> as e_alias
97-
!define Technology_Device(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-device>> as e_alias
141+
!define Technology_Device(e_alias, e_label) node #TECHNOLOGY "e_label" <<$archimate/technology-device>> as e_alias
98142
!define Technology_SystemSoftware(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-system-software>> as e_alias
99-
!define Technology_Collaboration(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<collaboration>> as e_alias
143+
!define Technology_Collaboration(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-collaboration>> as e_alias
100144
!define Technology_Interface(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-infra-interface>> as e_alias
101145
!define Technology_Path(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-communication-path>> as e_alias
102146
!define Technology_CommunicationNetwork(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-network>> as e_alias
103147
!define Technology_Function(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-function>> as e_alias
104148
!define Technology_Process(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-process>> as e_alias
105-
!define Technology_Interaction(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<interaction>> as e_alias
106-
!define Technology_Event(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<event>> as e_alias
149+
!define Technology_Interaction(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-interaction>> as e_alias
150+
!define Technology_Event(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-event>> as e_alias
107151
!define Technology_Service(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-infra-service>> as e_alias
108-
!define Technology_Artifact(e_alias, e_label) archimate #TECHNOLOGY "e_label" <<technology-artifact>> as e_alias
152+
!define Technology_Artifact(e_alias, e_label) archimate #TECHNOLOGY "---\n e_label" <<technology-artifact>> as e_alias
109153

110154
'Physical Elements
111155
!define Physical_Equipment(e_alias, e_label) archimate #PHYSICAL "e_label" <<physical-equipment>> as e_alias
112156
!define Physical_Facility(e_alias, e_label) archimate #PHYSICAL "e_label" <<physical-facility>> as e_alias
113157
!define Physical_DistributionNetwork(e_alias, e_label) archimate #PHYSICAL "e_label" <<physical-distribution-network>> as e_alias
114-
!define Physical_Material(e_alias, e_label) archimate #PHYSICAL "e_label" <<physical-material>> as e_alias
158+
!define Physical_Material(e_alias, e_label) archimate #PHYSICAL "---\n e_label" <<physical-material>> as e_alias
115159

116160
'Motivation Elements
117-
!define Motivation_Stakeholder(e_alias, e_label) archimate #MOTIVATION "e_label" <<stakeholder-filled>> as e_alias
118-
!define Motivation_Driver(e_alias, e_label) archimate #MOTIVATION "e_label" <<driver>> as e_alias
119-
!define Motivation_Assessment(e_alias, e_label) archimate #MOTIVATION "e_label" <<assessment>> as e_alias
120-
!define Motivation_Goal(e_alias, e_label) archimate #MOTIVATION "e_label" <<goal>> as e_alias
161+
!define Motivation_Stakeholder(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-stakeholder>> as e_alias
162+
!define Motivation_Driver(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-driver>> as e_alias
163+
!define Motivation_Assessment(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-assessment>> as e_alias
164+
!define Motivation_Goal(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-goal>> as e_alias
121165
!define Motivation_Outcome(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-outcome>> as e_alias
122-
!define Motivation_Principle(e_alias, e_label) archimate #MOTIVATION "e_label" <<principle>> as e_alias
123-
!define Motivation_Requirement(e_alias, e_label) archimate #MOTIVATION "e_label" <<requirement>> as e_alias
124-
!define Motivation_Constraint(e_alias, e_label) archimate #MOTIVATION "e_label" <<constraint>> as e_alias
125-
!define Motivation_Meaning(e_alias, e_label) archimate #MOTIVATION "e_label" <<meaning>> as e_alias
126-
!define Motivation_Value(e_alias, e_label) archimate #MOTIVATION "e_label" <<value>> as e_alias
166+
!define Motivation_Principle(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-principle>> as e_alias
167+
!define Motivation_Requirement(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-requirement>> as e_alias
168+
!define Motivation_Constraint(e_alias, e_label) archimate #MOTIVATION "e_label" <<motivation-constraint>> as e_alias
169+
!define Motivation_Meaning(e_alias, e_label) cloud #MOTIVATION "e_label" <<$archimate/motivation-meaning>> as e_alias
170+
!define Motivation_Value(e_alias, e_label) usecase #MOTIVATION "e_label" as e_alias
127171

128172
'Implementation Elements
129-
!define Implementation_WorkPackage(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<workpackage-filled>> as e_alias
130-
!define Implementation_Deliverable(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<deliverable-filled>> as e_alias
131-
!define Implementation_Event(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<event>> as e_alias
132-
!define Implementation_Plateau(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<plateau>> as e_alias
133-
!define Implementation_Gap(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<gap-filled>> as e_alias
173+
!define Implementation_WorkPackage(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<implementation-workpackage>> as e_alias
174+
!define Implementation_Deliverable(e_alias, e_label) archimate #IMPLEMENTATION "---\n e_label" <<implementation-deliverable>> as e_alias
175+
!define Implementation_Event(e_alias, e_label) archimate #IMPLEMENTATION "e_label" <<implementation-event>> as e_alias
176+
!define Implementation_Plateau(e_alias, e_label) node #PHYSICAL "e_label" <<$archimate/implementation-plateau>> as e_alias
177+
!define Implementation_Gap(e_alias, e_label) archimate #PHYSICAL "---\n e_label" <<implementation-gap>> as e_alias
134178

135179
'Other Elements
136180
!define Other_Location(e_alias, e_label) archimate #OrangeRed "e_label" <<location>> as e_alias
@@ -143,7 +187,7 @@ skinparam rectangle<<boundary>> {
143187
' ##################################
144188
!define Rel_(e_sourceAlias, e_targetAlias, e_label, e_direction="") e_sourceAlias e_direction e_targetAlias : "e_label"
145189

146-
!define Rel_Composition(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-*")
190+
!define Rel_Composition(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-*")
147191
!define Rel_Composition_Up(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-UP-*")
148192
!define Rel_Composition_Down(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-DOWN-*")
149193
!define Rel_Composition_Left(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-LEFT-*")
@@ -155,11 +199,11 @@ skinparam rectangle<<boundary>> {
155199
!define Rel_Aggregation_Left(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-LEFT-o")
156200
!define Rel_Aggregation_Right(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-RIGHT-o")
157201

158-
!define Rel_Assignment(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "o->")
159-
!define Rel_Assignment_Up(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "o-UP->")
160-
!define Rel_Assignment_Down(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "o-DOWN->")
161-
!define Rel_Assignment_Left(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "o-LEFT->")
162-
!define Rel_Assignment_Right(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "o-RIGHT->")
202+
!define Rel_Assignment(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "0->")
203+
!define Rel_Assignment_Up(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "0-UP->")
204+
!define Rel_Assignment_Down(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "0-DOWN->")
205+
!define Rel_Assignment_Left(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "0-LEFT->")
206+
!define Rel_Assignment_Right(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "0-RIGHT->")
163207

164208
!define Rel_Specialization(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-|>")
165209
!define Rel_Specialization_Up(e_From, e_To, e_label="") Rel_(e_From, e_To, e_label, "-UP-|>")

0 commit comments

Comments
 (0)