Comunda
Elasticsearch
документооборот
Задача: написать техническое задание на реализацию системы документооборота
Поскольку требовалось автоматизировать и описать большое количество документов, был определен специальный единый формат описания структуры всех документов.
Во-первых, он был понятен бизнес представителям заказчика.
Во-вторых, он позволял формально описать всю структуру документов, в том числе поля, способы их валидизации и ограничения, которые должны на них накладываться.
В-третьих, он позволял избежать двойной работы и уменьшить количество ошибок при написании кода на основе ТЗ, т.к. на основе описания можно было автоматически сгенерировать все необходимые данные (структуру базы данных и пользовательский интерфейс).
И наконец, он сокращал объем разрабатываемого документа и делал его более понятным для понимания системы в целом.
В качестве базовой выбрана микросервисная архитектура.
Для взаимодействия с внешними сервисами определены интеграционные паттерны.
В рамках написания ТЗ было предложено техническое решение, позволяющее:
-иметь унифицированный интерфейс, выстраивающийся по атрибутам документов,
-организовать управление жизненным циклом документов (на базе платформы исполнения бизнес-процессов CAMUNDA),
-реализовать полнотекстовый поиск в документах и интегрированных информационных сервисов (Elasticsearch)
Несмотря на объемность системы, техническое решение выполнено компактно и передано заказчику на дальнейшую реализацию.