2. Who am I?
Experience
7 Years with PHP
5 Years with Zend Framework
3 Years with Magento
4 Years as Team Lead
Interests
Virtual environment (Vagrant, Docker)
Continuous Integration (TeamCity)
QA
eGov, BPMN
JavaScript Frameworks
3. Контекст
Business oriented tasks
Enterprise level of Complexity
Team development
Support
Quality and Documentation
4. Бізнес Процеси
Процесне управління -
філософія управління, яка розглядає
підприємство як сукупність робіт,
згрупованих для виготовлення відповідних
типів товарів та послуг для внутрішніх і
зовнішніх споживачів.
5. Бізнес Процеси
В якості опису бізнес процесів
використовуються блок-схеми.
Найбільш поширеною серед яких є UML
(Unified Modeling Language).
6. Бізнес Процеси та UML
Найбільш корисними є:
Activity Diagram
Sequence Diagram
7. BPMN, WFM, Petri Nets etc.
Основна задача моделювання бізнес
процесів – це отримання знань про те, що
правильна дія виконується правильною
особою/машиною в правильний час.
8. Workflow Diagrams / Models.
Workflow – це модель, що описує
послідовність виконання задач для
досягнення певного результату.
Основна мета – це оптимізація бізнес
процесів.
9. Task vs Case
Task – задача або логічна сукупність
дій спрямована на досягнення певного
результату всередині бізнес процесу.
Case – варіант виконання задач. Case
Routing залежить від розгалужень
(conditions) всередині workflow.
Чим більше cases тим складніший workflow.
11. Ресурси. ACL.
Кожна задача потребує ресурсів для
виконання. Це можуть бути як машини так і
люди.
Ресурси мають 2 значимих аспекти:
функціональний (роль), структурний (посада)
Чим складніша система ролей та кількість
ресурсів різних типів тим складніший Workflow.
12. Side affects
Формально cases (варіанти виконання
задач) не повинні перетинатись та впливати
один на одного, однак це відбувається через
спільні ресурси та данні.
Спільні ресурси та данні ускладнюють
виконання задач.
13. Triggering & Activity
Triggering – зовнішня умова, що запускає
задачу. Це може бути ручний запуск, запуск по
таймеру або ж автоматичний запуск.
Після запуску задача (Task) починає
виконуватись за певним варіантом виконання
(Case Routing).
15. Транзакції. ACID.
Транзакції – логічна сукупність дій яка
переводить об’єкт з одного стану в інший.
ACID - це набір властивостей, що гарантують
надійну роботу транзакцій:
- атомарність,
- узгодженість,
- ізольованість,
- довговічність.