Skip to content

Latest commit

 

History

History
93 lines (62 loc) · 5.17 KB

File metadata and controls

93 lines (62 loc) · 5.17 KB
graph LR
    Workflow_Execution_Core["Workflow Execution Core"]
    Modeling_Parsing["Modeling & Parsing"]
    Runtime_Services["Runtime Services"]
    Data_Management["Data Management"]
    Framework_Utilities["Framework & Utilities"]
    Workflow_Execution_Core -- "consumes" --> Modeling_Parsing
    Workflow_Execution_Core -- "invokes" --> Runtime_Services
    Workflow_Execution_Core -- "persists/retrieves" --> Data_Management
    Workflow_Execution_Core -- "utilizes" --> Framework_Utilities
    Modeling_Parsing -- "provides" --> Workflow_Execution_Core
    Modeling_Parsing -- "uses" --> Runtime_Services
    Modeling_Parsing -- "leverages" --> Framework_Utilities
    Workflow_Execution_Core -- "executes" --> Runtime_Services
    Runtime_Services -- "provides evaluation to" --> Modeling_Parsing
    Data_Management -- "persists/retrieves state for" --> Workflow_Execution_Core
    Data_Management -- "serializes" --> Modeling_Parsing
    Framework_Utilities -- "provides services to" --> Workflow_Execution_Core
    Framework_Utilities -- "supports" --> Modeling_Parsing
    click Modeling_Parsing href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/SpiffWorkflow/Modeling_Parsing.md" "Details"
    click Runtime_Services href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/SpiffWorkflow/Runtime_Services.md" "Details"
    click Data_Management href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/SpiffWorkflow/Data_Management.md" "Details"
    click Framework_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/SpiffWorkflow/Framework_Utilities.md" "Details"
Loading

CodeBoardingDemoContact

Details

High-level data flow overview of the SpiffWorkflow project, a Workflow Engine / Business Process Management (BPM) System, structured around its core architectural components.

Workflow Execution Core

The central orchestrator responsible for executing workflows, managing the state of workflow instances and their tasks, and driving the overall process progression. It dispatches tasks to appropriate handlers and manages data flow within the workflow.

Related Classes/Methods:

Modeling & Parsing [Expand]

Handles the parsing, validation, and internal representation of both BPMN (Business Process Model and Notation) and DMN (Decision Model and Notation) definitions. It transforms XML models into executable specifications for the workflow engine.

Related Classes/Methods:

  • SpiffWorkflow.bpmn.parser (1:1)
  • SpiffWorkflow.bpmn.specs (1:1)
  • SpiffWorkflow.dmn.engine (1:1)
  • SpiffWorkflow.dmn.parser (1:1)
  • SpiffWorkflow.dmn.specs (1:1)

Runtime Services [Expand]

Provides capabilities for executing embedded scripts and evaluating expressions within workflow tasks and DMN rules. This component ensures dynamic behavior and data manipulation during workflow execution.

Related Classes/Methods:

Data Management [Expand]

Manages the serialization and deserialization of workflow, task, and specification instances to and from various persistent formats (e.g., JSON, XML, dictionary). It enables saving and loading the workflow engine's state.

Related Classes/Methods:

  • SpiffWorkflow.serializer (1:1)
  • SpiffWorkflow.bpmn.serializer (1:1)
  • SpiffWorkflow.dmn.serializer (1:1)
  • SpiffWorkflow.camunda.serializer (1:1)
  • SpiffWorkflow.spiff.serializer (1:1)

Framework & Utilities [Expand]

A foundational layer providing general-purpose utility functions, a robust internal eventing mechanism for inter-component communication, and a pluggable architecture for extending SpiffWorkflow's core capabilities with custom elements or vendor-specific integrations (e.g., Camunda). It also defines a hierarchy of custom exceptions for robust error handling.

Related Classes/Methods: