Основы проектирования и реализации баз данных. Методические указания к проведению лабораторных работ по курсу «Базы данных»
.pdf
926
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра автоматизированных систем управления
В.А. Алексеев
ОСНОВЫ ПРОЕКТИРОВАНИЯ И РЕАЛИЗАЦИИ БАЗ ДАННЫХ
МЕТОДИЧЕСКИЕ УКАЗАНИЯ к проведению лабораторных работ по курсу
«БАЗЫ ДАННЫХ»
Липецк Липецкий государственный технический университет
2014
УДК 681.3.07 А-471
Рецензент – канд. техн. наук П.А. Домашнев
Алексеев В.А.
A471 Основы проектирования и реализации баз данных [Текст]: методические указания к проведению лабораторных работ по курсу «Базы данных» /
В.А. Алексеев. – Липецк: Издательство Липецкого государственного технического университета, 2014. – 26 с.
В методических указаниях рассматривается проектирование баз данных с использованием трехэтапной методологии: концептуальное – логическое – физическое проектирование, разработка SQL-запросов к базам данных и основы программирования серверной логики баз данных. Приведены задания к шести лабораторным работам.
Предназначены для студентов специальностей 230102.65 «Автоматизированные системы обработки информации и управления», 010503.65 «Математическое обеспечение и администрирование информационных систем» и направлений 230100.62 «Информатика и вычислительная техника», 231000.62 «Программная инженерия», 010500.62 «Математическое обеспечение и администрирование информационных систем».
Ил. 1. Библиогр.: 6 назв.
© ФГБОУ ВПО «Липецкий государственный технический университет», 2014
Теоретические сведения
Одна из наиболее сложных проблем проектирования баз данных связана с тем, что проектировщики, программисты и конечные пользователи, как правило, рассматривают данные и их назначение по-разному. Разработанный проект удовлетворит все требования пользователей только при том условии,
что и проектировщики, и пользователи придут к единому пониманию того, как работает конкретная организация и какие именно задачи автоматизируются в информационной системе. Чтобы добиться общего понимания характера данных и способов их использования в организации, необходимо применять в процессе согласования требований к автоматизированной информационной системе (АИС) общую модель, которая, с одной стороны, не усложнена техническими подробностями, а с другой – не допускает неоднозначностей.
В проектировании баз данных роль связующего звена между пониманием предметной области, которым обладают пользователи, и представлением о предметной области, формируемом у проектировщиков, играет концептуальная модель. Применение концептуальной модели направлено именно на формирование общего понимания предметной области и способов обработки данных в будущей АИС.
Таким образом, концептуальная модель предметной области предназначена для представления семантики предметной области на самом высоком уровне. Это означает, что в данной модели устранена или минимизирована необходимость использовать понятия «низкого уровня»,
связанная со спецификой физического представления и хранения данных.
Следует отметить, что концептуальная модель полезна не только при проектировании БД, но вообще при разработке информационных и программных систем как средство описания данных, с которыми эти системы работают.
Некоторые авторы называют концептуальную модель инфологической.
3
Представление |
… |
Представление |
|
пользователя 1 |
пользователя N |
||
|
Локальные ERКонцептуальное диаграммы проектирование
Концептуальная (инфологическая)
Общая ER-
модель
диаграмма
Логическое
проектирование
Логическая модель |
Концептуальная |
|
схема |
||
|
Физическое
проектирование
Физическая модель
Внутренняя
схема
Реализация базы данных
База данных
Рис. Этапы проектирования баз данных
Конкретный вид и содержание концептуальной модели базы данных определяется выбранным для этого формальным аппаратом. Обычно используются графические нотации, подобные ER-диаграммам, которые отображают сущности, их атрибуты и связи. Однако может быть использован и другой аппарат, позволяющий разработать достаточно формальное описание данных.
4
Общий подход к проектированию баз данных и вообще автоматизированных информационных систем, использующих базы данных,
предлагает трехэтапную методологию проектирования:
Концептуальное проектирование – создание концептуального представления базы данных, включающее определение типов важнейших сущностей и существующих между ними связей и атрибутов. На этом этапе конструируется информационная модель организации (или отдельного автоматизируемого бизнес-процесса, т.е. предметной области), не зависящая от любых деталей реализации, например, типа и производителя СУБД,
аппаратных и программных платформ и т.д.
Логическое проектирование – преобразование концептуального представления в логическую структуру базы данных, соответствующую выбранной модели данных (для реляционной модели данных на этом этапе проектируются реляционные отношения). На этом этапе не рассматривают особенности используемой СУБД (только ее тип – реляционная или другая),
вопросы физического размещения данных, производительности.
Физическое проектирование – принятие решения о том, как логическая модель будет физически реализована в базе данных с использованием выбранной СУБД (в реляционных СУБД модель данных реализуется в виде таблиц БД). Определяются, в частности, вопросы физического размещения БД во внешней памяти, состав индексов, реализации ограничений целостности и т.п.
Лабораторная работа № 1
Анализ и моделирование предметной области
Цель работы
Научиться выполнять анализ предметной области при разработке автоматизированной информационной системы (АИС) с целью выявления основных бизнес-процессов, категорий пользователей, их задач и видов
5
обрабатываемых в информационной системе данных. Освоить на практике применение ER-диаграмм для концептуального моделирования предметной области.
Задание
Выбрать и описать предметную область для разработки АИС, разработать концептуальную модель предметной области и представить ее в виде ERдиаграммы в нотации Чена.
Порядок выполнения работы
1.Выбрать предметную область для разработки АИС. В качестве предметной области может быть выбрана небольшая организация или определенная задача (бизнес-процесс), решаемая в крупной организации. Предметная область должна отвечать следующим требованиям:
а. Предусматривать не менее 3-х категорий пользователей.
б. Содержать не менее 5 объектов, информация о которых должна храниться в базе данных.
2.Сформулировать описание предметной области, назначение АИС, перечень решаемых задач.
3.Выделить основные бизнес-процессы, автоматизацию которых должна обеспечить информационная система. Описать каждый бизнес-процесс последовательностью этапов (шагов) с указанием участвующих в выполнении этих этапов категорий людей (клиентов организации, отделов, должностей и т.п.).
4.По описанию предметной области и бизнес-процессов выделить основные категории пользователей разрабатываемой АИС (3-5 категорий), охарактеризовать решаемые ими задачи.
5.По описанию предметной области и бизнес-процессов выделить основные виды информации (объектов/процессов и т.п), которая будет обрабатываться в АИС (7-10 видов) с указанием атрибутов, которыми характеризуется каждый из видов. Классифицировать информацию на постоянно хранимую и временную.
6
6. Сформулировать на естественном языке требования к получению сводной информации в АИС («отчетам»), предполагающие объединение,
обобщение информации нескольких видов (не менее 3 отчетов).
7. Для каждой категории пользователей разработать концептуальную модель локального представления в виде ER-диаграммы в нотации Чена.
Модель должна содержать сущности, связи и атрибуты.
8. Выполнить объединение моделей локальных представлений и построить общую концептуальную модель предметной области в виде ER-
диаграммы в нотации Чена.
Содержание отчета
1.Титульный лист.
2.Цель работы, задание.
3.Анализ предметной области.
3.1.Описание предметной области.
3.2.Основные бизнес-процессы.
3.3.Категории пользователей.
3.4.Обрабатываемая информация.
3.5.Требования к отчетам.
4. Разработка концептуальной модели.
4.1.Модели локальных представлений (ER-диаграммы в нотации Чена).
4.2.Общая концептуальная модель (ER-диаграммы в нотации Чена).
Контрольные вопросы
1.Задачи концептуального моделирования.
2.Интеграция локальных представлений.
3.Элементы ER-модели. ER-диаграммы в нотации Чена.
4.Виды сущностей в ER-модели.
5.Виды атрибутов в ER-модели.
6.Виды связей в ER-модели. Атрибуты связей.
7
7.Многосторонние и рекурсивные связи в ER-модели.
8.Уточнение и обобщение сущностей в ER-модели.
9.Параллельные связи и циклы в ER-модели.
Лабораторная работа № 2 Концептуальное и логическое проектирование базы данных
Цель работы
Научиться проектировать базы данных с использованием трехэтапной методологии: концептуальное – логическое – физическое проектирование. Освоить на практике разработку концептуальной и логической моделей данных в среде Sybase PowerDesigner.
Задание
Разработать в среде Sybase PowerDesigner концептуальную и логическую модели данных для концептуальной модели предметной области, сформированной в лабораторной работе №1.
Порядок выполнения работы
1. Проанализировать концептуальную модель и устранить особенности, которые не могут быть отражены при разработке концептуальной модели данных в PowerDesigner (при наличии):
а. Многосторонние связи – связи, в которых участвуют три или более сущностей. Такие связи должны быть заменены промежуточной сущностью и необходимым количеством двухсторонних связей с этой сущностью.
б. Атрибуты связей. Такие связи должны быть заменены промежуточной сущностью и связями с этой сущностью.
в. Многозначные атрибуты – атрибуты, которые хранят несколько значений для одного экземпляра сущности (например, атрибут «Номера телефонов», хранящий до 3-х телефонных номеров компании). Такие атрибуты могут быть заменены либо новой сущностью, связанной с данной, либо соответствующим количеством простых атрибутов (если количество возможных значений не превышает 3-х).
8
2. Разработать в среде PowerDesigner концептуальную модель данных с представлением E/R диаграммы в нотации Craw’s Foot (в PowerDesigner
выбрать для модели нотацию «Entity/Relationship»). При разработке концептуальной модели:
а. Указать сущности, атрибуты, связи между сущностями.
б. Назначить наименования (name) элементов модели на русском языке,
коды (code) элементов – на английском.
в. Для атрибутов указать типы данных, признаки обязательности.
г. Для связей указать кратность (арность) связи и обязательность для каждой сущности.
д. Назначить идентифицирующие атрибуты для сущностей.
е. Выделить зависимые (слабые) сущности и указать признак зависимости для соответствующих связей с базовыми (сильными) сущностями.
3. На основе концептуальной модели данных сформировать в среде
PowerDesigner логическую модель данных. Уточнить в логической модели следующие элементы:
а. Имена атрибутов реляционных отношений, сгенерированных
PowerDesigner для поддержки внешних ключей (при наличии параллельных связей между сущностями, рекурсивных связей и в некоторых других случаях).
б. Добавить альтернативные ключи отношений (при наличии).
Содержание отчета
1. Титульный лист.
2. Цель работы, задание.
3. Концептуальная модель.
3.1. Диаграмма концептуальной модели (в нотации Craw’s Foot –
«Entity/Relationship»).
3.2. Спецификация сущностей.
3.3. Спецификация доменов.
4. Логическая модель.
9
4.1.Диаграмма логической модели (в нотации Craw’s Foot –
«Entity/Relationship»).
4.2.Спецификация реляционных отношений.
Контрольные вопросы
1.Понятие первичного, альтернативного и внешнего ключа.
2.Генерация реляционных отношений для связи между сущностями 1:N.
3.Генерация реляционных отношений для связи между сущностями 1:1.
4.Генерация реляционных отношений для связи между сущностями M:N.
5.Генерация реляционных отношений для зависимых (слабых) сущностей.
6.Генерация реляционных отношений для рекурсивных связей.
7.Генерация реляционных отношений для связи наследования.
8.Генерация реляционных отношений для связей с атрибутами.
9.Генерация реляционных отношений для многосторонних связей.
Лабораторная работа № 3 Разработка физической модели данных и создание БД
Цель работы
Изучить задачи физического проектирования базы данных. Освоить на практике разработку физической модели данных в среде Sybase PowerDesigner и модификацию схемы данных с использованием SQL-запросов.
Задание
Сформировать в среде PowerDesigner физическую модель данных на основе логической модели, разработанной в лабораторной работе №2. Создать базу данных средствами выбранной СУБД и отработать сценарий модификации схемы данных.
Порядок выполнения работы
1. На основе логической модели данных сформировать в среде
PowerDesigner физическую модель данных для выбранной СУБД.
10
