Внешний уровень может выступать как отдельный этап проектирования, на котором изучается все внемашинное информационное обеспечение предметной области. Целью внешнего уровня проектирования является создание описания входной (первичной) и выходной документации, системы классификации и кодирования технико-экономической информации, используемых в рамках определенной предметной области. Внешний уровень – это прямое отображение фактов из реальной жизни на естественном языке.
Существует два подхода к проектированию БД на внешнем уровне: «от запроса» (прикладные БД) и «от предметной области» (предметные БД). Во первом случае основным источником информации о предметной области является изучение запросов пользователей и потребности прикладных программ в данных. Этот подход называют функциональным.
Во втором случае формируется внешнее описание всей предметной области без учета потребностей пользователей и приложений[2], которые на этом этапе могут быть неизвестны. Этот подход еще называется объектным.
Теоретически предметные БД позволяют обеспечить поддержку любых текущих и будущих приложений. Вследствие этого предметные БД создают основу для обработки неформализованных, изменяющихся и неизвестных запросов и приложений. Такая гибкость и приспосабливаемость позволяет создавать на основе предметных БД достаточно стабильные ИС, т.е. системы, в которых большинство изменений можно осуществить без вынужденного переписывания старых приложений.
Основываясь при проектировании на текущих и предвидимых приложениях можно существенно ускорить создание высокоэффективной информационной системы. Однако по мере роста числа приложений таких ИС быстро увеличивается число прикладных БД, резко возрастает уровень дублирования данных и повышается стоимость их ведения.
Поскольку каждый из подходов проектирования действует на результат в противоположных направлениях, на практике используют их комбинацию. В общем случае предметный подход используется для построения первоначальной модели, а прикладной – для совершенствования ее с целью повышения эффективности обработки данных.
Какими способами создается внешнее описание ? Проектирование БД обычно поручается человеку или группе лиц – администратору базы данных. Представление о предметной области администратор БД получает путем проведения ряда рабочих сессий и интервью с экспертами в данной предметной области и будущими пользователями (сотрудниками организации, для которых создается БД). При проектировании базы данных на внешнем уровне необходимо изучить функционирование предметной области, для которой проектируется база, всю первичную и выходную документацию с точки зрения определения того, какие именно данные необходимо сохранять в базе данных. Все факты предметной области фиксируются на понятном для обычного человека (неспециалиста) языке – с помощью обычного текста, таблиц, диаграмм, графиков и т.п. Описание внешнего уровня не исключает наличия элементов дублирования, избыточности и несогласованности данных.
Ниже приводится запись результатов интервью, проведенных с персоналом компании по продаже автомобилей. Эта информация может являться основой для создания внешнего описания предметной области «Продажа автомобилей».
Главный менеджер: одна из основных обязанностей – содержание автомобильного имущества. Он должен знать, сколько заплачено за машины и каковы накладные расходы. Обладая этой информацией, он может установить нижнюю цену, за которую мог бы продать данных экземпляр. Кроме того, он несет ответственность за продавцов и ему нужно знать, кто и что продает, и сколько машин продал каждый из них.
Продавец: ему нужно знать, какую цену запрашивать и какова нижняя цена, за которую можно совершить сделку. Кроме того, ему нужна основная информация о машинах: год выпуска, марка, модель и т.п.
Администратор: его задача сводится к составлению контрактов, для чего нужна информация о покупателе, автомашине и продавце, поскольку именно контракты приносят продавцам вознаграждения за продажи.