3. Структура таблицы
Правила (rules)
Условия
Значения 1 2
3
4
5
6
7
8
Условие1
T,F
T T
T
T
F
F
F
F
Условие2
T,F
T T
F
F
T
T
F
F
Условие3
T,F
T F
T
F
T
F
T
F
Условия – входящие
данные
Действия
Действие1
X X
Действие2
X
Действие3
Действие4
Действия – исходящие
данные (ожидаемый
результат)
X
Правила – тест-кейсы
X
X
X
X
X
X
X
X
4. Шаги построения таблицы
1. Определить/записать все условия
2. Посчитать количество возможных комбинаций условий
N = n1*n2*…nm
3. Заполнить комбинации
4. Записать действия
5. Убрать лишние комбинации
Как нарисовать сову
1. Рисуем кружочки.
2. Рисуем остаток совы.
5. Пример: Светофор
Автомобиль находится перед светофором. Определить его
дальнейшие действия.
Условия:
Горит ли красный? Y, N
Горит ли желтый? Y, N
Горит ли зеленый? Y, N
Количество комбинаций:
N = 2*2*2 = 8
7. Пример: Светофор
Условия
Горит красный?
Горит желтый?
Горит зеленый?
Действия
Ехать
Стоять
Готовиться
Специальное действие
Значения
Y, N
Y, N
Y, N
1
Y
Y
Y
2
3
4
5
6
7
8
Y Y Y N N N N
Y N N Y Y N N
N Y N Y N Y N
Х
Х
Х
Х
Х
Х
X
Х
Х
9. Review
Желтый может мигать? А зеленый? А красный?
Специальное действие – это что?
Все ли светофоры одинаковые?
10. Review
Желтый может мигать?
Условия
Горит красный?
Горит желтый?
Горит зеленый?
Действия
Ехать
Стоять
Готовиться
Спец. действие
Нерегулируется
Значения
1 2 3 4 5 6 7 8 9 10 11
Y, N
Y Y Y Y Y Y N N N N N
Y, N, Blinking Y Y N N B B Y Y N N B
Y, N
Y N Y N Y N Y N Y N Y
12
N
B
N
X
Х
Х
Х
Х
Х
X
Х
X
Х
X
X
X
11. Review
Желтый может мигать?
Условия
Горит красный?
Горит желтый?
Горит зеленый?
Действия
Ехать
Стоять
Готовиться
Спец. действие
Нерегулируется
Значения
1 2 3 4 5 6 7 8 9 10 11
Y, N
Y Y Y Y Y Y N N N N N
Y, N, Blinking Y Y N N B B Y Y N N B
Y, N
Y N Y N Y N Y N Y N Y
Х
Х
Х
Х
12
N
B
N
X
Х
X
Х
X
Х
Х
X
X
X
12. Review
Желтый может мигать?
Условия
Горит красный?
Горит желтый?
Горит зеленый?
Действия
Ехать
Стоять
Готовиться
Спец. действие
Нерегулируется
Значения
1 2 3 4 5 6 7 8 9 10 11
Y, N
Y Y Y Y Y Y N N N N N
Y, N, Blinking Y Y N N B B Y Y N N B
Y, N
Y N Y N - - Y N Y N Y
Х
Х
Х
Х
12
N
B
N
X
Х
X
Х
X
Х
Х
X
X
X
13. Review
Желтый может мигать?
Условия
Горит красный?
Горит желтый?
Горит зеленый?
Действия
Ехать
Стоять
Готовиться
Спец. действие
Нерегулируется
Значения
1 2 3 4 5 7 8 9 10 11
Y, N
Y Y Y Y Y N N N N N
Y, N, Blinking Y Y N N B Y Y N N B
Y, N
Y N Y N - Y N Y N Y
Х
Х
Х
Х
12
N
B
N
X
Х
X
Х
X
Х
X
X
X
14. Подсказки
• Записать все условия и их комбинации
• Родственные комбинации располагать рядом
• Найболее доминантные условия ставить сверху
• Условия с большим количеством значений - снизу
• Если таблица очень большая, попробуйте разбить ее на несколько простых
Условия
Значения
Условие1 - родственное Y, N
Условие2 - родственное Y, N
Условие3
Y, N
Условие4 - мульти
A1, A2, A3, A4
21. Как внедрить в команде
1. Подготовить ознакомительный семинар
2. Показать применение:
• на сторонних примерах
• на рабочих задачах
3. Подготовить практические задания
4. Поощрять
22. Выводы
• Таблицы принятия решений – это готовый инструмент
• Легкое понимание
• Легко создавать и поддерживать
• Быстрое ревью (проверка)
• Предугадывать ошибки
• Prominent if-then-else logic• Logical relationships among input variables• Calculations involving subsets of the input variables• Cause-and-effect relationship between inputs and outputs• High cyclomatic complexity
Слайды для подсвечивания информации о которой идет рассказ
Слайды для подсвечивания информации о которой идет рассказ
Слайды для подсвечивания информации о которой идет рассказ
Слайды для подсвечивания информации о которой идет рассказ