Описание бизнес-правил и дополнительных требований в вариантах использования (use cases)
Все прекрасно знают, что варианты использования (ВИ) отлично описывают функциональные требования, но что делать с не функциональными требованиями? Кто-то пишет их отдельно, кто-то включает в текст спецификации ВИ, кто-то про них вообще забывает. В докладе будет рассказано про основные подходы описания бизнес-правил в ВИ:
* Отделенные бизнес-правила
* Размазанные бизнес-правила
* Привязанные бизнес-правила
* Группированные бизнес-правила
* Решения вместо бизнес-правил
* Как делаю я?
2. 2
Обучение и консалтинг от экспертов Software Engineering
Кто я?
Разработчик и сисадмин
Аналитик
Ведущий аналитик
Руководитель аналитической группы
Менеджер проектов
CIO
Идеолог uml2.ru
Тренер
Консультант
Докладчик на многих конференциях
bas@uml2.ru
http://uml2.ru
http://blogs.uml2.ru/blogs/bas
http://baikin.moikrug.ru
Александр Байкин
3. 3
Обучение и консалтинг от экспертов Software Engineering
О чем это я?
Про что обычно забывают?
Описание бизнес-правил
Описание дополнительных требований
Описание сложной логики
Описание GUI
Как я это все описываю?
5. 5
Обучение и консалтинг от экспертов Software Engineering
Способы описания БПр
Не описывать бизнес-правила
Несвязанные бизнес-правила
Размазанные бизнес-правила
Ссылочные бизнес-правила
Как делаю я?
6. 6
Обучение и консалтинг от экспертов Software Engineering
Несвязанные бизнес-правила
Название: Получить наличные через банкомат.
…………………………………………………………..
Основной поток событий:
1. Клиент вставляет карту в банкомат, вводит ПИН-код и необходимую сумму.
2. Банкомат проверяет клиента
3. Банкомат определяет остаток средств на счете.
4. Банкомат списывает сумму со счѐта.
5. Банкомат выдает деньги.
6. Банкомат выдает чек.
……………………………………………………………
Бизнес-правила:
1. Клиент и его карта должны быть не заблокированными.
2. ПИН-код должен быть 4 символа.
3. Запрашиваемая сумма должна быть не больше суммы на банковском счѐте
Раздел описания ВИ
7. 7
Обучение и консалтинг от экспертов Software Engineering
Размазанные бизнес-правила
Название: Получить наличные через банкомат.
…………………………………………………………..
Основной поток событий:
1. Клиент вставляет карту в банкомат, вводит ПИН-код и необходимую сумму.
2. Банкомат проверяет клиента
Бизнес-правило: Клиент и его карта должны быть не заблокированными.
Бизнес-правило: ПИН-код должен быть 4 символа.
3. Банкомат определяет остаток средств на счете.
Бизнес-правило: Запрашиваемая сумма должна быть не больше суммы
на банковском счѐте
4. Банкомат списывает сумму со счѐта.
5. Банкомат выдает деньги.
6. Банкомат выдает чек.
……………………………………………………………
Раздел описания ВИ
8. 8
Обучение и консалтинг от экспертов Software Engineering
Ссылочные бизнес-правила
Название: Получить наличные через банкомат.
…………………………………………………………..
Основной поток событий:
1. Клиент вставляет карту в банкомат, вводит ПИН-код и необходимую сумму.
2. Банкомат проверяет клиента, см. БПр №8 и №9.
3. Банкомат определяет остаток средств на счете, см. БПр №22.
4. Банкомат списывает сумму со счѐта.
5. Банкомат выдает деньги.
6. Банкомат выдает чек.
Бизнес-правила:
1. Бизнес-правило №8: Клиент и его карта должны быть не заблокированными.
2. Бизнес-правило №9: ПИН-код должен быть 4 символа.
3. Бизнес-правило №22: Запрашиваемая сумма должна быть не больше суммы
на банковском счѐте
Раздел описания ВИ
Раздел описания БПр
9. 9
Обучение и консалтинг от экспертов Software Engineering
Как я описываю БПр
БПр в теле
спецификации ВИ
БПр в отдельном
разделе
БПр в одном ВИ БПр в нескольких ВИ
10. 10
Обучение и консалтинг от экспертов Software Engineering
Функциональные Тр вне ВИ
Выделить в отдельный
раздел
Сделать ссылку на шаге ВИ
11. 11
Обучение и консалтинг от экспертов Software Engineering
Сложная логика, способы описания
Отдельное
требование
12. 12
Обучение и консалтинг от экспертов Software Engineering
GUI в ВИ
Не надо включать GUI в ВИ
(с) К. Вигерс
Мне ничего непонятно без GUI в ВИ
(с) Разработчики
14. 14
Обучение и консалтинг от экспертов Software Engineering
Итого
Бизнес-правила
– БПр в подразделе сценария
– БПр в отдельном разделе
– Ссылка из потока ВИ
Дополнительные требования
– Дополнительные требования в отдельном разделе
Сложная логика
– Сложная логика в отдельном требовании
– Ссылка из потока ВИ
GUI
– GUI в отдельном разделе
– Ссылка из потока ВИ
15. 15
Обучение и консалтинг от экспертов Software Engineering
Спасибо
Вам за внимание
Барбара вон Халле и Лэрри Голдберг за
статью о БПр
http://www.modernanalyst.com/Resources/Articl
es/tabid/115/Default.aspx?ArticleType=ArticleVie
w&ArticleID=1442
Павлу Сафину за перевод статьи о бизнес-
правилах
16. 16
Обучение и консалтинг от экспертов Software Engineering
Читайте книги
У. Леффингуэлл, Принципы работы с требованиями к
программному обеспечению. Унифицированный подход
А. Коберн, Современные методы описания
функциональных требований к системам
A. Cockburn «Patterns of Effective Use Cases»
A. Cockburn «Writing Effective Use Cases»
G. Övergaard, K. Palmkvist «Use Cases Patterns and
Blueprints»
I. Jacobson, Pan-Wei Ng. «Aspect-Oriented Software
Development with Use Cases»