stringtranslate.com

Таблица решений

Таблицы решений — это краткое визуальное представление для указания того, какие действия следует выполнять в зависимости от заданных условий. Таблица решений — это термин, используемый для таблицы управления или таблицы переходов состояний в области моделирования бизнес-процессов ; они обычно форматируются как транспонирование способа, которым они форматируются в программной инженерии .

Обзор

Каждое решение соответствует переменной, отношению или предикату, возможные значения которых перечислены среди альтернатив условий. Каждое действие — это процедура или операция для выполнения, а записи указывают, должно ли (или в каком порядке) выполняться действие для набора альтернатив условий, которым соответствует запись.

Чтобы сделать их более краткими, многие таблицы решений включают в свои альтернативы условий символ « неважно» . Это может быть дефис [1] [2] [3] или пробел, [4] хотя использование пробела не рекомендуется, поскольку это может просто указывать на то, что таблица решений не была завершена. [ необходима цитата ] Одно из применений таблиц решений — выявить условия, при которых определенные входные факторы не имеют значения для действий, которые необходимо предпринять, что позволяет пропустить эти входные тесты и тем самым оптимизировать процедуры принятия решений. [5]

Помимо базовой структуры из четырех квадрантов, таблицы решений значительно различаются по способу представления альтернатив условий и записей действий. [6] [7] Некоторые таблицы решений используют простые значения «истина/ложь» для представления альтернатив условию (аналогично if-then-else), другие таблицы могут использовать пронумерованные альтернативы (аналогично switch-case), а некоторые таблицы даже используют нечеткую логику или вероятностные представления для альтернатив условий. [8] Аналогичным образом записи действий могут просто представлять, должно ли быть выполнено действие (отметьте действия для выполнения), или в более сложных таблицах решений — последовательность действий для выполнения (пронумеруйте действия для выполнения).

Таблица решений считается сбалансированной [4] или полной [3] , если она включает в себя все возможные комбинации входных переменных. Другими словами, сбалансированные таблицы решений предписывают действие в каждой ситуации, где предоставляются входные переменные. [4]

Пример

Таблица решений с ограниченным входом является самой простой для описания. Альтернативы условий — это простые булевы значения, а записи действий — это галочки, представляющие, какие из действий в данном столбце должны быть выполнены.

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

Это всего лишь простой пример, и он не обязательно соответствует реальности устранения неполадок принтера. Тем не менее, он демонстрирует, как таблицы решений могут масштабироваться для нескольких условий со многими возможностями.

Преимущества разработки программного обеспечения

Таблицы решений, особенно в сочетании с использованием предметно-ориентированного языка , позволяют разработчикам и экспертам по политике работать с одной и той же информацией — самими таблицами решений.

Инструменты для преобразования вложенных операторов if из традиционных языков программирования в таблицы решений также могут использоваться в качестве инструмента отладки. [9] [10]

Таблицы решений оказались более простыми для понимания и анализа, чем код, и широко и успешно использовались для разработки спецификаций для сложных систем. [11]

История

В 1960-х и 1970-х годах для бизнес-программирования был популярен ряд языков, «основанных на таблицах решений», таких как Filetab .

Программа встроенных таблиц решений

Таблицы решений могут быть, и часто так и есть, встроены в компьютерные программы и используются для «управления» логикой программы. Простым примером может быть таблица поиска, содержащая диапазон возможных входных значений и указатель функции на раздел кода для обработки этого ввода.

Контрольные таблицы

Несколько условий могут быть закодированы аналогичным образом, чтобы инкапсулировать всю логику программы в форме «исполняемой» таблицы решений или таблицы управления . На практике может быть несколько таких таблиц, работающих на разных уровнях и часто связанных друг с другом (либо указателями, либо значением индекса).

Реализации

Смотрите также

Ссылки

  1. ^ LI Jing (1 апреля 2015 г.). "SEEM 3430 Tutorial: Decision Tables" (PDF) . стр. 23 . Получено 11 ноября 2017 г. .
  2. ^ "Создание таблицы решений в бизнес-правилах". Oracle Help Center . 6 августа 2017 г. Получено 11 ноября 2017 г.
  3. ^ ab Ross, Ronald G. (2005). "Таблицы решений, часть 2 ~ Путь к полноте". Business Rules Journal . 6 (8) . Получено 11 ноября 2017 г. .
  4. ^ abc Snow, Paul (19 июля 2012 г.). «Таблицы решений». DTRules: Java Based Decision Table Rules Engine . Получено 11 ноября 2017 г.
  5. ^ ЛИ Цзин 2015, стр. 24-25.
  6. ^ Роджерс, Уильям Т. "Примеры таблиц решений: медицинское страхование". Системный анализ и проектирование Университета Святого Ксавьера . Архивировано из оригинала 29 марта 2007 г.
  7. ^ "Таблицы решений". Архивировано из оригинала 2012-09-08 . Получено 2010-07-07 .
  8. ^ Wets, Geert; Witlox, Frank; Timmermans, Harry; Vanthienen, Jan (1996). "Моделирование выбора местоположения с использованием таблиц нечетких решений". Новые рубежи в нечеткой логике и вычислениях: Двухгодичная конференция Североамериканского общества обработки нечеткой информации 1996 года – NAFIPS. Двухгодичная конференция Североамериканского общества обработки нечеткой информации. Беркли, Калифорния: IEEE. стр. 80–84. doi :10.1109/NAFIPS.1996.534708. ISBN 0-7803-3225-3. S2CID  62056954.
  9. ^ "Реальный пример CCIDE"
  10. ^ "Опыт работы с процессором таблиц решений Cope". Архивировано из оригинала 2017-05-04 . Получено 2010-07-07 .
  11. Удо В. Пуч, «Перевод таблиц решений», ACM Computing Surveys, том 6, выпуск 2 (июнь 1974 г.) Страницы: 125–151 ISSN  0360-0300
  12. ^ "FORTAB: Язык таблиц решений для научных вычислительных приложений", 1962, Рэнд
  13. ^ Александр Уильямс (2015). "Парсер таблиц решений Ruby"

Дальнейшее чтение

Внешние ссылки