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

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...

Building a Simple Text Generator: A Hands-on Introduction

Introduction Text generation is one of the most exciting applications of Natural Language Processing (NLP) . From autocorrect and chatbots to AI-generated stories and news articles , text generation models help machines produce human-like text. In this blog post, we’ll introduce a simple yet effective text generation method using Markov Chains . Unlike deep learning models like GPT, this approach doesn’t require complex neural networks—it relies on probability-based word transitions to create text. We’ll walk through: ✅ The concept of Markov Chains and how they apply to text generation. ✅ A step-by-step implementation , fetching Wikipedia text and training a basic text generator. ✅ Example outputs and future improvements. The Concept of Markov Chains in Text Generation A Markov Chain is a probabilistic model that predicts future states (or words) based only on the current state (or word), rather than the full sentence history. How it works in text generation: 1️⃣ We analyze a gi...

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 ...