Бизнес-правила
В этом уроке вы поподробнее узнаете, откуда берутся бизнес-правила, какие типы бизнес-правил бывают и как правильно их документировать.
В предыдущих уроках вы успели изучить разные типы требований, узнали, что такое бизнес-правила — познакомились с несколькими примерами, узнали, почему они так важны и на что они влияют. Сейчас предлагаем вспомнить, что входит в бизнес-правила.
К бизнес-правилам относятся корпоративная политика, правительственные постановления, отраслевые стандарты, правила, определяющие или ограничивающие некоторые стороны бизнес-процессов.
Важно не путать бизнес-правила с бизнес-требованиями.
Кто устанавливает бизнес-правила и где их искать
Несмотря на то, что самый простой способ узнать что-либо — задать вопрос, вряд ли заинтересованные лица смогут чётко ответить вам, какие бизнес-правила у них приняты. Но, выявляя требования, можно уточнить, какие обоснования и ограничения для них существуют. Скорее всего, определять это будут именно бизнес-правила.
Главное — задокументировать новые бизнес-правила после того, как вы их создали. Ещё нужно попросить компетентных сотрудников подтвердить их корректность и при необходимости восполнить недостающие данные.
Источниками бизнес-правил также могут быть:
- Общие знания. Обычно их можно получить от сотрудников, которые давно работают в компании и знают особенности всех процессов. Таким образом, бизнес-правила могут создаваться и в процессе работы.
- Существующие системы. Можно посмотреть программные коды уже существующих систем и изучить, как они устроены в целом, чтобы понять, какие бизнес-правила к ним применяются.
- Документация. Выявить бизнес-правила поможет и анализ документации из предыдущих проектов.
- Нормативные правовые акты — непосредственный источник, который устанавливает бизнес-правила, применяемые к деятельности компании и, следовательно, разрабатываемому проекту.
- Моделирование бизнес-процессов. При составлении моделей требований можно определить правила, которые влияют на каждый этап бизнес-процесса.
Выявляя требования к новому продукту, вы вывели несколько бизнес-правил, но не зафиксировали, откуда они пришли. Сопоставьте бизнес-правила с их источниками.
Если пользователь не отвечает на заявку более двух рабочих дней, она переводится на его руководителя.
Общеизвестные знания сотрудников
Договорённость между сотрудниками определённого отдела.
Банки должны обновлять данные о клиентах раз в год.
Законодательство
По закону Российской Федерации банкам необходимо обновлять данные о клиентах.
Данные о заказах клиентов должны храниться в зашифрованном виде.
Политика безопасности компании
Служба безопасности компании на корпоративном уровне устанавливает правила хранения информации о заказах.
Типы бизнес-правил
Большинство бизнес-правил можно подразделить на пять типов:
- Факты
- Ограничения
- Активаторы операций
- Вычисления
- Выводы
Факты
Фактами среди бизнес-правил называют все достоверные утверждения о бизнесе, которые описывают связи и отношения между важными бизнес-терминами.
Например:
- Банковская карта привязана к счёту.
- Клиент оплачивает доставку каждого заказа из интернет-магазина.
В компании может быть очень много фактов. Собирайте факты, которые связаны с используемыми вами данными, или те, что не выходят за границы вашего проекта.
Ограничения
К ограничениям относятся политика компании, нормативные правовые акты, отраслевые стандарты и прочее. Ограничения определяют, какие операции не может выполнять система или её пользователи. Важно учитывать, что ограничения влияют на функциональность продукта.
Как понять, что вы имеете дело с ограничивающим бизнес-правилом? В его описании вы встретите слова:
- «должен»
- «не должен»
- «может»
- «не может»
- «только»
Примеры ограничений в бизнес-правилах:
- Заказ должен содержать не менее одной позиции (политика компании).
- Ипотека может быть выдана только клиентам, достигшим восемнадцати лет и старше (российский закон).
Активаторы операций
Активаторы операций при определённых условиях запускают какое-либо действие или изменение.
Активаторы операций обычно описываются так: «Если [выполняется некое условие или наступило определённое событие], то [что-то произойдёт]».
Примеры активаторов операций:
- Если истёк срок годности товара, необходимо убрать его из списка доступных для заказа.
- Если клиент заказал книгу автора, написавшего несколько книг, то перед оформлением заказа нужно предложить клиенту приобрести другие книги того же автора.
Вычисления
Вычисления преобразуют имеющиеся данные в новую информацию с помощью математических формул и алгоритмов. Многие вычисления определяют независящие от компании правила, например законы (налог на добавленную стоимость).
Вычисления, в отличие от остальных типов бизнес-правил, можно рассматривать в качестве требований к ПО.
Пример вычислений:
- В России размер пошлины на доставку заказов из-за границы стоимостью свыше 200 € составляет 15% от суммы превышения, но не меньше 2 €.
- Цена товара снижается на 10% при заказе от 3 до 5 единиц, на 20% — при заказе от 5 до 10 единиц и на 30% — при заказе свыше 11 единиц.
Вычисление может включать в себя множество элементов. Чтобы упростить правила, не объединяйте множество деталей. Например, важное для компании ограничение: согласно Налоговому кодексу России, в качестве подоходного налога у резидентов страны из зарплаты удерживается 13%, у нерезидентов — 30%. Это бизнес-правило проще сформулировать в двух частях:
- У сотрудников-резидентов России в качестве подоходного налога удерживается 13% зарплаты.
- У сотрудников-нерезидентов России в качестве подоходного налога удерживается 30% зарплаты.
Выводы
Выводы — логический итог, который можно сделать на основе фактов или вычислений.
По формулировкам выводы похожи на активаторы операций — они также чаще всего записываются по формуле «если <…> то». При этом вторая часть вывода (та, что начинается с «то») содержит факт или предположение, а не призыв к действию.
Примеры выводов:
- Если интернет-магазин не может доставить заказанный товар в течение пяти дней с момента оформления заказа, то заказ считается невыполненным.
- Если клиент не внёс вовремя платёж по кредиту, то он считается должником.
Вы системный аналитик и участвуете в разработке сайта для новой авиакомпании. При выявлении требований удалось установить ряд бизнес-правил. Определите тип каждого из них.
В авиабилете указаны аэропорты вылета и прилёта.
Факт
Достоверное утверждение об информации, указанной в авиабилете.
Пассажир, пролетевший меньше 25 тысяч миль, получает скидку 10%. Пассажир, который пролетел больше 25 тысяч миль, — скидку 20%.
Вычисления
Вычисления скидки для пассажира.
Если пассажир купил невозвратный билет, то он не может его вернуть.
Вывод
Вывод, используется конструкция если [указано определённое условие], то [указан определённый факт].
Если пассажир купил билет с открытой датой, то он может выбрать любой день вылета.
Активатор операции
Активатор операции, используется конструкция: если [указано определённое условие], то [следует определённое действие].
Пассажир самолёта не может провозить в ручной клади жидкости в упаковке более 100 мл.
Ограничение
Ограничение, так как в описании используется словосочетание «не может».
Документирование бизнес-правил
Как вы уже знаете из предыдущих уроков, бизнес-правила находятся за пределами ПО и не включаются в спецификацию требований. Поэтому для их хранения обычно создают каталог правил. Поскольку бизнес-правила влияют на требования для всех разработок в компании, следует управлять этим каталогом на корпоративном уровне, следить за его актуальностью и дополнять новыми правилами, которые вы узнали в процессе работы.
Чтобы упростить хранение бизнес-правил, для их записи используют специальные шаблоны. Выглядеть это может так:
- Поле «Идентификатор» содержит уникальный номер. С его помощью проще отслеживать применение конкретного правила в спецификации требований.
- Поле «Определение правила» содержит само правило.
- Поле «Тип правила» отображает тип бизнес-правила (факт, ограничение, вычисление, активатор операции, вывод).
- В поле «Статическое или динамическое» указывается, насколько вероятно, что правило изменится с течением времени.
Некоторые правила (например, коммерческие условия компании) могут меняться с течением времени, и тут всё зависит от договорённостей. Какие-то правила будут статичными для вашего ПО, а закон, который обновляется раз в пару лет, будет динамичным. Учитывать это — важно для разработчиков. При динамических изменениях они могут сделать код более гибким для того, чтобы потом было проще вносить изменения.
- Поле «Источник» содержит информацию о том, откуда пришло это правило.
Связь бизнес-правил и требований к ПО
Бизнес-правила могут ограничивать работу в компании, следовательно, и работу связанной с ней системы, а значит, бизнес-правила могут быть источником различных требований.
Например, бизнес-правило, которое вывели из программы лояльности компании — «Покупатель, который приобрёл товары на сумму более 10 тыс. рублей, получает скидку 15% на дальнейшие покупки», — влечёт за собой разработку таких функциональных требований:
- Система должна вести список всех покупок клиента.
- Система должна суммировать все покупки клиента и, если сумма покупок превышает 10 тыс. рублей, отмечать клиента как постоянного покупателя.
- Система должна проверять, является ли пользователь постоянным клиентом; если является, нужно автоматически вычитать скидку 15% из общей суммы заказа в корзине пользователя.
Так одно, казалось бы, простое бизнес-правило влияет на требования к системе.
Итоги
В этом уроке вы узнали, откуда берутся бизнес-правила и какими они бывают.
Источниками бизнес-правил могут быть:
- Общие знания
- Существующие системы
- Документация
- Нормативно-правовые акты
- Моделирование бизнес-процессов
Бизнес-правила делятся на пять типов:
- Факты
- Ограничения
- Активаторы операций
- Выводы
- Вычисления
Зачастую системный аналитик узнаёт о существующих бизнес-правилах на этапе выявления требований. Для документирования бизнес-правил создаётся каталог правил с заданным шаблоном. Благодаря ему правила легче хранить и использовать. Каталог правил стоит вести на корпоративном уровне, то есть применять его для всех проектов компании, а не для какого-то отдельного.