Decision Model and Notation - DMN

Valentyn Budkin
Valentyn BudkinAgile coach | Business Process and Business Rules Management professional | E-commerce & IT Infrastructure consultant um IT Consultant
Decision Model and
Notation
в розробці корпоративного ПЗ
BA – складнощі перекладу
Business Analysis
Вивчення потреб бізнесу для виявлення
рішень проблем бізнесу.
◦ Дослідження поточних бізнес-систем
◦ Створення опису дій для покращення роботи
бізнес-систем
◦ Документування вимог бізнесу для створення
та підтримки ІТ-систем
Business Analytics
Моделювання минулої ефективності
бізнесу
◦ Descriptive — для пошуку відповідей
◦ Predictive — для створення прогнозів
◦ Prescriptive — для прийняття бізнес-рішень
Вимоги — між двох вогнів
Бізнес
◦ Мало ресурсів на створення вимог
◦ Мало ресурсів на ознайомлення з вимогами
◦ Часто змінює вимоги
◦ Незадоволений термінами розробки та
впровадження
Розробники
◦ Неповнота технічних завдань
◦ Вимоги часто неоднозначні
◦ Опис бізнес-логіки складний для
опрацювання
Будь-яку ціль люди
розуміють по іншому,
ніж той, хто на неї вказує
Третій закон Чизхолма
Business Process Model and Notation (BPMN 2.0)
Object Management Group standard since 2011
Decision Model and Notation - DMN
Decision Model and Notation - DMN
Decision Model and Notation - DMN
Time to DMN
Decision Model and Notation - DMN
Decision Model and Notation - DMN
Таблиці
Перевірка Результат Коментар
Тип клієнта Баланс разом з поточним відвантаженням Рішення по
відвантаженню
VIP Вписується в кредитний ліміт Все ОК Ура!
VIP Кредитний ліміт перевищено до1000$ Повідомити Вантажимо та листуємо
VIP Кредитний ліміт перевищено на >1000$ Все погано Скільки таких?
Постійний Вписується в кредитний ліміт Все ОК Ура!
Постійний Кредитний ліміт перевищено Все погано Скільки таких?
Епізодичний Епізодчиний Тільки передоплата
DMN Decision table
DMN Decision table - розробнику
Декілька правил
Типи даних на вході та виході
Валідація
Friendly Enough Expression Language
< 42
(10..19)
3,14
not(13)
>= myvariable
[date("2016-03-19")..date("2016-03-20")]
s FEEL
Не може створювати змінні.
Максимально схожий до формул Excel
FEEL по стандарту може більше,але імплементацій поки що немає.
Decision table в XML
Виконання рішень
DMN як стандарт
Фінальна версія 1.0 опублікована16 січня 2014 року організацією Object Management
Group.
Версія 1.1 повинна вийти в найближчі місяці.
Є стандартом для моделювання рішень згідно BABOK v3
Цілі створення DMN
Дати бізнесу можливості для швидкої зміни бізнес-логіки,що керує операціями за
допомогою незалежної від вендорів мови діаграм для використання:
◦ бізнес-аналітиками,
◦ стейкхолдерами,
◦ розробниками ПЗ.
DMN створює стандартний міст між дизайном бізнес-рішень та прийняттям цих рішень
для:
◦ моделювання прийняття рішень людьми,
◦ моделювання вимог для автоматичного прийняття рішень,
◦ для імплементації автоматичного прийняття рішень.
Де шукати бізнес-правила
◦ Ціноутворення
◦ Надання маркетингових пропозицій
◦ Робота зі скаргами
◦ Розпізнавання шахрайства
◦ Системи грейдів та компенсацій для HR
◦ Відповідність регуляціям державних органів
◦ Логістика
◦ Обслуговування обладнання
Бізнес-правила це списки тверджень,що кажуть вам що можна,робити,а що ні або дають
вам критерії і умови для прийняття рішення.
Властивості бізнес-рішень для DMN
◦ Повторюються
◦ Можлива їх автоматизація
◦ Не тривіальні
◦ Вимірювані
Боремося з частотою змін
Бізнес-процеси:
◦ Змінюються раз декілька місяців або років, їх зміни організаційно складні та потребують ІТ для
розробки та впровадження.
Колонки бізнес-правил:
◦ Змінюються раз в декілька місяців,і та потребують ІТ для розробки та впровадження.
Рядки бізнес-правил:
◦ Змінюються часто і бізнес потребує їх оперативного редагування.
Decision Requirement Diagram
Decision Model and Notation - DMN
Decision Model and Notation - DMN
Програмне забезпечення
Camunda DMN engine
Camunda modeler – http://demo.bpmn.io/dmn
OpenRules
Signavio
DecisionFirst
Flexrule
http://openjvm.jvmhost.net/DMNtools/
Домашнє завдання
1. Візьміть технічне завдання з бізнес-логікою
2. Знайдіть точку прийняття рішення
3. Створіть DRD, щоб зрозуміти звідки приходить інформація та знання
4. Створіть DecisionTable
5. Покажіть DecisionTable бізнесу та розробникам
Контакти
Будкін Валентин
Interests - BPMN, DMN,SOA,Agile
val.budkin@gmail.com
skype:val.budkin
+380677979332
https://twitter.com/valbudkin
https://linkedin.com/in/valentinebudkin
1 von 32

Más contenido relacionado

Similar a Decision Model and Notation - DMN(20)

Natalia Pelykh BAQNatalia Pelykh BAQ
Natalia Pelykh BAQ
Dakiry78 views
Project plan.pptxProject plan.pptx
Project plan.pptx
Andrew6215466 views
Delivering business intelligence - RavaDelivering business intelligence - Rava
Delivering business intelligence - Rava
Igor Bronovskyy154 views
Комплекс услугКомплекс услуг
Комплекс услуг
Marina Kirilyuk822 views

Decision Model and Notation - DMN

  • 1. Decision Model and Notation в розробці корпоративного ПЗ
  • 2. BA – складнощі перекладу Business Analysis Вивчення потреб бізнесу для виявлення рішень проблем бізнесу. ◦ Дослідження поточних бізнес-систем ◦ Створення опису дій для покращення роботи бізнес-систем ◦ Документування вимог бізнесу для створення та підтримки ІТ-систем Business Analytics Моделювання минулої ефективності бізнесу ◦ Descriptive — для пошуку відповідей ◦ Predictive — для створення прогнозів ◦ Prescriptive — для прийняття бізнес-рішень
  • 3. Вимоги — між двох вогнів Бізнес ◦ Мало ресурсів на створення вимог ◦ Мало ресурсів на ознайомлення з вимогами ◦ Часто змінює вимоги ◦ Незадоволений термінами розробки та впровадження Розробники ◦ Неповнота технічних завдань ◦ Вимоги часто неоднозначні ◦ Опис бізнес-логіки складний для опрацювання
  • 4. Будь-яку ціль люди розуміють по іншому, ніж той, хто на неї вказує Третій закон Чизхолма
  • 5. Business Process Model and Notation (BPMN 2.0) Object Management Group standard since 2011
  • 12. Таблиці Перевірка Результат Коментар Тип клієнта Баланс разом з поточним відвантаженням Рішення по відвантаженню VIP Вписується в кредитний ліміт Все ОК Ура! VIP Кредитний ліміт перевищено до1000$ Повідомити Вантажимо та листуємо VIP Кредитний ліміт перевищено на >1000$ Все погано Скільки таких? Постійний Вписується в кредитний ліміт Все ОК Ура! Постійний Кредитний ліміт перевищено Все погано Скільки таких? Епізодичний Епізодчиний Тільки передоплата
  • 14. DMN Decision table - розробнику
  • 16. Типи даних на вході та виході
  • 18. Friendly Enough Expression Language < 42 (10..19) 3,14 not(13) >= myvariable [date("2016-03-19")..date("2016-03-20")]
  • 19. s FEEL Не може створювати змінні. Максимально схожий до формул Excel FEEL по стандарту може більше,але імплементацій поки що немає.
  • 22. DMN як стандарт Фінальна версія 1.0 опублікована16 січня 2014 року організацією Object Management Group. Версія 1.1 повинна вийти в найближчі місяці. Є стандартом для моделювання рішень згідно BABOK v3
  • 23. Цілі створення DMN Дати бізнесу можливості для швидкої зміни бізнес-логіки,що керує операціями за допомогою незалежної від вендорів мови діаграм для використання: ◦ бізнес-аналітиками, ◦ стейкхолдерами, ◦ розробниками ПЗ. DMN створює стандартний міст між дизайном бізнес-рішень та прийняттям цих рішень для: ◦ моделювання прийняття рішень людьми, ◦ моделювання вимог для автоматичного прийняття рішень, ◦ для імплементації автоматичного прийняття рішень.
  • 24. Де шукати бізнес-правила ◦ Ціноутворення ◦ Надання маркетингових пропозицій ◦ Робота зі скаргами ◦ Розпізнавання шахрайства ◦ Системи грейдів та компенсацій для HR ◦ Відповідність регуляціям державних органів ◦ Логістика ◦ Обслуговування обладнання Бізнес-правила це списки тверджень,що кажуть вам що можна,робити,а що ні або дають вам критерії і умови для прийняття рішення.
  • 25. Властивості бізнес-рішень для DMN ◦ Повторюються ◦ Можлива їх автоматизація ◦ Не тривіальні ◦ Вимірювані
  • 26. Боремося з частотою змін Бізнес-процеси: ◦ Змінюються раз декілька місяців або років, їх зміни організаційно складні та потребують ІТ для розробки та впровадження. Колонки бізнес-правил: ◦ Змінюються раз в декілька місяців,і та потребують ІТ для розробки та впровадження. Рядки бізнес-правил: ◦ Змінюються часто і бізнес потребує їх оперативного редагування.
  • 30. Програмне забезпечення Camunda DMN engine Camunda modeler – http://demo.bpmn.io/dmn OpenRules Signavio DecisionFirst Flexrule http://openjvm.jvmhost.net/DMNtools/
  • 31. Домашнє завдання 1. Візьміть технічне завдання з бізнес-логікою 2. Знайдіть точку прийняття рішення 3. Створіть DRD, щоб зрозуміти звідки приходить інформація та знання 4. Створіть DecisionTable 5. Покажіть DecisionTable бізнесу та розробникам
  • 32. Контакти Будкін Валентин Interests - BPMN, DMN,SOA,Agile val.budkin@gmail.com skype:val.budkin +380677979332 https://twitter.com/valbudkin https://linkedin.com/in/valentinebudkin

Hinweis der Redaktion

  1. Дивимся в середину “Перевірити заборгованість клієнта”
  2. Hype cycle Zero code development
  3. Any Hit Policy Multiple rules can be satisfied. But all satisfied rules must generate the same output. The decision table result contains only the output of one of the satisfied rules. If multiple rules are satisfied which generate different outputs the hit policy is violated. First Hit Policy Multiple rules can be satisfied. The decision table result contains only the output of the first satisfied rule. Priority (P) means that the output with the highest priority is selected, where priority is given by the listed order of allowed values in the output column heading Rule Order Hit Policy Multiple rules can be satisfied. The decision table result contains the output of all satisfied rules in the order of the rules in the decision table. Collect Hit Policy Multiple rules can be satisfied. The decision table result contains the output of all satisfied rules in an arbitrary order. Additionally an aggregator can be specified for the Collect hit policy. If an aggregator is specified the decision table result will only contain a single output entry. The aggregator will generate the output entry from all satisfied rules. Note if the Collect hit policy is used with an aggregator the decision table can only have one output. SUM MIN MAX COUNT
  4. [date("2015-09-17")..date("2015-09-19")] // input is after or equal '2015-09-17' and before or equal '2015-09-19'
  5. Все погано.