Registry regulations modeling subsystem

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

1. General description

The subsystem that provides capability of the registry development functionality based on the Lowcode principles in the form of digital registry regulations and provides capabilities for managing the officer accounts.

2. Subsystem functions

  • Modeling of the registry regulations components based on the Lowcode principles:

  • Batch download of users.

  • Amendments to the declarative description of the registry regulations.

  • Versioning of the registry regulations with a history of changes.

  • Monitoring of changes before entering them into the registry regulations.

  • Viewing the results of monitoring of changes to the registry regulations by the Registry regulations deployment subsystem.

3. Subsystem technical design

regulation management design 1
Figure 1. Component diagram of regulations modeling subsystem. General
  • (1) — The report archive is a zip archive that contains a list of requests and report settings in a declarative format.

  • (2) — Scenarios that are relevant for modeling

  • (3) — The internal structure of the Redash components is described in the Registry analytical reporting subsystem

4. Subsystem components

Component name Representation in register Origin Repository Purpose

Regulation modeling web interface

admin-portal

origin

gerrit:/mdtu-ddm/low-code-platform/platform/frontend/applications/common-web-app

Client web application for modeling registry regulations based on Lowcode principles

Report modeling web interface

  • redash-admin

  • redash-admin-adhocworker

  • redash-admin-scheduler

  • redash-admin-postgresql

  • redash-admin-redis-master

fork

Client web application for creating and configuring analytical reports and dashboards

Service for monitoring and storage of changes to regulations

  • gerrit

  • gerrit-operator

3rd-party

Software tool allowing storage and management of registry regulations versions.

Regulations management service

registry-regulation-management

origin

github:/epam/edp-ddm-registry-regulation-management

The service that provides a REST API for working with versions of the registry regulations and their components

Language server

ddm-language-server

origin

github:/epam/edp-ddm-language-server

The service that provides the functionality of hints, autocompletion of functions and checks when editing code in the Regulation modeling web interface

Reports exporting service

report-exporter

origin

github:/epam/edp-ddm-report-exporter

The service that provides REST API access to export reports from the Report modeling web interface

Utility for downloading officers

publish-users-job

origin

github:/epam/edp-ddm-user-publisher

The service that provides REST API access to export reports from the Report modeling web interface

Operational storage of file with users

ceph:user-import

origin

github:/epam/edp-ddm-registry-configuration/blob/main/deploy-templates/templates/CephObjectBucketClaim.yaml

Storing a file with users for import

Archive storage of files with users

ceph:user-import-archive

origin

github:/epam/edp-ddm-registry-configuration/blob/main/deploy-templates/templates/CephObjectBucketClaim.yaml

Archive of files with users for import

Git repository of the Digital registry regulations

gerrit:registry-regulations

origin

github:/epam/edp-ddm-empty-template-registry-regulation

Git repository of the Digital registry regulations in the service for monitoring and storage of changes to the regulations

6. Subsystem quality attributes

6.1. Security

Only authorized users can access to the subsystem web interfaces. The standard system mechanisms, such as OpenID Connect and SAML integration with the Users and roles management subsystem, are used for authorization.

6.2. Usability

Modeling of the regulations in the subsystem web interfaces is performed according to the principles of Low-code with auto-prompts for users, auto-completion and validation of the entered information. This allows reducing the time for development of the regulations and enhancing training of users.

6.3. Modifiability

The structure of the subsystem’s digital registry regulations is divided onto individual elements that are loosely coupled to each other (the principle of Low coupling) and use the principles of Low-code for development, which simplifies implementation of new changes to the regulations, accelerates the speed of development and reduces the required expertise of a modeler.