@startuml "Archimate" ' generics -- parts sprite $Activity jar:archimate/activity sprite $Actor jar:archimate/actor sprite $Assessment jar:archimate/assessment sprite $AssessmentFilled jar:archimate/assessment-filled sprite $Component jar:archimate/component sprite $Contract jar:archimate/contract sprite $Constraint jar:archimate/constraint sprite $ConstraintFilled jar:archimate/constraint-filled sprite $Deliverable jar:archimate/deliverable-filled sprite $Device jar:archimate/device sprite $Driver jar:archimate/driver sprite $DriverFilled jar:archimate/driver-filled sprite $Event jar:archimate/event sprite $Function jar:archimate/function sprite $Gap jar:archimate/gap sprite $GapFilled jar:archimate/gap-filled sprite $Goal jar:archimate/goal sprite $GoalFilled jar:archimate/goal-filled sprite $InterfaceRequired jar:archimate/interface-required sprite $InterfaceSymmetric jar:archimate/interface-symmetric sprite $Interface jar:archimate/interface sprite $Junction jar:archimate/junction sprite $JunctionAnd jar:archimate/junction-and sprite $JunctionOr jar:archimate/junction-or sprite $Location jar:archimate/location sprite $Meaning jar:archimate/meaning sprite $Network jar:archimate/network sprite $Node jar:archimate/node sprite $Object jar:archimate/object sprite $Plateau jar:archimate/plateau sprite $Principle jar:archimate/principle sprite $PrincipleFilled jar:archimate/principle-filled sprite $Process jar:archimate/process sprite $Product jar:archimate/product sprite $Representation jar:archimate/representation sprite $Requirement jar:archimate/requirement sprite $RequirementFilled jar:archimate/requirement-filled sprite $Role jar:archimate/role sprite $Service jar:archimate/service sprite $Stakeholder jar:archimate/stakeholder-filled sprite $Software jar:archimate/system-software sprite $Value jar:archimate/value sprite $WorkPackage jar:archimate/workpackage-filled ' -----------------------------------------------------------' ' generics -- comunicative / msg sprite $Access jar:archimate/access sprite $Aggregation jar:archimate/aggregation sprite $Assignment jar:archimate/assignment sprite $Association jar:archimate/association sprite $Composition jar:archimate/composition sprite $Collaboration jar:archimate/collaboration sprite $ComsPath jar:archimate/communication-path sprite $Flow jar:archimate/flow sprite $Influence jar:archimate/influence sprite $Interaction jar:archimate/interaction sprite $Realisation jar:archimate/realisation sprite $Specialisation jar:archimate/specialisation sprite $Trigger jar:archimate/triggering sprite $UsedBy jar:archimate/used-by ' -----------------------------------------------------------' ' application scope sprite $aCollaboration jar:archimate/application-collaboration sprite $aComponent jar:archimate/application-component sprite $aConsumable jar:archimate/application-data-object sprite $aFunction jar:archimate/application-function sprite $aInteraction jar:archimate/application-interaction sprite $aInterface jar:archimate/application-interface sprite $aService jar:archimate/application-service ' -----------------------------------------------------------' ' business scope sprite $bActivity jar:archimate/business-activity sprite $bActor jar:archimate/business-actor sprite $bCollaboration jar:archimate/business-collaboration sprite $bContract jar:archimate/business-contract sprite $bEvent jar:archimate/business-event sprite $bFunction jar:archimate/business-function sprite $bInteraction jar:archimate/business-interaction sprite $bInterface jar:archimate/business-interface sprite $bLocation jar:archimate/business-location sprite $bMeaning jar:archimate/business-meaning sprite $bObject jar:archimate/business-object sprite $bProcess jar:archimate/business-process sprite $bProduct jar:archimate/business-product sprite $bRepresentation jar:archimate/business-representation sprite $bRole jar:archimate/business-role sprite $bService jar:archimate/business-service sprite $bValue jar:archimate/business-value ' -----------------------------------------------------------' ' technology scope sprite $tArtifact jar:archimate/technology-artifact sprite $tComsPath jar:archimate/technology-communication-path sprite $tDevice jar:archimate/technology-device sprite $tFunction jar:archimate/technology-function sprite $tService jar:archimate/technology-infra-service sprite $tInterface jar:archimate/technology-infra-interface sprite $tNetwork jar:archimate/technology-network sprite $tNode jar:archimate/technology-node sprite $tSoftware jar:archimate/technology-system-software ' -----------------------------------------------------------' ' motivation scope 'sprite $Outcome jar:archimate/outcome ' -----------------------------------------------------------' ' strategy scope 'sprite $Capability jar:archimate/strategy-capability 'sprite $Action jar:archimate/strategy-course-of-action 'sprite $Resource jar:archimate/strategy-resource ' -----------------------------------------------------------' ' physical scope 'sprite $Facility jar:archimate/physical-facility 'sprite $Material jar:archimate/physical-material 'sprite $Equipment jar:archimate/physical-equipment 'sprite $Distribution jar:archimate/physical-distribution-network ' -----------------------------------------------------------' ' connectors !define LINK_ASSIGNEMENT <$Assignment> !define LINK_ACCESS <$Access> !define LINK_AGGREGATION <$Aggregation> !define LINK_USED_BY <$UsedBy> !define LINK_COMPOSITION <$Composition> !define LINK_COLLAB <$Collaboration> !define LINK_PATH <$ComsPath> !define LINK_FLOW <$Flow> !define LINK_INFLUENCE <$Influence> !define LINK_INTERACTION <$Interaction> !define LINK_REALISATION <$Realisation> !define LINK_SPECIALISATION <$Specialisation> !define LINK_TRIGGER <$Trigger> ' -----------------------------------------------------------' ' stereotypes !define ACTIVITY <<$Activity>> #whitesmoke !define ASSESSMENT <<$Assessment>> #whitesmoke !define COMPONENT <<$Component>> #whitesmoke !define CONTRACT <<$Contract>> #whitesmoke !define CONSTRAINT <<$Constraint>> #whitesmoke !define DELIVERABLE <<$Deliverable>> #whitesmoke !define DEVICE <<$Device>> #whitesmoke !define DRIVER <<$Driver>> #whitesmoke !define EVENT <<$Event>> #whitesmoke !define FUNCTION <<$Function>> #whitesmoke !define GAP <<$Gap>> #whitesmoke !define GOAL <<$Goal>> #whitesmoke !define INTERFACE <<$Interface>> #whitesmoke !define INTERFACE_REQUIRED <<$InterfaceRequired>> #whitesmoke !define INTERFACE_SYMMETRY <<$InterfaceSymmetric>> #whitesmoke !define LOCATION <<$Location>> #whitesmoke !define MEANING <<$Meaning>> #whitesmoke !define NETWORK <<$Network>> #whitesmoke !define NODE <<$Node>> #whitesmoke !define COMMON_ACTOR <<$Actor>> #whitesmoke !define COMMON_OBJECT <<$Object>> #whitesmoke !define PLATEAU <<$Plateau>> #whitesmoke !define PRINCIPLE <<$Principle>> #whitesmoke !define PROCESS <<$Process>> #whitesmoke !define PRODUCT <<$Product>> #whitesmoke !define REPRESENTATION <<$Representation>> #whitesmoke !define REQUIREMENT <<$Requirement>> #whitesmoke !define ROLE <<$Role>> #whitesmoke !define SERVICE <<$Service>> #whitesmoke !define STAKEHOLDER <<$Stakeholder>> #whitesmoke !define SOFTWARE <<$Software>> #whitesmoke !define VALUE <<$Value>> #whitesmoke !define WORKPACKAGE <<$WorkPackage>> #whitesmoke ' -----------------------------------------------------------' ' Business !define BUSINESS_ACTIVITY <<$bActivity>> #yellow !define BUSINESS_ACTOR <<$bActor>> #yellow !define BUSINESS_COLLAB <<$bCollaboration>> #yellow !define BUSINESS_CONTRACT <<$bContract>> #yellow !define BUSINESS_EVENT <<$bEvent>> #yellow !define BUSINESS_FUNCTION <<$bFunction>> #yellow !define BUSINESS_INTERACTION <<$bInteraction>> #yellow !define BUSINESS_INTERFACE <<$bInterface>> #yellow !define BUSINESS_LOCATION <<$bLocation>> #yellow !define BUSINESS_MEANING <<$bMeaning>> #yellow !define BUSINESS_OBJECT <<$bObject>> #yellow !define BUSINESS_PROCESS <<$bProcess>> #yellow !define BUSINESS_PRODUCT <<$bProduct>> #yellow !define BUSINESS_REPRESENTATION <<$bRepresentation>> #yellow !define BUSINESS_ROLE <<$bRole>> #yellow !define BUSINESS_SERVICE <<$bService>> #yellow !define BUSINESS_VALUE <<$bValue>> #yellow ' -----------------------------------------------------------' ' Strategy ' !define STRATEGY_CAPABILITY <<$Capability>> #F6E4CC ' !define STRATEGY_ACTION <<$Action>> #F6E4CC ' !define STRATEGY_RESOURCE <<$Resource>> #F6E4CC ' -----------------------------------------------------------' ' Motivation !define MOTIVATION_ASSESSMENT <<$AssessmentFilled>> #b19cd9 !define MOTIVATION_CONSTRAINT <<$ConstraintFilled>> #b19cd9 !define MOTIVATION_DRIVER <<$DriverFilled>> #b19cd9 !define MOTIVATION_GOAL <<$GoalFilled>> #b19cd9 !define MOTIVATION_MEANING <<$Meaning>> #b19cd9 ' !define MOTIVATION_OUTCOME <<$Outcome>> #b19cd9 !define MOTIVATION_PRINCIPLE <<$PrincipleFilled>> #b19cd9 !define MOTIVATION_REQUIREMENT <<$RequirementFilled>> #b19cd9 !define MOTIVATION_STAKEHOLDER <<$Stakeholder>> #b19cd9 !define MOTIVATION_VALUE <<$Value>> #b19cd9 ' -----------------------------------------------------------' ' Application !define APPLICATION_COLLAB <<$aCollaboration>> #A9DCDF !define APPLICATION_COMPONENT <<$aComponent>> #A9DCDF !define APPLICATION_CONSUMABLE <<$aConsumable>> #A9DCDF !define APPLICATION_FUNCTION <<$aFunction>> #A9DCDF !define APPLICATION_INTERACTION <<$aInteraction>> #A9DCDF !define APPLICATION_INTERFACE <<$aInterface>> #A9DCDF !define APPLICATION_SERVICE <<$aService>> #A9DCDF ' -----------------------------------------------------------' ' Technology !define TECHNOLOGY_ARTIFACT <<$tArtifact>> #lightgreen !define TECHNOLOGY_COMPATH <<$tComsPath>> #lightgreen !define TECHNOLOGY_DEVICE <<$tDevice>> #lightgreen !define TECHNOLOGY_FUNCTION <<$tFunction>> #lightgreen !define TECHNOLOGY_SERVICE <<$tService>> #lightgreen !define TECHNOLOGY_INTERFACE <<$tInterface>> #lightgreen !define TECHNOLOGY_NETWORK <<$tNetwork>> #lightgreen !define TECHNOLOGY_NODE <<$tNode>> #lightgreen !define TECHNOLOGY_SOFTWARE <<$tSoftware>> #lightgreen ' -----------------------------------------------------------' ' Physical ' !define PHYSICAL_MATERIAL <<$Material>> #CCFFCC ' !define PHYSICAL_EQUIPMENT <<$Equipment>> #CCFFCC ' !define PHYSICAL_DISTRIBUTION <<$Distribution>> #CCFFCC ' !define PHYSICAL_FACILITY <<$Facility>> #CCFFCC ' -----------------------------------------------------------' ' Implementation !define IMPLEMENTATION_GAP <<$GapFilled>> #lightgreen !define IMPLEMENTATION_EVENT <<$Event>> #FFA6BF !define IMPLEMENTATION_WORKPACKAGE <<$WorkPackage>> #FFA6BF !define IMPLEMENTATION_DELIVERABLE <<$Deliverable>> #FFA6BF !define IMPLEMENTATION_PLATEAU <<$Plateau>> #lightgreen ' -----------------------------------------------------------' !define POCO_OBJECT <<$aConsumable>> #aliceblue !define DATA_OBJECT <<$aConsumable>> #coral !define DTCO_FUNCTION <<$aFunction>> #lightgrey !define DATABASE_SYSTEM <<$Software>> #coral !define JUNCTION <<$Junction>> !define JUNCTION_AND <<$JunctionAnd>> !define JUNCTION_OR <<$JunctionOr>> !define BUSINESS #yellow !define APPLICATION #A9DCDF !define MOTIVATION #b19cd9 !define STRATEGY #F6E4CC !define TECHNOLOGY #lightgreen !define PHYSICAL #CCFFCC !define IMPLEMENTATION #FFA6BF ' macros '> Create new archimate artifact '> example: '> Archimate(test as test1, POCO_OBJECT) !define Archimate(artifact,stereotype) rectangle artifact stereotype !define Junction(name,layer) circle name JUNCTION layer !define Junction(name,type,layer) circle name type layer '> connect one archimate artifact '> to another and annotate the relationship '> example: '> Connect(test1, test2, ACCESS) !define Connect(artifact1,artifact2,stereotype) artifact1 -> artifact2 : stereotype '> connect one archimate artifact '> to another and annotate the relationship '> example: '> Connect(test1, test2, up, ACCESS) !define Connect(artifact1,artifact2,direction,stereotype) artifact1 -direction-> artifact2 : stereotype '> link one archimate artifact '> to another and annotate the relationship '> example: '> ArchiLink(test1, test2, arrow, ACCESS) !define ArchiLink(artifact1,artifact2,arrow,stereotype) artifact1 arrow artifact2 : stereotype @enduml