(deffacts initial-facts
"Исходные факты для процесса создания веб-сайта"
(wants-to-create-website yes)
(has-budget yes)
)
(defrule start-TZ
(wants-to-create-website yes)
(has-budget yes)
=>
(printout t "Начинаем разработку ТЗ." crlf)
(assert (can-start-TZ yes))
)
(defrule develop-TZ
(can-start-TZ yes)
=>
(printout t "Разработано ТЗ." crlf)
(assert (developed-TZ yes))
)
(defrule approve-TZ
(developed-TZ yes)
=>
(printout t "ТЗ утверждено." crlf)
(assert (approved-TZ yes))
)
(defrule design-website
(approved-TZ yes)
=>
(printout t "Разработан дизайн сайта." crlf)
(assert (designed-website yes))
)
(defrule implement-website
(designed-website yes)
=>
(printout t "Сайт реализован." crlf)
(assert (implemented-website yes))
)
(defrule test-website
(implemented-website yes)
=>
(printout t "Сайт протестирован." crlf)
(assert (tested-website yes))
)
(defrule setup-hosting
(tested-website yes)
=>
(printout t "Хостинг и домен настроены." crlf)
(assert (hosting-setup yes))
)
(defrule launch-website
(hosting-setup yes)
=>
(printout t "Сайт запущен." crlf)
(assert (website-launched yes))
)
(reset) ;; Загружаем факты в рабочую память
(run) ;; Запускаем выполнение правил
(exit) ;; Завершаем работу CLIPS
; empty line at the end