**AS IS**
AS IS
Изменять мир
TO BE
Карелия → Выборг → Финский залив → вымыть сапоги
Декларативный формальный контракт.
Проверить его с точки зрения BDD — тривиальная задача.
Есть начальное состояние.
Есть целевое состояние.
Есть критерии приёмки.
С построением пути тоже ничего принципиально нового.
Задача коммивояжёра. Решается каждый день.
Теория управления. Графы. Constraint solving. Scheduling.
Есть расписание поездов. Есть ограничения географии.
Есть прогноз погоды. Надеюсь, точный.
Математический аппарат для таких задач существует десятки лет.
Можно построить формальный решатель.
Проверить достижимость.
Проверить траекторию.
Проверить ограничения.
Это уже решаемо старым добрым FORTRAN и вычметодами.
Сейчас между человеком и решателем просто появился ещё один слой.
Который просто описывает.
Человек просто формулирует намерение.
«Слой обдумывания» собирает ограничения и контракт из существующей предметной области.
Формальный решатель строит путь.
BDD проверяет результат.
Всё просто уже придумали.
Почти всё учли.
— Ярослав, вечером поедем на дачу.
— Мне надо помидоры подвязать.