Data Architecture
April 10, 2026 · View on GitHub
Data ownership, data flows, and access patterns across applications with data objects and access relationships.
Key Elements
| Layer | Macros Used |
|---|---|
| Business | Business_Actor, Business_Process |
| Application | Application_Component, Application_DataObject, Application_Service |
Example
Customer data platform: data producers, data lake, and consuming analytics services with access controls:
@startuml
!include <archimate/Archimate>
rectangle "Data Producers" {
Application_Component(web, "Web App")
Application_Component(mobile, "Mobile App")
Application_Component(erp, "ERP System")
Application_Component(iot, "IoT Gateway")
}
rectangle "Data Platform" {
Application_Service(ingest, "Ingestion Service")
Application_Service(catalog, "Data Catalog")
Application_DataObject(rawData, "Raw Data Lake")
Application_DataObject(curated, "Curated Datasets")
Application_DataObject(masterData, "Master Data")
}
rectangle "Data Consumers" {
Application_Component(bi, "BI Dashboard")
Application_Component(ml, "ML Platform")
Application_Component(report, "Reporting Service")
Business_Actor(analyst, "Data Analyst")
Business_Actor(scientist, "Data Scientist")
}
rectangle "Governance" {
Business_Process(quality, "Data Quality Process")
Business_Process(lineage, "Data Lineage Tracking")
Business_Actor(steward, "Data Steward")
}
Rel_Access_w(web, ingest, "events")
Rel_Access_w(mobile, ingest, "events")
Rel_Access_w(erp, ingest, "batch")
Rel_Access_w(iot, ingest, "stream")
Rel_Access_w(ingest, rawData, "writes")
Rel_Flow(rawData, curated, "transform")
Rel_Flow(curated, masterData, "enrich")
Rel_Serving(catalog, curated, "indexes")
Rel_Access_r(bi, curated, "reads")
Rel_Access_r(ml, rawData, "reads")
Rel_Access_r(report, masterData, "reads")
Rel_Assignment(analyst, bi, "uses")
Rel_Assignment(scientist, ml, "uses")
Rel_Assignment(steward, quality, "owns")
Rel_Assignment(steward, lineage, "owns")
Rel_Serving(quality, curated, "validates")
Rel_Serving(lineage, catalog, "tracks")
@enduml
Pattern Notes
- Access directions —
Rel_Access_wfor write access (producers → ingestion),Rel_Access_rfor read access (consumers ← datasets) - Data flow —
Rel_Flowshows data transformation pipeline: raw → curated → master data - Data ownership —
Business_Actor(Data Steward) assigned to governance processes viaRel_Assignment - Four zones — Producers, Platform, Consumers, Governance form a clear data architecture layout
- Catalog serving —
Rel_Servinglinks the Data Catalog to curated datasets (metadata indexing) - Mixed access patterns — BI reads curated data, ML reads raw data, Reporting reads master data — showing different consumer needs