SlideShare a Scribd company logo
1 of 24
Особенности Системного
Анализа особо крупных
проектов построенных на
базе Business Rule Engine
«Drools»
Юрий Русович
www.DPI.Solutions; ISSoft  Coherent Solutions
Немного о себе
Юрий Русович
Более 8 лет опыта в разработке
● Разработчик в ISSoft  Coherent Solutions
● Консультант в DPI Solutions  Активист
www.COMAQA.BY
● Проекты в прошлом
○ ПО для аэропортов.
○ Системы связи для спец служб.
○ Система воспроизведения записанной речи для
палаты представителей
Drools – основные понятия
Процессор бизнес-правил
(Business Rule Engine) - это
программное обеспечение,
которое выполняет одно или
несколько конфигурируемых,
настраиваемых бизнес-правил
в ядре системы.
Мотивы использования Business Rule Engine:
1. Облегчить поддержку.
2. Упростить дальнейшее развитие приложения
благодаря упрощению компонентов.
3. Изолировать часть логики от исходников.
4. Позволить настраивать систему не техническим
специалистам.
Drools – основные понятия
Drools – основные понятия
Drools – это процессор правил с открытым кодом,
написанный на Java.
Благодаря Drools бизнес-правила приложения можно
описывать декларативным образом, используя простой
для изучения и понимания язык (DSL)
Domain-Specific Language (DSL) это:
● Язык, предназначенный для решения конкретных
задач в узкой области.
● Является весьма простым, что позволяет им
пользоваться не техническим специалистам.
● Наиболее известные DSL: HTML, XML, SQL и т.д.
Drools – основные понятия
Синтаксис DSL Drools
rule "name"
attributes
when
LHS
then
RHS
end
Сравнительный анализ
общепринятых вариантов
использования Drools
● DSL используется исключительно техническими
специалистами. Создали самостоятельно систему,
выделили правила, сами же ими и пользуются.
● Бизнес-аналитик формулирует правила и их
использует.
● Бизнес-аналитик выдвигает требования, а
технический специалист предлагает DSL. BA и
технические специалисты работают в тандеме.
Agile и Waterfall проекты
основанные на Drools,
особенности работы бизнес-
аналитика
Waterfall
● Формализованный домен
● “Компетентный” заказчик
● Компетентные технические спецы
● «Компетентный» BA
Agile и Waterfall проекты
основанные на Drools,
особенности работы бизнес-
аналитика
Agile
● Неопределенный домен
● “Некомпетентный” заказчик
● Некомпетентные технические спецы
● «Некомпетентный» BA
Как Бизнес-Аналитику работать с
Drools, tips & trics
Советы:
● Работать итерационно
● Подключать бизнес как можно раньше
Варианты организации сбора и
формализации системных
требований при работе с Drools
Можно сразу писать требования на DSL.
Cбор и формализация системных требований
происходит на этом DSL
Agile:
● Со временем грамматика фиксируется.
● Ядро стабилизируется.
Бизнес аналитик занимается иcпользованием DSL и
формирует Backlog item в терминах DSL.
Бизнес аналитик выступает в роли тестировщика
DSL.
Эволюция бизнес-аналитика при
использовании Drools
Waterfall:
Бизнес аналитик на все этапах выступает в роли
программиста, консультанта, тестировщика.
Эволюция бизнес-аналитика при
использовании Drools
Примеры
Файл правил “rnd.drl”
Примеры
Файл правил “rnd.drl”
Примеры
Файл правил “rnd.drl”
Примеры
Примеры
Примеры
Файл правил “sbm.drl”
Заключение
Благодаря Drools:
● Получили проект удобный для сопровождения
● Получили проект удобный (быстрая и понятная
настройка) для изменения поведения системы без
перекомпиляции (runtime).
● Значительно удешевили процесс разработки
● Ускорили выпуск новых фич.
Заключение
Что бы использовать Drools:
● Бизнес-аналитик должен быть дополнительно
технически подкован.
● На самом-самом базовом уровне BA должен знать
язык Java.
● Желательно BA иметь опыт в работе с DSL и
понимании state machine.
Ссылки
1. http://docs.jboss.org/drools/release/5.2.0.Final/drools-
expert-docs/html/index.html
2. http://www.mastertheboss.com/jboss-jbpm/drools/what-is-
a-rule-engine
3. http://a4academics.com/tutorials/58-drools-tutorial-and-
example/495-procedure-to-install-drools-plugin-in-eclipse
4. “Domain Specific Languages” Martin Fowler
5. “Pattern-Oriented Software Architecture Volume 1 - A
System Of Patterns”
Спасибо! Вопросы?
Русович Юрий
rusovich@dpi.solutions
ISSoftCoherent Solutions
http://www.issoft.by
DPI Solutions
www.dpi.solutions
Belarus QA Automation Community
www.comaqa.by

More Related Content

Viewers also liked

Navigation map factory by Alexey Klimenko
Navigation map factory by Alexey KlimenkoNavigation map factory by Alexey Klimenko
Navigation map factory by Alexey Klimenko
Alex Tumanoff
 
Rule Engine: Drools .Net
Rule Engine: Drools .NetRule Engine: Drools .Net
Rule Engine: Drools .Net
Guo Albert
 

Viewers also liked (16)

Navigation map factory by Alexey Klimenko
Navigation map factory by Alexey KlimenkoNavigation map factory by Alexey Klimenko
Navigation map factory by Alexey Klimenko
 
Rule Engine: Drools .Net
Rule Engine: Drools .NetRule Engine: Drools .Net
Rule Engine: Drools .Net
 
Использование html-прототипов для реверсивного анализа требований: ЗА и ПРОТИВ
Использование html-прототипов для реверсивного анализа требований: ЗА и ПРОТИВИспользование html-прототипов для реверсивного анализа требований: ЗА и ПРОТИВ
Использование html-прототипов для реверсивного анализа требований: ЗА и ПРОТИВ
 
Управление функциональными и интерфейсными требованиями в смежных системах
Управление функциональными и интерфейсными требованиями в смежных системахУправление функциональными и интерфейсными требованиями в смежных системах
Управление функциональными и интерфейсными требованиями в смежных системах
 
Особенности работы с требованиями при доработке продукта для заказчика
Особенности работы с требованиями при доработке продукта для заказчикаОсобенности работы с требованиями при доработке продукта для заказчика
Особенности работы с требованиями при доработке продукта для заказчика
 
Особенности анализа в проектах по разработке сервисов
Особенности анализа в проектах по разработке сервисовОсобенности анализа в проектах по разработке сервисов
Особенности анализа в проектах по разработке сервисов
 
Аналитик-первопроходец - проблемы и решения
Аналитик-первопроходец - проблемы и решенияАналитик-первопроходец - проблемы и решения
Аналитик-первопроходец - проблемы и решения
 
Вместо тысячи слов. Экологичные способы решения аналитических задач с помощью...
Вместо тысячи слов. Экологичные способы решения аналитических задач с помощью...Вместо тысячи слов. Экологичные способы решения аналитических задач с помощью...
Вместо тысячи слов. Экологичные способы решения аналитических задач с помощью...
 
Аналитик как золотоискатель: работа с требованиями при заказной разработке
Аналитик как золотоискатель: работа с требованиями при заказной разработкеАналитик как золотоискатель: работа с требованиями при заказной разработке
Аналитик как золотоискатель: работа с требованиями при заказной разработке
 
Аналитика в аналитике
Аналитика в аналитикеАналитика в аналитике
Аналитика в аналитике
 
Как задавать требования к качеству ПО в цифрах
Как задавать требования к качеству ПО в цифрахКак задавать требования к качеству ПО в цифрах
Как задавать требования к качеству ПО в цифрах
 
Особенности аналитики сервисных компаний
Особенности аналитики сервисных компанийОсобенности аналитики сервисных компаний
Особенности аналитики сервисных компаний
 
Особенности разработки требований для мобильных приложений
Особенности разработки требований для мобильных приложенийОсобенности разработки требований для мобильных приложений
Особенности разработки требований для мобильных приложений
 
Классические ошибки при разработке проекта
Классические ошибки при разработке проектаКлассические ошибки при разработке проекта
Классические ошибки при разработке проекта
 
Rule Engine & Drools
Rule Engine & DroolsRule Engine & Drools
Rule Engine & Drools
 
Business Analysis Techniques
Business Analysis TechniquesBusiness Analysis Techniques
Business Analysis Techniques
 

Similar to Особенности Системного Анализа особо крупных проектов построенных на базе Business Rule Engine «Drools»

разработка собственной Agile методологии для управления крупными проектами
разработка собственной Agile методологии для управления крупными проектамиразработка собственной Agile методологии для управления крупными проектами
разработка собственной Agile методологии для управления крупными проектами
SQALab
 
О компании ЗАО Золотое сечение в ИТ (2016 февраль)
О компании ЗАО Золотое сечение в ИТ (2016 февраль)О компании ЗАО Золотое сечение в ИТ (2016 февраль)
О компании ЗАО Золотое сечение в ИТ (2016 февраль)
Igor Mavrin
 
обзор Siebel mobile
обзор Siebel mobileобзор Siebel mobile
обзор Siebel mobile
crm2life
 
Разработка автоматизированной системы компоновки проектной документации и обу...
Разработка автоматизированной системы компоновки проектной документации и обу...Разработка автоматизированной системы компоновки проектной документации и обу...
Разработка автоматизированной системы компоновки проектной документации и обу...
Andrew Chuprina
 
Docsvision 5 планы выпуска дополнительных модулей и приложений
Docsvision 5 планы выпуска дополнительных модулей и приложенийDocsvision 5 планы выпуска дополнительных модулей и приложений
Docsvision 5 планы выпуска дополнительных модулей и приложений
Docsvision
 
Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5
rit2010
 
Ukraine Consulting
Ukraine ConsultingUkraine Consulting
Ukraine Consulting
pgoloborodko
 

Similar to Особенности Системного Анализа особо крупных проектов построенных на базе Business Rule Engine «Drools» (20)

разработка собственной Agile методологии для управления крупными проектами
разработка собственной Agile методологии для управления крупными проектамиразработка собственной Agile методологии для управления крупными проектами
разработка собственной Agile методологии для управления крупными проектами
 
Никита Ремизов - Введение в разработку ТЗ
Никита Ремизов - Введение в разработку ТЗНикита Ремизов - Введение в разработку ТЗ
Никита Ремизов - Введение в разработку ТЗ
 
Soa12c launch 2 features cr
Soa12c launch 2 features crSoa12c launch 2 features cr
Soa12c launch 2 features cr
 
инструментальные средства управления проектами
инструментальные средства управления проектамиинструментальные средства управления проектами
инструментальные средства управления проектами
 
Внедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bankВнедрение гибкой методологии управления проектами в Danske bank
Внедрение гибкой методологии управления проектами в Danske bank
 
Реализация bi-системы собственными силами или как снизить стоимость проекта. ...
Реализация bi-системы собственными силами или как снизить стоимость проекта. ...Реализация bi-системы собственными силами или как снизить стоимость проекта. ...
Реализация bi-системы собственными силами или как снизить стоимость проекта. ...
 
О компании ЗАО Золотое сечение в ИТ (2016 февраль)
О компании ЗАО Золотое сечение в ИТ (2016 февраль)О компании ЗАО Золотое сечение в ИТ (2016 февраль)
О компании ЗАО Золотое сечение в ИТ (2016 февраль)
 
Решения для оптимизации работы приложений
Решения для оптимизации работы приложенийРешения для оптимизации работы приложений
Решения для оптимизации работы приложений
 
обзор Siebel mobile
обзор Siebel mobileобзор Siebel mobile
обзор Siebel mobile
 
Разработка автоматизированной системы компоновки проектной документации и обу...
Разработка автоматизированной системы компоновки проектной документации и обу...Разработка автоматизированной системы компоновки проектной документации и обу...
Разработка автоматизированной системы компоновки проектной документации и обу...
 
Docsvision 5 планы выпуска дополнительных модулей и приложений
Docsvision 5 планы выпуска дополнительных модулей и приложенийDocsvision 5 планы выпуска дополнительных модулей и приложений
Docsvision 5 планы выпуска дополнительных модулей и приложений
 
OEM 12c релиз 3 — новые возможности и перспективы
OEM 12c релиз 3 — новые возможности и перспективыOEM 12c релиз 3 — новые возможности и перспективы
OEM 12c релиз 3 — новые возможности и перспективы
 
Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5Anatol Filin Pragmatic Documentation 0 5
Anatol Filin Pragmatic Documentation 0 5
 
Автоматизация бизнес-процессов и документооборота компании
Автоматизация бизнес-процессов и документооборота компанииАвтоматизация бизнес-процессов и документооборота компании
Автоматизация бизнес-процессов и документооборота компании
 
Говорим о СУБД языком HR
Говорим о СУБД языком HRГоворим о СУБД языком HR
Говорим о СУБД языком HR
 
Решения HPE для Автоматизации каталога услуг и процессов эксплуатации ИТ
Решения HPE для Автоматизации каталога услуг и процессов эксплуатации ИТРешения HPE для Автоматизации каталога услуг и процессов эксплуатации ИТ
Решения HPE для Автоматизации каталога услуг и процессов эксплуатации ИТ
 
Roles happy dev-2013-tsepkov
Roles happy dev-2013-tsepkovRoles happy dev-2013-tsepkov
Roles happy dev-2013-tsepkov
 
Обзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleОбзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов Oracle
 
Ukraine Consulting
Ukraine ConsultingUkraine Consulting
Ukraine Consulting
 
САПР и ГИС
САПР и ГИССАПР и ГИС
САПР и ГИС
 

More from SQALab

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к 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 и т.д.
  • 7. Синтаксис DSL Drools rule "name" attributes when LHS then RHS end
  • 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.
  • 23. Ссылки 1. http://docs.jboss.org/drools/release/5.2.0.Final/drools- expert-docs/html/index.html 2. http://www.mastertheboss.com/jboss-jbpm/drools/what-is- a-rule-engine 3. http://a4academics.com/tutorials/58-drools-tutorial-and- example/495-procedure-to-install-drools-plugin-in-eclipse 4. “Domain Specific Languages” Martin Fowler 5. “Pattern-Oriented Software Architecture Volume 1 - A System Of Patterns”
  • 24. Спасибо! Вопросы? Русович Юрий rusovich@dpi.solutions ISSoftCoherent Solutions http://www.issoft.by DPI Solutions www.dpi.solutions Belarus QA Automation Community www.comaqa.by