Skip to main content

Example 6: ArchiMate realization relationships in various layers and across layers

 Diagram



Code

@startuml
!include <archimate/Archimate>

<style>
element {
    HorizontalAlignment: left;
    MinimumWidth: 180;
    Padding: 25;
}
note {
    BackgroundColor: #FFFFCC;
    RoundCorner: 5;
    MaximumWidth: 250;
}
</style>

left to right direction

title "ArchiMate 3.2 Realization Relationships"

rectangle "Business Layer" {
    Business_Service(service_customer_support, "Customer Support Service")
    Business_Process(process_support, "Support Process")
    Rel_Realization(process_support, service_customer_support, "Realization")
    note on link
    Support Process realizes Customer Support Service.
    end note

    Business_Role(role_manager, "Manager Role")
    Business_Collaboration(collab_management, "Management Collaboration")
    Rel_Realization(collab_management, role_manager, "Realization")
    note on link
    Management Collaboration realizes Manager Role.
    end note

    Business_Interface(interface_client, "Client Interface")
    Business_Service(service_client, "Client Service")
    Rel_Realization(interface_client, service_client, "Realization")
    note on link
    Client Interface realizes Client Service.
    end note
}

rectangle "Application Layer" {
    Application_Service(app_service_data_analysis, "Data Analysis Service")
    Application_Function(app_function_data_processing, "Data Processing Function")
    Rel_Realization(app_function_data_processing, app_service_data_analysis, "Realization")
    note on link
    Data Processing Function realizes Data Analysis Service.
    end note

    Application_Component(app_component_crm, "CRM System")
    Application_Collaboration(app_collab_sales, "Sales Collaboration")
    Rel_Realization(app_collab_sales, app_component_crm, "Realization")
    note on link
    Sales Collaboration realizes CRM System.
    end note

    Application_Interface(app_interface_api, "API Interface")
    Application_Service(app_service_api, "API Service")
    Rel_Realization(app_interface_api, app_service_api, "Realization")
    note on link
    API Interface realizes API Service.
    end note
}

rectangle "Technology Layer" {
    Technology_Service(tech_service_network_monitoring, "Network Monitoring Service")
    Technology_Function(tech_function_network_management, "Network Management Function")
    Rel_Realization(tech_function_network_management, tech_service_network_monitoring, "Realization")
    note on link
    Network Management Function realizes Network Monitoring Service.
    end note

    Technology_Node(tech_node_server, "Server")
    Technology_Collaboration(tech_collab_cloud, "Cloud Collaboration")
    Rel_Realization(tech_collab_cloud, tech_node_server, "Realization")
    note on link
    Cloud Collaboration realizes Server.
    end note

    Technology_Function(tech_function_data_storage, "Data Storage Function")
    Technology_Artifact(artifact_backup, "Backup Artifact")
    Rel_Realization(artifact_backup, tech_function_data_storage, "Realization")
    note on link
    Backup Artifact realizes Data Storage Function.
    end note
}

rectangle "Motivation & Strategy Layer" {
    Motivation_Outcome(outcome_profit, "Increased Profit")
    Motivation_Goal(goal_growth, "Business Growth")
    Rel_Realization(goal_growth, outcome_profit, "Realization")
    note on link
    Business Growth realizes Increased Profit.
    end note

    Motivation_Goal(goal_compliance, "Regulatory Compliance")
    Motivation_Principle(principle_security, "Security Principle")
    Rel_Realization(principle_security, goal_compliance, "Realization")
    note on link
    Security Principle realizes Regulatory Compliance.
    end note
}

rectangle "Implementation & Migration Layer" {
    Implementation_WorkPackage(work_package_upgrade, "Upgrade Work Package")
    Implementation_Plateau(plateau_modernization, "Modernization Plateau")
    Rel_Realization(plateau_modernization, work_package_upgrade, "Realization")
    note on link
    Modernization Plateau realizes Upgrade Work Package.
    end note

    Implementation_Deliverable(deliverable_report, "Final Report")
    Implementation_Plateau(plateau_final, "Final Plateau")
    Rel_Realization(plateau_final, deliverable_report, "Realization")
    note on link
    Final Plateau realizes Final Report.
    end note
}

rectangle "Cross-Layer Realizations" {
    Application_Component(app_component_crm2, "CRM System")
    Business_Service(service_customer_management, "Customer Management")
    Rel_Realization(app_component_crm2, service_customer_management, "Realization")
    note on link
    An Application Component can realize a Business Service.
    end note
   
    Application_Function(app_function_reporting, "Reporting Function")
    Business_Function(business_function_analysis, "Business Analysis Function")
    Rel_Realization(app_function_reporting, business_function_analysis, "Realization")
    note on link
    An Application Function can realize a Business Function.
    end note
   
    Technology_Service(tech_service_database, "Database Service")
    Application_Service(app_service_persistence, "Data Persistence Service")
    Rel_Realization(tech_service_database, app_service_persistence, "Realization")
    note on link
    A Technology Service can realize an Application Service.
    end note
   
    Technology_Node(tech_node_middleware, "Middleware Node")
    Application_Component(app_component_api, "API Gateway")
    Rel_Realization(tech_node_middleware, app_component_api, "Realization")
    note on link
    A Technology Node can realize an Application Component.
    end note

    Application_Service(as1, "Account Management Service")
    Business_Service(bs1, "Customer Account Management")
    Rel_Realization(as1, bs1, "realizes")
    note on link
    Account Management Service realizes
    Customer Account Management.
    end note

    Application_DataObject(do1, "Customer Record")
    Business_Object(bo1, "Customer")
    Rel_Realization(do1, bo1, "realizes")
    note on link
    Customer Record realizes Customer.
    end note

  Application_Service(as2, "Payment Service")
  Technology_Service(ts1, "Web Service")
  Rel_Realization(ts1, as2, "realizes")
  note on link
  Web Service realizes Payment Service.
  end note

  Application_DataObject(do2, "Account Data")
  Technology_Artifact(art1, "Account Tables")
  Rel_Realization(art1, do2, "realizes")
  note on link
  Account Tables realizes Account Data.
  end note

  Business_Service(bs2, "Payment Processing")
  Technology_Service(ts2, "Database Service")
  Rel_Realization(ts2, bs2, "realizes")
    note on link
    Database Service realizes Payment Processing.
    end note


  Business_Object(bo2, "Account")
  Technology_Artifact(art2, "Customer Database")
  Rel_Realization(art2, bo2, "realizes")
  note on link
  Customer Database realizes Account.
  end note


}
@enduml

Comments

Popular posts from this blog

Example 1: ArchiMate relationship in PlantUML code to demonstrate 15 relationship types

 Following section presents 15 types of relationships in ArchiMate and PlantUML to generate the diagram. Since this code is generated by GEN-AI it may require precision on aspects other than PlantUML syntax: Diagram Plant UML Code:  @startuml '!includeurl https://raw.githubusercontent.com/plantuml-stdlib/Archimate-PlantUML/master/Archimate.puml ' Another way of including Archimate Library (above is commented for following) !include <archimate/Archimate> !theme archimate-standard from https://raw.githubusercontent.com/plantuml-stdlib/Archimate-PlantUML/master/themes title ArchiMate Relationships Overview <style> element{     HorizontalAlignment: left;     MinimumWidth : 180;     Padding: 25; } </style> left to right direction rectangle Other {     Business_Role(Role_SeniorManager, "Senior Manager")     Business_Role(Role_Manager, "Manager") } rectangle Dynamic {     Business_Event(Event_CustomerReques...

Mastering Trade-Off Analysis in System Architecture: A Strategic Guide for Architects

 In system architecture and design, balancing conflicting system qualities is both an art and a science. Trade-off analysis is a strategic evaluation process that enables architects to make informed decisions that align with business goals and technical constraints. By prioritizing essential system attributes while acknowledging inevitable compromises, architects can craft resilient and efficient solutions. This enhanced guide provides actionable insights and recommendations for architects aiming to master trade-off analysis for impactful architectural decisions. 1. Understanding Trade-Off Analysis Trade-off analysis involves identifying and evaluating the conflicting requirements and design decisions within a system. Architects must balance critical aspects like performance, scalability, cost, security, and maintainability. Since no system can be optimized for every quality simultaneously, prioritization based on project goals is essential. Actionable Insights: Define key quality ...

Virtual environments in python

 Creating virtual environments is essential for isolating dependencies and ensuring consistency across different projects. Here are the main methods and tools available, along with their pros, cons, and recommendations : 1. venv (Built-in Python Virtual Environment) Overview: venv is a lightweight virtual environment module included in Python (since Python 3.3). It allows you to create isolated environments without additional dependencies. How to Use: python -m venv myenv source myenv/bin/activate # On macOS/Linux myenv\Scripts\activate # On Windows Pros: ✅ Built-in – No need to install anything extra. ✅ Lightweight – Minimal overhead compared to other tools. ✅ Works across all platforms . ✅ Good for simple projects . Cons: ❌ No dependency management – You still need pip and requirements.txt . ❌ Not as feature-rich as other tools . ❌ No package isolation per project directory (requires manual activation). Recommendation: Use venv if you need a simple, lightweight solut...