Cause-Effect Graphing

Draft

Как превращать сложные условия и бизнес-правила в причинно-следственную модель и получать более точные тесты для логики решений.

Содержание

Cause-Effect Graphing помогает разобраться с логикой, где множество входных условий приводит к разным результатам. По сути это мост между текстовыми правилами и более строгим проектированием тестов: QA сначала строит карту причин и эффектов, а потом на её основе выделяет проверки.

Что такое cause и effect

  • Cause — это входное условие, событие или признак, влияющий на решение системы.
  • Effect — ожидаемый результат, действие системы или изменившееся состояние.

Когда техника полезна

  • Логика описана через if/else, исключения, ограничения и зависимости.
  • Есть много условий, которые объединяются через AND, OR, NOT.
  • Требования написаны сложно и есть риск неверной трактовки правил.
  • Нужно показать команде, как конкретные входы приводят к конкретным последствиям.

Как это помогает QA

  • Видно, какие условия реально влияют на результат, а какие вторичны.
  • Проще находить пропущенные или противоречивые правила.
  • Легче переходить к decision tables и конкретным test cases.
  • Становится проще объяснить разработке и аналитикам, где именно логика дырявая.

Частые ошибки

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

Cause-Effect Graphing особенно ценен в сложных правилах принятия решений: тарифах, скидках, маршрутизации, доступах, scoring, антифроде и финансовых workflow.