Задать вопрос

Есть ли языки/нотации для записи бизнес-логики?

Например, в математике пишут "x + y < z" потому что это понимается проще чем
текст "сумма x и y меньше чем z".
Есть ли подобные нотации для записи требований?

Допустим есть некая система букинга отеля. И для нее хотим записать требование

"Скидка доступна если у пользователя подключен тарифный план Платина и срок его действия не закончен на дату бронирования."

Можно было бы записать как-то так:

Скидка "Платина" Доступна ЕСЛИ
(Тарифный план пользователя = Платина)
И (День окончания Бронирования <= День окончания срока действия тарифа).

Какую проблему решаю:
- Повысить читаемость требований
- Формализировать/Унифицировать запись
- Сделать возможным переиспользование требований (типа условия скидки, один раз определили и используем в других формулах)

Есть ли какие-то подобные системы записи?

Обн.
* Нет цели задокументировать абсолютно весь в проект в такой нотации.
* Мне это видится как такой DDD в псевдокоде, без привязки к инфраструктуре или языку программирования.
* Что-то похожее https://www.flexrule.com/business-rules
  • Вопрос задан
  • 1676 просмотров
Подписаться 3 Простой 7 комментариев
Решение пользователя mayton2019 К ответам на вопрос (4)
mayton2019
@mayton2019
Bigdata Engineer
"x + y < z"

То что вы хотите - это не язык бизнес-логики а обычная блок-схема алгоритма или
диаграмма использования.

Формализировать/Унифицировать запись

Вы должны задать себе вопрос для кого это делается. Кто будут те люди, которые обязаны
будут по должностной читать эти вещи. Соберите с них фидбеки. Я вообще не уверен
что у них с этим проблема. Может они вам скажут что им такое не надо и проблема в другом.

Посмотрите еще графический стандарт BPML (Business Process Modeling Language).
Посмотрите также обычные Activity Diagram, Use-Case Diagrams из рисовалок UML.
Ответ написан