Техники Руководство BABOK v3, 10.11
Моделирование понятий
Коротко Модель понятий упорядочивает деловую лексику предметной области: то, о чём говорят люди, и факты, которые связывают эти понятия. Она даёт заинтересованным сторонам и команде, создающей решение, единый однозначный язык для требований, правил и решений.
По материалам: IIBA, Руководство BABOK® v3, техника 10.11 «Моделирование понятий»; Watermark Learning, BABOK v3 Study Tables (2016), техника 10.11.
На этой странице
Что это#
Модель понятий (concept model) — это картина того, как бизнес говорит и мыслит, а не того, как база данных хранит данные. Руководство BABOK® описывает три вида строительных блоков:
- Понятия-существительные (noun concepts) — то, чему бизнесу нужно дать имя: клиент, бронирование, ремонтный заказ, запчасть.
- Понятия-глаголы (verb concepts) — короткие утверждения-факты, которые связывают понятия-существительные: клиент делает бронирование, позиция ремонта использует запчасть. Каждое такое утверждение эксперт бизнеса может подтвердить как истинное или отвергнуть как ложное.
- Другие связи — категории и классификации (клиент без записи — разновидность клиента), связи «целое — часть» (ремонтный заказ включает позиции ремонта) и роли (человек, выступающий как клиент или как механик).
Обычно модель рисуют как прямоугольники (понятия-существительные), соединённые подписанными линиями (понятия-глаголы), а за моделью стоит глоссарий с определениями. Каждая линия читается как предложение, поэтому представители бизнеса могут проверить модель, не изучая техническую нотацию.
Руководство BABOK применяет технику в трёх задачах: «Проведение выявления» (фиксация ключевых терминов и связей между ними), «Анализ текущего состояния» (описание лексики предметной области бизнеса) и «Спецификация и моделирование требований» (определение терминов, важных для изменения).
Когда применять#
Применяйте модель понятий, когда:
- люди называют одним словом разные вещи или разными словами — одну и ту же;
- в работе много правил и решений (ценообразование, право на услугу, соответствие нормативным требованиям), где каждое правило зависит от точных терминов;
- нужна лексика, которая не наследует искажений существующей системы или структуры базы данных;
- несколько команд или систем должны пользоваться общими бизнес-терминами.
Не применяйте её, когда достаточно простого глоссария: в небольшой предметной области, где термины почти не связаны друг с другом. Если для разработки уже нужны атрибуты, ключи и кардинальности, переходите к моделированию данных. Часто одно следует за другим: сначала модель понятий, потом модель данных.
Помните об ограничениях. Руководство BABOK предупреждает, что общая деловая лексика может породить нереалистичные ожидания о том, как быстро удастся интегрировать системы; что такой стиль моделирования незнаком многим заинтересованным сторонам и требует сосредоточенности и навыка; и что лексика окупается, только если люди могут сверяться с терминами прямо по ходу работы, а для этого обычно нужна поддержка инструментов.
Как это делать#
- Соберите кандидатов в термины. Выпишите существительные из интервью, документов, форм, экранов, отчётов и существующих правил. Отмечайте, откуда взят каждый термин.
- Разберитесь с синонимами и омонимами. Объедините слова с одинаковым смыслом и выберите один предпочтительный термин. Разделите слово, которое значит разное для разных групп.
- Дайте определение каждому понятию-существительному — одним предложением, понятным новичку, — и занесите его в глоссарий.
- Свяжите понятия глагольными фразами. Для каждой связанной пары напишите простое утверждение-факт («механик назначен на ремонтный заказ»). Прочитайте его в обоих направлениях и убедитесь, что оно имеет смысл.
- Добавляйте категории, связи «целое — часть» и роли только там, где от них зависят правила или решения.
- Нарисуйте модель и держите её в границах изменения.
- Проверьте модель с экспертами предметной области, читая факты вслух. Спрашивайте: «Это всегда так? Какие бывают исключения?»
- Пользуйтесь моделью. Пишите требования, бизнес-правила и критерии приёмки только в её терминах и обновляйте модель, когда меняется бизнес.
Пример#
В «Мастерской», вымышленной сети из 12 веломастерских, которая планирует онлайн-запись, одно и то же сотрудники стойки приёма называют «заявкой», механики — «нарядом», а владелец — «ремонтным заказом». При этом словом «бронирование» называют и зарезервированное время, и сам ремонт.
Аналитик согласует предпочтительные термины с владельцем и управляющими мастерских, а затем рисует такую модель:
Показать текстом
Клиент --делает--> Бронирование Бронирование --резервирует--> Временной слот --относится к--> Мастерская Бронирование --становится--> Ремонтный заказ (когда велосипед сдан в мастерскую) Ремонтный заказ --выполняется для--> Велосипед --принадлежит--> Клиент Механик --назначен на--> Ремонтный заказ Ремонтный заказ --включает--> Позиция ремонта (целое — часть) Позиция ремонта --использует--> Запчасть --поставляется--> Поставщик Ремонтный заказ --имеет--> Статус ремонта Клиент без записи, Зарегистрированный клиент --разновидность--> Клиент
Слова «заявка» и «наряд» записываются в глоссарий как синонимы ремонтного заказа. Правило вроде «бронирование становится ремонтным заказом, только когда клиент сдаёт велосипед» теперь можно сформулировать без двусмысленности, а требования к уведомлениям ссылаются на статус ремонта, а не на ту подпись, которая случайно оказалась на экране.
Частые ошибки#
- Рисуют базу данных вместо лексики → не включайте атрибуты, ключи и технические таблицы; моделируйте то, что говорит бизнес.
- Повсюду расплывчатые глаголы вроде «имеет» или «связан с» → используйте конкретные глаголы, которые эксперт может подтвердить или отвергнуть.
- Моделируют всё предприятие → ограничьте модель понятиями, которых касается изменение.
- Прямоугольники без определений → у каждого понятия-существительного должна быть статья в глоссарии.
- Строят модель в одиночку → проверяйте её, читая факты вслух вместе с экспертами; ранние разногласия — важный результат, а не помеха.
- Модель устаревает → назначьте ей владельца и обновляйте её, когда меняются продукты, правила или нормативные требования.
Чек-лист#
- У каждого понятия-существительного одно предпочтительное название и определение в одно предложение.
- Синонимы записаны как альтернативные названия, а не как отдельные понятия.
- На каждой линии есть глагольная фраза, которая читается как предложение.
- Категории, связи «целое — часть» и роли показаны там, где от них зависят правила.
- Эксперты предметной области проверили факты.
- Требования и правила используют только термины из модели.
- У модели есть владелец и дата последней проверки.
Источники и что почитать#
- IIBA. A Guide to the Business Analysis Body of Knowledge (BABOK® Guide), version 3. International Institute of Business Analysis, 2015. Рус. изд.: Руководство к своду знаний по бизнес-анализу (Руководство BABOK®), версия 3.0. Техника 10.11 «Моделирование понятий».
- Watermark Learning. BABOK v3 Study Tables. 2016 (учебное пособие к Руководству BABOK). Техника 10.11.