От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
Особенности Системного Анализа особо крупных проектов построенных на базе Business Rule Engine «Drools»
1. Особенности Системного
Анализа особо крупных
проектов построенных на
базе Business Rule Engine
«Drools»
Юрий Русович
www.DPI.Solutions; ISSoft Coherent Solutions
2. Немного о себе
Юрий Русович
Более 8 лет опыта в разработке
● Разработчик в ISSoft Coherent Solutions
● Консультант в DPI Solutions Активист
www.COMAQA.BY
● Проекты в прошлом
○ ПО для аэропортов.
○ Системы связи для спец служб.
○ Система воспроизведения записанной речи для
палаты представителей
3. Drools – основные понятия
Процессор бизнес-правил
(Business Rule Engine) - это
программное обеспечение,
которое выполняет одно или
несколько конфигурируемых,
настраиваемых бизнес-правил
в ядре системы.
4. Мотивы использования Business Rule Engine:
1. Облегчить поддержку.
2. Упростить дальнейшее развитие приложения
благодаря упрощению компонентов.
3. Изолировать часть логики от исходников.
4. Позволить настраивать систему не техническим
специалистам.
Drools – основные понятия
5. Drools – основные понятия
Drools – это процессор правил с открытым кодом,
написанный на Java.
Благодаря Drools бизнес-правила приложения можно
описывать декларативным образом, используя простой
для изучения и понимания язык (DSL)
Domain-Specific Language (DSL) это:
● Язык, предназначенный для решения конкретных
задач в узкой области.
● Является весьма простым, что позволяет им
пользоваться не техническим специалистам.
● Наиболее известные DSL: HTML, XML, SQL и т.д.
8. Сравнительный анализ
общепринятых вариантов
использования Drools
● DSL используется исключительно техническими
специалистами. Создали самостоятельно систему,
выделили правила, сами же ими и пользуются.
● Бизнес-аналитик формулирует правила и их
использует.
● Бизнес-аналитик выдвигает требования, а
технический специалист предлагает DSL. BA и
технические специалисты работают в тандеме.
9. Agile и Waterfall проекты
основанные на Drools,
особенности работы бизнес-
аналитика
Waterfall
● Формализованный домен
● “Компетентный” заказчик
● Компетентные технические спецы
● «Компетентный» BA
10. Agile и Waterfall проекты
основанные на Drools,
особенности работы бизнес-
аналитика
Agile
● Неопределенный домен
● “Некомпетентный” заказчик
● Некомпетентные технические спецы
● «Некомпетентный» BA
11. Как Бизнес-Аналитику работать с
Drools, tips & trics
Советы:
● Работать итерационно
● Подключать бизнес как можно раньше
12. Варианты организации сбора и
формализации системных
требований при работе с Drools
Можно сразу писать требования на DSL.
Cбор и формализация системных требований
происходит на этом DSL
13. Agile:
● Со временем грамматика фиксируется.
● Ядро стабилизируется.
Бизнес аналитик занимается иcпользованием DSL и
формирует Backlog item в терминах DSL.
Бизнес аналитик выступает в роли тестировщика
DSL.
Эволюция бизнес-аналитика при
использовании Drools
14. Waterfall:
Бизнес аналитик на все этапах выступает в роли
программиста, консультанта, тестировщика.
Эволюция бизнес-аналитика при
использовании Drools
21. Заключение
Благодаря Drools:
● Получили проект удобный для сопровождения
● Получили проект удобный (быстрая и понятная
настройка) для изменения поведения системы без
перекомпиляции (runtime).
● Значительно удешевили процесс разработки
● Ускорили выпуск новых фич.
22. Заключение
Что бы использовать Drools:
● Бизнес-аналитик должен быть дополнительно
технически подкован.
● На самом-самом базовом уровне BA должен знать
язык Java.
● Желательно BA иметь опыт в работе с DSL и
понимании state machine.