AgentSkillsCN

ArchiMate Relationships

当用户询问“ArchiMate 关系”“组合与聚合的关系”“实现关系”“服务关系”“赋值关系”“触发关系”“流转关系”“访问关系”“影响关系”“特化关系”“跨层关系”,或需要协助正确连接 ArchiMate 元素时,可优先选用此技能。

SKILL.md
--- frontmatter
name: ArchiMate Relationships
description: This skill should be used when the user asks about "ArchiMate relationships", "composition vs aggregation", "realization relationship", "serving relationship", "assignment relationship", "triggering", "flow relationship", "access relationship", "influence", "specialization", "cross-layer relationships", or needs help connecting ArchiMate elements correctly.
version: 0.1.0

ArchiMate Relationships

ArchiMate defines 11 core relationships organized into four categories. Understanding proper relationship usage is critical for model quality and analysis.

Relationship Categories

Structural Relationships (Static Construction)

RelationshipNotationUsage
CompositionSolid line + filled diamondStrong whole-part; parts cannot exist independently
AggregationSolid line + hollow diamondWeak whole-part; parts may belong to multiple aggregations
AssignmentSolid line + circle at sourceWho/what performs behavior; links actors to roles, components to functions
RealizationDashed line + hollow triangleLogical-to-physical mapping; cross-layer implementation

Dependency Relationships (Support/Usage)

RelationshipNotationUsage
ServingSolid line + open arrowheadService delivery; arrow points toward consumer
AccessDotted line + optional arrowheadData access; use mode indicators (r, w, rw)
InfluenceDashed line + open arrowheadAffects motivation elements; can include +/- strength
AssociationSolid line (undirected/directed)Generic relationship; use when no specific type applies

Dynamic Relationships (Temporal/Flow)

RelationshipNotationUsage
TriggeringSolid line + filled arrowheadTemporal/causal precedence between behaviors
FlowDashed line + filled arrowheadTransfer of objects between behaviors; label what flows

Other

RelationshipNotationUsage
SpecializationSolid line + hollow triangleType hierarchies; same-type elements only

Key Direction Principle

ArchiMate relationships consistently point toward enterprise goals and results:

  • From Technology → Application → Business
  • From Active Structure → Behavior → Passive Structure

Cross-Layer Relationship Patterns

Business ↔ Application

Supporting:

code
[Application Service] → [serves] → [Business Process/Function]
[Application Interface] → [serves] → [Business Role]

Realizing:

code
[Application Process/Function] → [realizes] → [Business Process/Function]
[Data Object] → [realizes] → [Business Object]

Application ↔ Technology

Supporting:

code
[Technology Service] → [serves] → [Application Component/Function]

Realizing:

code
[Artifact] → [realizes] → [Application Component]
[Artifact] → [realizes] → [Data Object]

Service-Driven Architecture Pattern

The canonical layered view shows service chains connecting layers:

code
[Business Actor: Customer]
    ↓ served by
[Business Service]
    ↓ realized by
[Business Process]
    ↓ served by
[Application Service]
    ↓ realized by
[Application Component]
    ↓ served by
[Technology Service]
    ↓ realized by
[Node: Device + System Software]

Common Relationship Patterns

Actor-Role-Function Pattern

code
[Business Actor] → [assignment] → [Business Role] → [assignment] → [Business Process/Function]

Service Realization Pattern

code
[Business Role] → [assignment] → [Business Process] → [realization] → [Business Service]
[Business Interface] → [assignment] → [Business Service]

Deployment Pattern

code
[Application Component] ← [realized by] ← [Artifact] → [assigned to] → [Node/System Software]

Relationship Selection Guide

Want to show...Use
What performs behaviorAssignment
What implements/realizes somethingRealization
What provides service to whomServing
What reads/writes dataAccess (with r/w/rw)
What causes what to happenTriggering
What passes between behaviorsFlow (label it)
Part-whole (dependent)Composition
Part-whole (independent)Aggregation
Type hierarchySpecialization
Motivation impactInfluence (+/-)
Generic connectionAssociation (last resort)

Output Format for Relationships

Notation Format

code
[Source Element] → [relationship type] → [Target Element]

With Access Modes

code
[Application Function: Process Order] → [access (rw)] → [Data Object: Order Record]

With Flow Labels

code
[Business Process: Receive Order] → [flow: Order Data] → [Business Process: Validate Order]

Additional Resources

Reference Files

For detailed relationship patterns and advanced cross-layer guidance:

  • references/relationship-patterns.md - Complete relationship pattern catalog with examples