Специальность «Туризм» Учебная дисциплина «Информационные сети и базы данных» ЛЕКЦИЯ 9 ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ Вопрос 1. Этапы проектирования баз данных. Вопрос 2. Проектирование баз данных на внешнем уровне. Вопрос 3. Составные части инфологической модели. Требования и подходы к инфологическому проектированию. Вопрос 1. Этапы проектирования баз данных. Вопрос 2. Проектирование баз данных на внешнем уровне. Вопрос 3. Составные части инфологической модели. Требования и подходы к инфологическому проектированию.
Литература 1.Базы данных: учеб. Пособие для студ. высш. учеб. Заведений / А.В. Кузин, С.В. Левонисова. – 2-е изд. стер. – М.: Издательский центр «Академия», Марков А.С., Лисовский К.Ю. Базы данных. Введение в теорию и методологию: Учебник. –М.: Финансы и статистика, Теория и практика построения баз данных. 8- е изд. / Д. Крёнке. –СПб: Питер, Базы данных: учеб. Пособие для студ. высш. учеб. Заведений / А.В. Кузин, С.В. Левонисова. – 2-е изд. стер. – М.: Издательский центр «Академия», Марков А.С., Лисовский К.Ю. Базы данных. Введение в теорию и методологию: Учебник. –М.: Финансы и статистика, Теория и практика построения баз данных. 8- е изд. / Д. Крёнке. –СПб: Питер, 2003.
Проектирование баз данных это итерационный, многоэтапный процесс принятия обоснованных решений в процессе анализа информационной модели предметной области, требований к данным со стороны прикладных программистов и пользователей, синтеза логических и физических структур данных, анализа и обоснования выбора программных и аппаратных средств. Рассматривая вопрос проектирования баз данных, будем придерживаться многоуровневого представления данных: внешнего, инфологического, логического (даталогического) внутреннего. Проектирование баз данных это итерационный, многоэтапный процесс принятия обоснованных решений в процессе анализа информационной модели предметной области, требований к данным со стороны прикладных программистов и пользователей, синтеза логических и физических структур данных, анализа и обоснования выбора программных и аппаратных средств. Рассматривая вопрос проектирования баз данных, будем придерживаться многоуровневого представления данных: внешнего, инфологического, логического (даталогического) внутреннего. 1. Этапы проектирования баз данных
Внешний уровень это часть (подмножество) концептуальной модели, необходимая для реализации какого-либо запроса или прикладной программы. То есть, если концептуальная модель выступает как схема, поддерживаемая конкретной СУБД, то внешний уровень это некоторая совокупность подсхем, необходимых для реализации конкретной прикладной программы или запроса пользователя. Существует также другая точка зрения, в соответствии с которой под внешним уровнем понимают более общие понятия, связанные с изучением и анализом информационных потоков предметной области и их структуризацией. Некоторые авторы вводят вспомогательный уровень (промежуточный между внешним и даталогическим уровнями), который называется инфологическим. Он может выступать как самостоятельный или быть составной частью внешнего уровня. Внешний уровень это часть (подмножество) концептуальной модели, необходимая для реализации какого-либо запроса или прикладной программы. То есть, если концептуальная модель выступает как схема, поддерживаемая конкретной СУБД, то внешний уровень это некоторая совокупность подсхем, необходимых для реализации конкретной прикладной программы или запроса пользователя. Существует также другая точка зрения, в соответствии с которой под внешним уровнем понимают более общие понятия, связанные с изучением и анализом информационных потоков предметной области и их структуризацией. Некоторые авторы вводят вспомогательный уровень (промежуточный между внешним и даталогическим уровнями), который называется инфологическим. Он может выступать как самостоятельный или быть составной частью внешнего уровня. 1. Этапы проектирования баз данных
При проектировании БД на внешнем уровне необходимо изучить функционирование объекта управления, для которого проектируется БД, всю первичную и выходную документацию с точки зрения определения того, какие именно данные необходимо сохранять в базе данных. Внешний уровень это, как правило, словесное описание входных и выходных сообщений, а также данных, которые целесообразно сохранять в БД. Описание внешнего уровня не исключает наличия элементов дублирования, избыточности и несогласованности данных. Поэтому для устранения этих аномалий и противоречий внешнего описания данных выполняется инфологическое проектирование. Инфологическая модель является средством структуризации предметной области и понимания концепции семантики данных. Инфологическую модель можно рассматривать в основном как средство документирования и структурирования формы представления информационных потребностей, которая обеспечивает непротиворечивое общение пользователей и разработчиков системы. 1. Этапы проектирования баз данных
Внутренний уровень связан с физическим размещением данных в памяти ЭВМ. На этом уровне формируется физическая модель БД, которая включает структуры сохранения данных в памяти ЭВМ, в т.ч. описание форматов записей, порядок их логического или физического приведения в порядок, размещение по типам устройств, а также характеристики и пути доступа к данным. От параметров физической модели зависят такие характеристики функционирования БД: объем памяти и время реакции системы. Физические параметры БД можно изменять в процессе ее эксплуатации с целью повышения эффективности функционирование системы. Изменение физических параметров не предопределяет необходимости изменения инфологической и даталогической моделей. Внутренний уровень связан с физическим размещением данных в памяти ЭВМ. На этом уровне формируется физическая модель БД, которая включает структуры сохранения данных в памяти ЭВМ, в т.ч. описание форматов записей, порядок их логического или физического приведения в порядок, размещение по типам устройств, а также характеристики и пути доступа к данным. От параметров физической модели зависят такие характеристики функционирования БД: объем памяти и время реакции системы. Физические параметры БД можно изменять в процессе ее эксплуатации с целью повышения эффективности функционирование системы. Изменение физических параметров не предопределяет необходимости изменения инфологической и даталогической моделей. 1. Этапы проектирования баз данных
Рисунок 1 – Схема взаимосвязи уровней представления данных в БД
2. Проектирование баз данных на внешнем уровне Внешний уровень это часть (подмножество) концептуальной модели, необходимая для реализации какого-либо запроса или прикладной программы. В некоторых случаях под внешним уровнем понимают более общие понятия, связанные с изучением и анализом информационных потоков предметной области и их структуризацией. Проектирование на внешнем уровне подготовительный этап инфологического проектирования Целью проектирования на внешнем уровне является разработка внемашинного информационного обеспечения, которое включает систему входной (первичной) документации, характеризующую определенную предметную область, систему классификации и кодирования технико-экономической информации, а также перечень соответствующих выходных сообщений, которые нужно формировать с помощью БД. Внешний уровень это часть (подмножество) концептуальной модели, необходимая для реализации какого-либо запроса или прикладной программы. В некоторых случаях под внешним уровнем понимают более общие понятия, связанные с изучением и анализом информационных потоков предметной области и их структуризацией. Проектирование на внешнем уровне подготовительный этап инфологического проектирования Целью проектирования на внешнем уровне является разработка внемашинного информационного обеспечения, которое включает систему входной (первичной) документации, характеризующую определенную предметную область, систему классификации и кодирования технико-экономической информации, а также перечень соответствующих выходных сообщений, которые нужно формировать с помощью БД.
При проектировании БД на внешнем уровне необходимо изучить функционирование объекта управления, для которого проектируется БД, всю первичную и выходную документацию с точки зрения определения того, какие именно данные необходимо сохранять в базе данных. Внешний уровень это, как правило, словесное описание входных и выходных сообщений, а также данных, которые целесообразно сохранять в БД. Описание внешнего уровня не исключает наличия элементов дублирования, избыточности и несогласованности данных. Поэтому для устранения этих аномалий и противоречий внешнего описания данных выполняется инфологическое проектирование. При проектировании БД на внешнем уровне необходимо изучить функционирование объекта управления, для которого проектируется БД, всю первичную и выходную документацию с точки зрения определения того, какие именно данные необходимо сохранять в базе данных. Внешний уровень это, как правило, словесное описание входных и выходных сообщений, а также данных, которые целесообразно сохранять в БД. Описание внешнего уровня не исключает наличия элементов дублирования, избыточности и несогласованности данных. Поэтому для устранения этих аномалий и противоречий внешнего описания данных выполняется инфологическое проектирование.
Инфологический уровень представляет собой информационно-логическую модель (ИЛМ) предметной области, из которой исключена избыточность данных и отображены информационные особенности объекта управление без учета особенностей и специфики конкретной СУБД. Инфологическое представление данных ориентировано преимущественно на человека, который проектирует или использует базу данных. Инфологический уровень представляет собой информационно-логическую модель (ИЛМ) предметной области, из которой исключена избыточность данных и отображены информационные особенности объекта управление без учета особенностей и специфики конкретной СУБД. Инфологическое представление данных ориентировано преимущественно на человека, который проектирует или использует базу данных.
Логический (концептуальный) уровень построен с учетом специфики и особенностей конкретной СУБД. Этот уровень представления данных ориентирован больше на компьютерную обработку и на программистов, которые занимаются ее разработкой. На логическом уровне формируется концептуальная модель данных, то есть специальным способом структурированная модель предметной области, которая отвечает особенностям и ограничениям выбранной СУБД. Модель логического уровня, поддерживаемую средствами конкретной СУБД, называют еще даталогической. Логический (концептуальный) уровень построен с учетом специфики и особенностей конкретной СУБД. Этот уровень представления данных ориентирован больше на компьютерную обработку и на программистов, которые занимаются ее разработкой. На логическом уровне формируется концептуальная модель данных, то есть специальным способом структурированная модель предметной области, которая отвечает особенностям и ограничениям выбранной СУБД. Модель логического уровня, поддерживаемую средствами конкретной СУБД, называют еще даталогической.
Внутренний уровень связан с физическим размещением данных в памяти ЭВМ. На этом уровне формируется физическая модель БД, которая включает структуры сохранения данных в памяти ЭВМ, в т.ч. описание форматов записей, порядок их логического или физического приведения в порядок, размещение по типам устройств, а также характеристики и пути доступа к данным. От параметров физической модели зависят такие характеристики функционирования БД: объем памяти и время реакции системы. Внутренний уровень связан с физическим размещением данных в памяти ЭВМ. На этом уровне формируется физическая модель БД, которая включает структуры сохранения данных в памяти ЭВМ, в т.ч. описание форматов записей, порядок их логического или физического приведения в порядок, размещение по типам устройств, а также характеристики и пути доступа к данным. От параметров физической модели зависят такие характеристики функционирования БД: объем памяти и время реакции системы.
Все работы, которые выполняются на каждом этапе проектирования, должны интегрироваться со словарем данных. Каждый этап проектирования рассматривается как определенная последовательность итеративных процедур, в результате которых формируется определенная модель БД.
Существуют два подхода к проектированию баз данных на внешнем уровне: «от предметной области» и «от запроса». При подходе «от запроса» основным источником информации о предметной области есть изучение запросов пользователей и потребностей прикладных программ. При таком подходе БД проектируется для выполнения текущих задач управления без учета возможности расширение системы и возникновение новых задач управление. Существуют два подхода к проектированию баз данных на внешнем уровне: «от предметной области» и «от запроса». При подходе «от запроса» основным источником информации о предметной области есть изучение запросов пользователей и потребностей прикладных программ. При таком подходе БД проектируется для выполнения текущих задач управления без учета возможности расширение системы и возникновение новых задач управление.
Функциональный подход «от предметной области» ориентирован на реализацию текущих требований пользователей и прикладных программ без учета перспектив развития системы. Преимущества подхода «от предметной области»: 1)объективность, 2)системность при отображении ПО, 3)стойкость информационной модели, 4)возможность реализации большого количества прикладных программ и запросов, в том числе незапланированных при создании БД. Недостатком этого подхода является значительный объем работ, которые необходимо выполнить при определении информации, подлежащей хранению в БД, что, соответственно, усложняет и увеличивает срок разработки проекта. Функциональный подход «от предметной области» ориентирован на реализацию текущих требований пользователей и прикладных программ без учета перспектив развития системы. Преимущества подхода «от предметной области»: 1)объективность, 2)системность при отображении ПО, 3)стойкость информационной модели, 4)возможность реализации большого количества прикладных программ и запросов, в том числе незапланированных при создании БД. Недостатком этого подхода является значительный объем работ, которые необходимо выполнить при определении информации, подлежащей хранению в БД, что, соответственно, усложняет и увеличивает срок разработки проекта.
Если схематично представить процесс проектирования БД на внешнем уровне, то он состоит из таких работ: 1.Определение функциональных задач предметной области. 2.Изучение и анализ оперативных первичных документов. 3.Изучение нормативно-справочных документов. 4.Изучение процессов преобразования входных сообщений в выходные. Если схематично представить процесс проектирования БД на внешнем уровне, то он состоит из таких работ: 1.Определение функциональных задач предметной области. 2.Изучение и анализ оперативных первичных документов. 3.Изучение нормативно-справочных документов. 4.Изучение процессов преобразования входных сообщений в выходные.
Рисунок 2 - Обобщенная схема процесса проектирования баз данных на внешнем уровне
Результатом проектирования на внешнем уровне будет перечень атрибутов (реквизитов) оперативной и условно-постоянной информации, которые необходимо хранить в БД, с указанием источников их получения и формы представления. Однако этот перечень не исключает возможности существования в нем избыточности, дублирования, несогласованности и других недостатков. Поэтому на этом процесс не заканчивается, а осуществляется переход к этапу инфологического проектирования.
Основными составными элементами инфологической модели являются сущности (информационные объекты), связи между ними и их атрибуты (свойства). Сущность - любой различимый объект (т.е. объект, который можно отличить от другого), информацию о котором необходимо хранить в базе данных. Связь - ассоциирование двух или более сущностей. Атрибут - поименованная характеристика сущности. Атрибут является таковым только в связи с типом сущности. Ключ - минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Основными составными элементами инфологической модели являются сущности (информационные объекты), связи между ними и их атрибуты (свойства). Сущность - любой различимый объект (т.е. объект, который можно отличить от другого), информацию о котором необходимо хранить в базе данных. Связь - ассоциирование двух или более сущностей. Атрибут - поименованная характеристика сущности. Атрибут является таковым только в связи с типом сущности. Ключ - минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. 3. Составные части инфологической модели. Требования и подходы к инфологическому проектированию
Целью инфологического проектирования является создание структурированной информационной модели ПО, для которой будет разрабатываться БД. При проектировании на инфологическом уровне создается информационно-логическая модель (ИЛМ), которая должна отвечать таким требованиям: - обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных; - корректность схемы БД, то есть адекватное отображение моделированной ПО; - простота и удобство использования на следующих этапах проектирования, то есть ИЛМ может легко отображаться на модели БД, которые поддерживаются известными СУБД (сетевые, иерархические, реляционные и др.); - ИЛМ должна быть описана языком, понятным проектировщикам БД, программистам, администратору и будущим пользователям. Целью инфологического проектирования является создание структурированной информационной модели ПО, для которой будет разрабатываться БД. При проектировании на инфологическом уровне создается информационно-логическая модель (ИЛМ), которая должна отвечать таким требованиям: - обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных; - корректность схемы БД, то есть адекватное отображение моделированной ПО; - простота и удобство использования на следующих этапах проектирования, то есть ИЛМ может легко отображаться на модели БД, которые поддерживаются известными СУБД (сетевые, иерархические, реляционные и др.); - ИЛМ должна быть описана языком, понятным проектировщикам БД, программистам, администратору и будущим пользователям.
Суть инфологического моделирования состоит в выделении сущностей (информационных объектов ПО), которые подлежат хранению в БД, а также в определении характеристик (атрибутов) объектов и взаимосвязей между ними. Существует два подхода к инфологическому проектированию: анализ объектов и синтез атрибутов. Подход, который базируется на анализе объектов, называется нисходящим, а на синтезе атрибутов восходящим. Суть инфологического моделирования состоит в выделении сущностей (информационных объектов ПО), которые подлежат хранению в БД, а также в определении характеристик (атрибутов) объектов и взаимосвязей между ними. Существует два подхода к инфологическому проектированию: анализ объектов и синтез атрибутов. Подход, который базируется на анализе объектов, называется нисходящим, а на синтезе атрибутов восходящим.
Нисходящее проектирование – это метод разработки проектов, систем, программ, при котором разработка производится сверху вниз. Метод предполагает последовательное разложение функции обработки данных на простые функциональные элементы ("сверху вниз"). В результате строится иерархическая схема, которая отражает состав и взаимоподчиненность отдельных функций. Она носит название функциональная структура алгоритма (ФСА) приложения, в которой отражаются: цели предметной области (цель-подцель); состав приложений (задач обработки), обеспечивающих реализацию поставленных целей; характер взаимодействия приложений с их основными характеристиками; функции обработки данных. Нисходящее проектирование – это метод разработки проектов, систем, программ, при котором разработка производится сверху вниз. Метод предполагает последовательное разложение функции обработки данных на простые функциональные элементы ("сверху вниз"). В результате строится иерархическая схема, которая отражает состав и взаимоподчиненность отдельных функций. Она носит название функциональная структура алгоритма (ФСА) приложения, в которой отражаются: цели предметной области (цель-подцель); состав приложений (задач обработки), обеспечивающих реализацию поставленных целей; характер взаимодействия приложений с их основными характеристиками; функции обработки данных.
Нисходящее проектирование называют анализом. При этом происходит изучение целого (описания предметной области), затем разделение целого на составные части и затем следует последовательное изучение этих частей. Этапы проектирования БД методом «нисходящего» проектирования представлены на рисунке 3. Рисунок 3 Пр Обл. – предметная область; ИЛМ – информационнологическая модель предметной области; ДЛМ – даталогическая модель; НФ – нормальная форма; ФМ – физическая модель БД. Рисунок Этапы проектирования БД методом «нисходящего» проектирования Нисходящее проектирование называют анализом. При этом происходит изучение целого (описания предметной области), затем разделение целого на составные части и затем следует последовательное изучение этих частей. Этапы проектирования БД методом «нисходящего» проектирования представлены на рисунке 3. Рисунок 3 Пр Обл. – предметная область; ИЛМ – информационнологическая модель предметной области; ДЛМ – даталогическая модель; НФ – нормальная форма; ФМ – физическая модель БД. Рисунок Этапы проектирования БД методом «нисходящего» проектирования
При восходящем проектировании осуществляют структурное проектирование снизувверх. Этот процесс называют процессом синтеза, попыткой получения целого, адекватно отображающего описание предметной области, на основе описания составляющих его частей. Этапы проектирования БД методом «восходящего» проектирования представлены на рисунке 2. ДЛМ – даталогическая модель; НФ – нормальная форма; ИЛМ – информационнологическая модель предметной области; МБД – модель БД. Рисунок 2 Этапы проектирования БД методом «восходящего» проектированияП При восходящем проектировании осуществляют структурное проектирование снизувверх. Этот процесс называют процессом синтеза, попыткой получения целого, адекватно отображающего описание предметной области, на основе описания составляющих его частей. Этапы проектирования БД методом «восходящего» проектирования представлены на рисунке 2. ДЛМ – даталогическая модель; НФ – нормальная форма; ИЛМ – информационнологическая модель предметной области; МБД – модель БД. Рисунок 2 Этапы проектирования БД методом «восходящего» проектированияП
Таблица - Сравнение методов проектирования БД Критерии «Нисходящее» проектирование (Концептуальный подход) «Восходящее» проектирование (Метод нормализации) Степень описания семантики (смысла) предметной области ВысокаяНизкая (начальная модель – ДЛМ РБД, термины РМД не предусматривают возможность описания полного смысла предметной области.) Вероятность появления ошибок в последующей работе АИС Низкая (при условии качественного проектирования) Высокая Степень формализации процесса (возможность автоматизации процесса) ВысокаяОтсутствует Объем трудозатрат при приведении ДЛМ БД к заданной НФ НебольшойОчень большой
Контрольные вопросы 1.Поясните, что понимается под процессом проектирования баз данных и перечислите основные уровни представления данных. 2.Дайте характеристику уровней представления данных, используемых при проектировании баз данных. 3.Приведите и охарактеризуйте существующие подходы к проектированию баз данных на внешнем уровне. 4.Приведите и поясните обобщенную схему процесса проектирования баз данных на внешнем уровне. 5.Перечислите и раскройте содержание основных составных элементов инфологической модели базы данных. 6.Перечислите цель, суть и существующие подходы инфологического проектирования баз данных. 7.Приведите требования, предъявляемые к информационно- логической модели баз данных на инфологическом уровне. 8.Поясните сущность нисходящего проектирования баз данных. 9.Поясните сущность восходящего проектирования баз данных. 1.Поясните, что понимается под процессом проектирования баз данных и перечислите основные уровни представления данных. 2.Дайте характеристику уровней представления данных, используемых при проектировании баз данных. 3.Приведите и охарактеризуйте существующие подходы к проектированию баз данных на внешнем уровне. 4.Приведите и поясните обобщенную схему процесса проектирования баз данных на внешнем уровне. 5.Перечислите и раскройте содержание основных составных элементов инфологической модели базы данных. 6.Перечислите цель, суть и существующие подходы инфологического проектирования баз данных. 7.Приведите требования, предъявляемые к информационно- логической модели баз данных на инфологическом уровне. 8.Поясните сущность нисходящего проектирования баз данных. 9.Поясните сущность восходящего проектирования баз данных.