Skip to content

Commit fd85de7

Browse files
authored
Merge pull request #1 from ValentinKozlov/main
Простой пример валидации сущностей в DocHub с выводом информации в меню
2 parents 6653570 + b6549a5 commit fd85de7

8 files changed

Lines changed: 410 additions & 6 deletions

File tree

README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
1. Установите IntelliJ IDEA. Рекомендуется [Community Edition](https://www.jetbrains.com/idea/download/);
1919
2. Установите [плагин DocHub](https://plugins.jetbrains.com/plugin/18518-dochub-architecture-as-code);
20-
3. Клонируейте репоизиторий примеров:
20+
3. Клонируйте репозиторий примеров:
2121
```
2222
git clone https://github.com/rpiontik/DocHubExamples.git
2323
```
@@ -68,8 +68,7 @@
6868
6969
# Лицензия
7070
71-
Все материалы содержащиеся в данном репозитории являются публичными. Могут использовать без ограничения
72-
с любой целью не противоречащей закону.
71+
Все материалы содержащиеся в данном репозитории являются публичными. Могут использовать без ограничения с любой целью не противоречащей закону.
7372
7473
Pull request в данный репозиторий означает согласие автора на присоединение к данной лицензии.
7574

src/C4Model/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ c4model:
5555
* L2.yaml - компоненты уровня L2 C4 Model
5656
* L3.yaml - компоненты уровня L3 C4 Model
5757
* root.yaml - корневой манифест данных архитектуры
58-
* entities - матемодель;
58+
* entities - метамодель;
5959
* templates - шаблоны, используемые для рендеринга диаграмм
6060
* context.mmd - Mermaid шаблон
6161
* c4model.yaml - манифест пользовательской сущности C4Model
6262
* root.yaml - корневой манифест метамодели
63-
* images - картинки для настоящей документаии
63+
* images - картинки для настоящей документации
6464
* dochub.yaml - корневой манифест примера
6565

6666
## Использование
@@ -81,4 +81,4 @@ c4model:
8181
и компоненты к ним в файле [components/L3.yaml](./components/L3.yaml);
8282
* Измените шаблон рендеринга с Mermaid на PlantUML;
8383
* Добавьте новое обязательное поле в метамодель [c4model](./entities/c4model.yaml) для уровня L1;
84-
* Реализйте поддержку L4 C4Model в метамодели.
84+
* Реализуйте поддержку L4 C4Model в метамодели.

src/validator_example/README.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Простой пример валидации сущностей в DocHub с выводом информации в меню
2+
3+
**Цель примера:** На простом примере показать возможности валидатора, с выводом информации в меню DocHub.
4+
5+
6+
# Суть примера
7+
В процессе работы стало понятно, что нам не хватает реквизитов для описания типовых систем/сервисов. Например, бизнес выразил желание делать оценку рисков. Поэтому типовая карточка систем была дополнена набором различных реквизитов описывающие риски системы/сервисов.
8+
9+
Так как планируется, что данные реквизиты буду заполнять различные сотрудники, то мы решили сделать валидатор для проверки этих данных и вывести его в меню DocHub, для того чтобы было удобней смотреть.
10+
11+
## Файловая структура примера
12+
* system_template.yaml - пример системы/сервиса с расширенным набором полей
13+
* system_validator.yaml - валидатор, который проверяет нужный набор реквизитов и выводит информацию о результатах валидации в меню DocHub
14+
* images - картинки для настоящей документации
15+
* dochub.yaml - корневой манифест примера
16+
17+
18+
## Использование
19+
В меню плагина DocHub выберите пункт "Проблемы"
20+
21+
![Меню](./images/menu.jpg)
22+
23+
Разверните пункт "Валидатор систем/сервисов" и наслаждайтесь результатами ошибок (для этого я оставил парочку).
24+
![Результаты](./images/validator.jpg)
25+
26+
27+
## Задания для практики
28+
* Исправьте ошибки, которые были добавлены в тестовый пример
29+
* Добавьте новых реквизитов и добавьте их в валидатор
30+
* Введите ошибочные значения для предыдущего пункта и посмотрите результаты

src/validator_example/dochub.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
imports:
2+
- system_template.yaml
3+
- system_validator.yaml
25.4 KB
Loading
96.3 KB
Loading
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
components:
2+
samolet.bu_name.system_name:
3+
# Общая информация
4+
title: Имя системы # Название компонента
5+
entity: system # Сущность компонента из PlantUML (https://plantuml.com/ru/deployment-diagram)
6+
description: Полное описание системы/сервиса
7+
short_description: Краткое описание системы/сервиса
8+
owner: Фамилия имя владельца системы/сервиса
9+
applink: Ссылка на систему/сервис. Это может быть либо ссылка на S.POT, либо ссылка на внутренний или внешний ресурс
10+
critical_level: low #low/middle/high/critical
11+
customer_type:
12+
- b2b
13+
# - b2c
14+
# - internal
15+
system_category:
16+
- administrative
17+
- canal
18+
- accounting
19+
- supporting
20+
21+
technologies: # Используемые технологии
22+
- описание технологий находится здесь 4_tech_arch/technologies.yaml
23+
aspects: # Аспекты, которе реализует компонент
24+
- описание аспектов находится здесь 3_application_arch/functions/functions.yaml
25+
links:
26+
- id: samolet.bu_name.system_name
27+
direction: <--
28+
29+
# Риски/проблемы
30+
risk_functional_fit: # определяет насколько приложение/сервис удовлетворяет функциональным требованиям пользователей
31+
value: 1 #1-10
32+
date_value: 09.10.2022 # дд.мм.гггг или дд-мм-гггг
33+
comments: Тестовый комментарий
34+
35+
risk_arch_maturity: # определяет зрелость архитектуры приложений/сервисов
36+
value: 3
37+
date_value: 14.10.2022
38+
comments: Тестовый комментарий
39+
40+
app_rating: # определяет рейтинг приложения из S.POT
41+
value: A # A/B/C/D
42+
spot_link: https://spot.samoletgroup.ru/product/6757a357-e3e4-432c-965c-86cc2a22aa48
43+
44+
risk_code_control: # определяет на сколько хорошо мы управляем кодовой базой внутри Самолета
45+
value: 10
46+
date_value: 12.10.2022
47+
comments: Тестовый комментарий
48+
49+
risk_sustainability: # определяет устойчивость/надежность приложения
50+
value: 0
51+
date_value: 14-10-2022
52+
comments: Тестовый комментарий
53+
54+
risk_security: # определяет уровень кибербезопасности приложения
55+
value: 9
56+
date_value: 2022.12.10
57+
comments: Тестовый комментарий
58+
59+
risk_capacity: # определяет утилизацию серверных, сетевых мощностей для приложений
60+
value: 3
61+
date_value: 14-10-2022
62+
comments: Тестовый комментарий
63+
64+
risk_vendor: # определяет каковы риски вендора приложения (vendor lock, санкционность, мощность вендора)
65+
value: 1
66+
date_value: 14-10-2022
67+
comments: Тестовый комментарий
68+
69+
risk_financial: # определяет на сколько обоснована стоимость владения системой/сервисом
70+
value: 6
71+
date_value: 14-10-2022
72+
comments: Тестовый комментарий
73+
74+
risk_team_skills: # определяет зрелость и квалификацию команды, сопровождающей приложение/сервис
75+
value: 6
76+
date_value: 14-10-2022
77+
comments: Тестовый комментарий
78+
79+
risk_team_capacity: # определяет хватает ли в команде ресурсов для развития/сопровождения приложения
80+
value: 8
81+
date_value: 14-10-2022
82+
comments: Тестовый комментарий
83+
84+
risk_process: # определяет зрелость процессов разработки, внедрения, техподдержки приложения/сервиса
85+
value: 5
86+
date_value: 14-10-2022
87+
comments: Тестовый комментарий

0 commit comments

Comments
 (0)