Platform for state registries

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

1. About the Platform

The Platform for state registries is an information system designed to deliver government services in a digital format efficiently. It enables the rapid creation, modeling, deployment, and maintenance of electronic state registries, striking an optimal balance between data security requirements, deployment speed, registry ownership costs, and data exchange with other registries.

Unresolved include directive in modules/ROOT/pages/index.adoc - include::platform:ROOT:partial$admonitions/os-apache-license-en.adoc[]

ddm platform context
Figure 1. Context diagram of the Platform

2. Problem statement

2.1. Current condition of registries

Across the globe, many countries are grappling with a need for uniformity in how their public state registers are created and managed. This inconsistency stymies the practical application of crucial principles of digital development policy, such as reusability, technology neutrality, data portability, interoperability, security, and confidentiality. Consequently, this results in increased complexity in delivering administrative services while also acting as a roadblock to their transition to online platforms.

In the case of Ukraine, over 450 state registries exist, each with distinct ownership. Individual teams are responsible for creating and maintaining each registry, and they each operate on their dedicated infrastructure, whether physical hardware or a cloud-based solution.

The current situation can be characterized as both decentralized and unregulated:

  • Decentralized refers to separate infrastructures for data storage maintained by different owners. This distinction is crucial regarding data collection, storage, and usage accountability.

  • Unregulated signifies the absence of guarantees that the registries interact correctly. This interaction should occur over secure connections, comply with data retention policies, and align with software reuse and resource optimization principles.

2.2. The concept of a platform for deploying registries and solving the problem

Given the current situation and potential risks associated with defining responsibility for data protection, the Platform advocates a shift towards a decentralized but regulated approach.

This approach guarantees the preservation of data owner identification, establishing clear data responsibility. Simultaneously, it lays the groundwork for further Platform enhancements, positioning registries as a complex of hardware and software tools. These tools are designed to implement the Ministry of Digital Transformation of Ukraine’s requirements.

3. Getting started

Welcome to our comprehensive knowledge base! Whether you’re navigating the complexities of our Platform or looking to deepen your understanding of specific areas, we’ve got you covered. Dive into the sections tailored just for you:

  • For Platform infrastructure wizards: Are you the backbone of our Platform’s infrastructure, security, or access management? Your journey starts here: Platform administrators.

  • For registry development heroes: Part of the team deploying registries with finesse? You can find your guide at Registry development and maintenance teams.

  • For registry administrators: Steering the ship of registry management? Anchor here: Registry administrators.

  • For data modeling magicians: Crafting operational data structures, declarative model descriptions, and creating analytical reports? Your spellbook is waiting: Data modelers.

  • For BPMN and UI Form sculptors: Modeling business processes and UI forms with BPMN, DMN, Groovy, and JSON? Carve out your niche: Business process modelers.

  • Seeking learning opportunities and wanting to learn more and gain practical skills? Visit the following:

  • For service providers, government officers, service recipients, and citizens: Engaging with the user portal as part of business processes? Your portal awaits at User documentation.

  • For developers, architects, and tech gurus: Craving a deeper understanding of our architecture? Explore Architecture documentation.

  • Familiarize yourself with the key terms and definitions critically important for understanding our Platform. Your encyclopedia awaits at Platform Glossary. Here, you will find all the necessary information to dive into the specifics and language of our system, which will help you better navigate and effectively work with our tools and resources.

4. Code of Conduct Diia.Engine Open Source

Notice! This software is provided as is, and we are not responsible for how you will use it in your solutions.

4.1. Section 1. User agreement

4.1.1. The Diia.Engine platform

The Diia.Engine platform is an innovative solution that will help ministries and government agencies to conveniently create and manage registers. This will allow for the orderly and secure storage of data in registers, automation and digitization of public services, thus boosting the launch of online services and digitalization in general. Diia.Engine is an export-ready platform that meets international standards for interoperability and data security.

  • Instances. The Diia.Engine platform available as instances that can be deployed on your own infrastructure or used in the cloud.

  • The platform works with open source software, so there are no license fees.

4.1.2. Users

  • Ministry of Digital Transformation of Ukraine: supported development of Diia Engine that using to build digital services for citizens.

  • Government agencies: use Diia Engine to create and manage their own digital registers and services.

  • Developers: the product is an open-source solution, so developers can use the platform’s open code for development purposes.

4.1.3. Code of Conduct outlines the expected behavior for a specific community or platform:

  • Promote a positive and productive environment.

  • Ensure ethical development.

  • Protect users from harmful behavior.

4.1.4. The Diia Engine open-source product community consists of:

  • Ministry of Digital Transformation of Ukraine (MDT), Ukrainian State Services and Authorities (Developing services on Diia.Engine).

  • GIZ (Deutsche Gesellschaft für Internationale Zusammenarbeit) (a German development agency that provides technical and financial support to Diia Engine).

  • East Europe Foundation (collaborates with GIZ to support the development of registers on Diia Engine).

  • Public and government organizations (could use Diia Engine to create digital services).

4.2. Section 2. Expected Behavior

Respectful communication. We expect all participants to treat each other with respect, regardless of background, experience level, or opinion. This includes avoiding discriminatory or offensive language, harassment, and personal attacks.

Diversity and inclusion. We value diversity of thought and experience. We strive to create a welcoming and inclusive environment for all contributors.

Professionalism. We encourage professional and constructive communication in discussions and disagreements.

4.3. Section 3. Contribution Guidelines

Agreeing to the Code of Conduct. By participating in the project, you agree to abide by this Code of Conduct.

Contribution methods. Use GitHub’s standard features to propose improvements (pull requests), report bugs (issues), and report violations of this Code of Conduct.

Decision-making on contributions. The project team will review and evaluate all contributions based on technical merit, alignment with project goals, and adherence to coding standards. We reserve the right to accept or reject contributions without providing specific reasons.

4.4. Section 4. Review Process

Evaluation criteria. Contributions are evaluated based on:

  • Functionality and technical merit.

  • Alignment with the project’s vision and roadmap.

  • Coding style and adherence to best practices.

  • Potential impact on the project and its users.

Collaborative decision-making. The product development team will review contributions collaboratively using standard GitHub tools.

4.5. Section 5. Consequences of Violations

Addressing violations. If a participant violates this Code of Conduct, the project team may take appropriate action, including:

  • Warning or reprimand.

  • Removal of comments or contributions.

  • Temporary or permanent ban from the project.

4.6. Section 6. Feedback and Improvement

Providing feedback. If you disagree with a decision or have suggestions for improving this Code of Conduct, you are encouraged to discuss it with the product development team using GitHub’s standard tools for discussion.

4.7. Section 7.

All suggestions for improvement from members who violate this Code of Conduct may be rejected and ignored.

4.8. Section 8.

If you do not agree with this Code of Conduct, you can contact the product development team with suggestions for making changes using GitHub’s standard tools.

Jump into the sections that resonate with your role and embark on a journey to master the ins and outs of our Platform. Let’s explore together!