Таблиця рішень
Таблиця рішень — це візуальне представлення для визначення дій, що виконуються залежно від заданих умов. Таблиці рішень використовуються для таблиць переходів станів у сфері моделювання бізнес-процесів. Як і і блок-схеми, пов'язують умови (передумови) з рішеннями, які слід або не слід (Так/Ні) виконувати. Форматування таких таблиць у цій галузі зазвичай є транспонованим порівняно з їхнім форматом в інженерії програмного забезпечення .
Кожне рішення відповідає змінній, можливі значення якої перераховані серед варіантів умов. Кожна дія - це процедура або операція, яку потрібно виконати, а записи вказують, чи потрібно виконувати цю дію.
Таблиці ухвалення рішень, як правило, поділяють на чотири квадранти, як показано нижче.
Умови | Варіанти виконання рішень |
Дії | Необхідність дій |
Щоб зробити їх більш стислими, багато таблиць рішень включають в альтернативи умов символ «байдуже». Це може бути дефіс[1] або пробіл,[2] хоча використання пробілу не рекомендується, оскільки він може просто вказувати на те, що таблиця рішень не закінчена. Одним із застосувань таблиць рішень є виявлення умов, за яких певні вхідні фактори не мають відношення до дій, які потрібно виконати, що дозволяє пропустити ці перевірки і тим самим впорядкувати процедури прийняття рішень.
Таблиця рішень вважається збалансованою[2] або повною[1], якщо вона включає всі можливі комбінації вхідних змінних. Іншими словами, збалансовані таблиці рішень визначають дії в кожній ситуації, де є вхідні змінні[2].
Нижче наведено приклад збалансованої таблиці рішень для компанії технічної підтримки, яка використовується, щоб дозволити співробітникам технічної підтримки ефективно діагностувати проблеми з принтером на основі симптомів, описаних їм по телефону клієнтами.
Варіанти виконання рішень | |||||||||
---|---|---|---|---|---|---|---|---|---|
Умови | Принтер друкує | Так | Ні | Ні | Ні | Так | Так | Так | Так |
Блимає сповіщення про помилку | Так | Так | Ні | Ні | Так | Так | Ні | Ні | |
Принтер розпізнано комп'ютером | Ні | Так | Ні | Так | Ні | Так | Ні | Так | |
Необхідність дій | |||||||||
Дії | Перевірити кабель живлення | ✔ | — | ||||||
Перевірте кабель підключення до ПК | ✔ | ✔ | — | ||||||
Переконайтеся, що встановлено ПЗ | ✔ | ✔ | ✔ | ✔ | — | ||||
Перевірте наявність/замініть чорнило | ✔ | ✔ | ✔ | — | |||||
Перевірте, чи не застряг папір | ✔ | ✔ | — |
Таблиці рішень, особливо у поєднанні з використанням специфічної для предметно-орієнтованих мов програмування, дозволяють розробникам і експертам у галузі політики працювати з однаковою інформацією — самими таблицями прийняття рішень.
Інструменти для перетворення вкладених операторів if з традиційних мов програмування в таблиці рішень також можна використовувати як інструмент налагодження[3].
Таблиці рішень виявилися легшими для розуміння та перегляду, ніж код, і широко та успішно використовуються для створення специфікацій для складних систем.
Таблиці рішень можуть бути, і часто є, вбудованими у комп'ютерні програми та використовуються для "керування" логікою програми. Простим прикладом може бути таблиця пошуку, яка містить діапазон можливих вхідних значень і вказівник на функцію, що посилається на частину коду для обробки цих вхідних даних.
Ввід | Вказівник на функцію |
---|---|
"1" | Функція 1 (Ініціалізація) |
"2" | Функція 2 (Обробка 2) |
"9" | Функція 9 (Завершення) |
У 1960-х і 1970-х роках для бізнес-програмування були популярні мови на основі таблиць рішень, такі як Filetab[en].
- Rufus-decision - реалізація таблиць прийняття рішень мовою програмування Ruby
- ↑ а б Ross, Ronald. Decision Tables, Part 2 ~ The Route to Completeness : Commentary : Business Rules Community / Business Rules Journal. Business Rules Community - BRC (англ.). Процитовано 21 листопада 2024.
- ↑ а б в » Decision Tables DTRules (амер.). Процитовано 21 листопада 2024.
- ↑ "A Real CCIDE Example".