Техники Руководство BABOK v3, 10.12
Словарь данных
Коротко Словарь данных — согласованный справочник по каждому элементу данных решения: название, смысл, формат, допустимые значения и то, как элементы сочетаются друг с другом. Он не даёт разработчикам, тестировщикам, авторам отчётов и бизнес-пользователям понимать одно и то же поле по-разному.
По материалам: IIBA, Руководство BABOK® v3, техника 10.12 «Словарь данных»; Watermark Learning, BABOK v3 Study Tables (2016), техника 10.12; К. Вигерс, Дж. Битти, «Разработка требований к программному обеспечению», 3-е изд., гл. 9; учебные материалы по бизнес-анализу (шаблон словаря данных).
На этой странице
Что это#
Руководство BABOK® описывает словарь данных (data dictionary) как стандартный набор определений элементов данных — и по отдельности, и в сочетаниях. Его иногда называют репозиторием метаданных. Обычно он сопровождает диаграмму «сущность — связь» или другую модель данных: модель показывает структуру, а словарь объясняет каждую её часть.
Словарь охватывает два вида элементов:
- Примитивные элементы данных — отдельные значения, которые дальше не разбиваются. Для каждого записывают название, синонимы (если они есть), допустимые значения и их смысл, а также описание.
- Составные элементы данных — группы, собранные из других элементов. Это может быть последовательность (A, за которым следует B), повторение (A встречается несколько раз) или группа с необязательными частями.
Составные элементы легко читать в компактной записи, которая давно применяется в структурном анализе: = означает «состоит из», + — «и», { } обозначает повторяющуюся группу, а ( ) — необязательный элемент.
В Руководстве BABOK техника поддерживает задачу «Спецификация и моделирование требований»: в словаре фиксируют определения, связи, происхождение, формат и использование данных, которых касается изменение.
Вигерс и Битти выделяют бизнес-термины в отдельную категорию бизнес-правил и предлагают хранить их в словаре данных, так что словарь может стать опорой и для каталога бизнес-правил.
Когда применять#
Применяйте словарь, когда:
- с одними и теми же данными работают несколько человек: разрабатывают, тестируют, строят отчёты;
- вы переносите данные, интегрируете системы или строите отчёты — там, где одно неверно понятое поле портит результат;
- в полях есть кодированные значения (статусы, типы), смысл которых должен оставаться стабильным;
- нужны согласованные данные во всей организации.
Для одноразового прототипа словарь можно пропустить или свести к минимуму. Если бизнес ещё спорит о смысле слова, сначала договоритесь о нём с помощью глоссария или модели понятий.
Заложите затраты. Руководство BABOK отмечает, что словарь требует серьёзных усилий на создание и поддержку, без регулярного ухода устаревает и мало что даёт в масштабе предприятия, если метаданные не спроектированы с расчётом на разные способы использования.
Как это делать#
- Начните с того, что уже есть: модели данных, экранов, форм, отчётов и файлов интерфейсов.
- Составьте список элементов и сгруппируйте их по сущностям или экранам.
- Определите каждый примитивный элемент: название, синонимы, бизнес-описание, тип и формат, длину, допустимые значения и их смысл, значение по умолчанию, обязательность, откуда берётся значение и кто за него отвечает.
- Определите составные элементы в компактной записи, чтобы структура записей и сообщений стала явной.
- Свяжите элементы с правилами. Допустимые значения и правила вычисления часто сами являются бизнес-правилами; ссылайтесь на правило, а не повторяйте его.
- Проверьте словарь с владельцами данных, разработчиками и тестировщиками. Попросите тестировщиков поискать, как каждое определение можно понять неправильно.
- Опубликуйте одну версию в одном месте, поставьте её под управление изменениями и обновляйте при каждом изменении данных.
В учебных материалах есть полезный вариант, ориентированный на экраны: для каждого поля записывают раздел экрана, режим отображения (таблица или просмотр/редактирование), тип ввода, обязательность и источник значений. Так словарь превращается в готовое задание для проектирования интерфейса.
Пример#
«Мастерская», вымышленная сеть веломастерских, создаёт онлайн-запись. Часть её словаря:
Бронирование = ID бронирования + ID клиента + ID мастерской + Начало слота
+ Тип велосипеда + Канал связи + Статус бронирования + (Комментарий клиента)
Ремонтный заказ = ID ремонтного заказа + ID бронирования + {Позиция ремонта} + Статус ремонта
Позиция ремонта = ID запчасти + Количество + (Минуты работы)
| Элемент | Синонимы | Описание | Формат | Допустимые значения | Обязательный | Источник |
|---|---|---|---|---|---|---|
| ID бронирования | номер брони | Уникальный идентификатор бронирования | «B» + 7 цифр | — | Да | Система |
| Статус бронирования | — | Этап жизненного цикла бронирования | Код | REQUESTED, CONFIRMED, CANCELLED, NO_SHOW, CONVERTED (стало ремонтным заказом) | Да | Система |
| Начало слота | время записи | Начало зарезервированного слота по местному времени мастерской | Дата и время, шаг 30 минут | В часы работы выбранной мастерской | Да | Клиент |
| Тип велосипеда | — | Вид велосипеда; используется для оценки времени ремонта | Код | ROAD, MTB, CITY, E_BIKE, CARGO | Да | Клиент |
| Канал связи | — | Канал для сообщений о статусе ремонта | Код | SMS, EMAIL | Да | Клиент |
| Комментарий клиента | описание проблемы | Описание неисправности своими словами клиента | Текст, не более 500 символов | — | Нет | Клиент |
Когда позже команда спорит, считать ли отменённое бронирование неявкой, словарь уже даёт ответ: это разные коды с разным смыслом.
Частые ошибки#
- Определения повторяют название («Статус бронирования: статус бронирования») → объясните, что значит элемент, когда он меняется и кто его меняет.
- Коды без расшифровки → перечислите каждое допустимое значение с его бизнес-смыслом.
- Несколько копий в электронных таблицах → ведите одну контролируемую версию и давайте ссылку на неё.
- Описаны только столбцы базы данных → включите элементы экранов, отчётов и сообщений интерфейсов.
- Нет владельца → назначьте владельца со стороны бизнеса для каждой группы элементов.
- Словарь написали один раз → обновляйте его в рамках каждого изменения, которое затрагивает данные.
Шаблон#
| Элемент | Синонимы | Описание | Тип / формат | Длина | Допустимые значения и их смысл | По умолчанию | Обязательный | Источник | Владелец | Связанное правило |
|---|---|---|---|---|---|---|---|---|---|---|
| | | | | | | | | | | |
Источники и что почитать#
- IIBA. A Guide to the Business Analysis Body of Knowledge (BABOK® Guide), version 3. International Institute of Business Analysis, 2015. Рус. изд.: Руководство к своду знаний по бизнес-анализу (Руководство BABOK®), версия 3.0. Техника 10.12 «Словарь данных».
- Watermark Learning. BABOK v3 Study Tables. 2016 (учебное пособие к Руководству BABOK). Техника 10.12.
- K. Wiegers, J. Beatty. Software Requirements, 3rd ed. Microsoft Press, 2013. Рус. изд.: К. Вигерс, Дж. Битти. Разработка требований к программному обеспечению, 3-е изд. М.: Русская редакция; СПб.: БХВ-Петербург, 2014. Гл. 9 (термины как категория бизнес-правил).
- Учебные материалы по бизнес-анализу (шаблон словаря данных).