Техники Руководство 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 отмечает, что словарь требует серьёзных усилий на создание и поддержку, без регулярного ухода устаревает и мало что даёт в масштабе предприятия, если метаданные не спроектированы с расчётом на разные способы использования.

Как это делать#

  1. Начните с того, что уже есть: модели данных, экранов, форм, отчётов и файлов интерфейсов.
  2. Составьте список элементов и сгруппируйте их по сущностям или экранам.
  3. Определите каждый примитивный элемент: название, синонимы, бизнес-описание, тип и формат, длину, допустимые значения и их смысл, значение по умолчанию, обязательность, откуда берётся значение и кто за него отвечает.
  4. Определите составные элементы в компактной записи, чтобы структура записей и сообщений стала явной.
  5. Свяжите элементы с правилами. Допустимые значения и правила вычисления часто сами являются бизнес-правилами; ссылайтесь на правило, а не повторяйте его.
  6. Проверьте словарь с владельцами данных, разработчиками и тестировщиками. Попросите тестировщиков поискать, как каждое определение можно понять неправильно.
  7. Опубликуйте одну версию в одном месте, поставьте её под управление изменениями и обновляйте при каждом изменении данных.

В учебных материалах есть полезный вариант, ориентированный на экраны: для каждого поля записывают раздел экрана, режим отображения (таблица или просмотр/редактирование), тип ввода, обязательность и источник значений. Так словарь превращается в готовое задание для проектирования интерфейса.

Пример#

«Мастерская», вымышленная сеть веломастерских, создаёт онлайн-запись. Часть её словаря:

Текст
Бронирование    = 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 (термины как категория бизнес-правил).
  • Учебные материалы по бизнес-анализу (шаблон словаря данных).