External API simulation subsystem

🌐 This document is available in both English and Ukrainian. Use the language toggle in the top right corner to switch between versions.

1. Overview

The External API simulation subsystem provides a way of developing and testing your registry in isolation from external systems.

2. Subsystem functions

  • Simulating external system’s API during business process execution.

  • Simulating the data signature widget in the functional scenarios of applying a signature and authenticating portal users.

3. Technical design

The following diagram presents the External API simulation subsystem’s components and their interactions with other subsystems in the scope of implementing functional scenarios.

ext systems simulation design

The External API simulation subsystem contains two components that are responsible for mocking the main registry integration scenarios with external systems:

  • Data signature simulation widget: A static copy of the signature widget served by the Nginx web server.

  • External API simulation server: An API simulation server based on Wiremock that supports REST and SOAP integration protocols.

4. Subsystem components

Component name

Registry representation

Source

Repository

Function

Data signature simulation widget

sign-widget-mock

origin

github:/epam/edp-ddm-sign-widget-mock

A static copy of the signature widget.

External API simulation server

wiremock

3rd-party

github:/epam/edp-ddm-wiremock

External systems API mocking server with support for a declarative approach to contract description.

5. Technology stack

The following technologies were used when designing and developing the subsystem:

6. Subsystem quality attributes

6.1. Testability

The External API simulation subsystem provides a way of testing your registry by simulating various scenarios of external systems' behavior and checking the correctness of processing results, errors, temporary unavailability of external systems, slowing down of their performance, and so on.