Методички по лабам ПрБД, 2 курс 3 семестр (для ИВТ и т.п.) / ПБД_метод к лабам_часть 1_v03 [2022-2023]
.pdf
Рис. 6. Логическая модель
2.3 Описание процесса построения ER-модели в программном продукте draw.io
Draw.io – проект, в который входят бесплатные векторные редакторы деловой графики для работы в Windows, Linux, MacOS, web. В редакторе можно создавать блок-схемы, планы помещений, UML-диаграммы, BPMN схемы, диаграммы связей, схемы компьютерных сетей, макеты интерфейсов программ, таблицы, инфографику и многое другое. Для вышеназванных тем предустановлены графические элементы, которые
31
просто перетаскиваются мышкой на рабочий холст. Между элементами можно прокладывать соединительные линии. Результат работы можно экспортировать в разные форматы: свой собственный формат проекта, векторный формат SVG, растровые форматы PNG, JPG, WEBM, а также в HTML с интерактивным просмотрщиком графики на странице браузера.
Для запуска программного продукта draw.io необходимо выбрать Пуск
→ Приложения ПГУТИ → draw.io. Выберите пункт Создать новую диаграмму
(Рис. 7).
Рис. 7. Окно приветствия draw.io
Выберите раздел Базовые → Пустая диаграмма → кнопка Создать.
Другой способ: запустить любой браузер и в адресной строек набрать http://draw.io/. Затем выбрать пункт Создать новую диаграмму → Пустая диаграмма. На экране отобразится чистый бланк диаграммы.
После того, как нажали кнопку Создать, необходимо указать место на компьютере, где будет храниться создаваемая диаграмма.
32
Рис. 8. Создание новой пустой диаграммы
Примечание:
Если при создании новой диаграммы выбрать пункт Диаграмма связей сущностей, то отобразится готовый шаблон ER-модели, который можно редактировать под собственную модель. Для этого достаточно нажать два раза левой кнопкой мыши, например, по квадратику и убрать текст с помощью кнопки Delete на клавиатуре, затем напишите свой вариант. Если нужно передвинуть стрелку, по ней так же кликаете левой кнопкой мыши и удерживая клавишу мыши, проводите в нужную сторону.
Интерфейс рабочего поля устроен следующим образом: слева – библиотека с иконками и другими рабочими элементами; справа – опции работы с текстом, стилями и расположением; в верхнем меню можно отменить действие, выбрать вид стрелок и линий, соединяющих этапы алгоритма.
По умолчанию открыт набор Общие, в котором находятся общие универсальные фигуры, которые перетаскиваются на рабочий холст мышкой.
Примечание:
Для отображения русского интерфейса, можно нажать на кнопку глобуса вверху справа и выбрать его.
Перейдите в раздел Сущность-связь (Рис. 9), выберите изображение сущности и перенесите на диаграмму (Рис. 10).
33
Рис. 9. Раздел Сущность-связь
Рис. 10. Создание сущности на ER-модели
При выделенном объекте в правой панели редактора будут отображаться параметры элемента, разделенные на три закладки Стиль, Текст, Расположение. Настраивать различные параметры можно с точностью до пункта, градуса, процента. Размерами, положением, поворотом, прозрачностью можно манипулировать с помощью мыши.
34
При совершении двойного клика по элементу или нажатии клавиши F2 при выделенном объекте, пользователь активизирует режим редактирования элемента. Этот режим отличается тем, что редактор начинает рассматривать объект как контейнер и предлагает дополнительные возможности – поместить в контейнер изображение или таблицу.
Выделите сущность и укажите название сущности, ее первичный ключ и атрибуты. Для добавления нового атрибута необходимо с панели слева выделить третий элемент Row и перенесите его на сущность для дальнейшего редактирования (Рис. 11).
Рис. 11. Добавление нового атрибута на сущность
Для добавления связей между сущностями в блоке Сущность-связь располагается большое количество связей (Рис. 12).
Мощности связей указываются не в виде буквенно-цифрового обозначений, а с помощью графических элементов:
– ноль;
– один;

– один и только один (строго один). Обычно указывается со стороны родительской таблицы;
35
– много (больше 0). Данный элемент иногда называют «Вороньей (куриной) лапкой» (Crow’s Foot).
При выборе стрелки справа отображается укрупненное изображённые выделенной стрелки и ниже указана ее расшифровка.
Рис. 12. Различные типы связей
Для того чтобы нарисовать связь между сущностями необходимо выбрать нужный тип стрелки в разделе Сущность-связь. Другой способ: навести курсор мыши на элемент без клика → по периметру элемент покроется маленькими крестиками → схватить крестик и потянуть в сторону → будет сформирована линия, которую можно «приклеить» к другому элементу. Вместо крестика можно с таким же успехом кликнуть по одной из четырех синих стрелок вокруг объекта, появляющихся при наведении на него мыши.
Примечание:
Любой элемент можно сделать кликабельным. Для этого активируйте элемент, нажмите «+» на верхней панели, выберите пункт Добавить ссылку и впишите URL.
36
Если на панели слева отсутствует нужный вам набор фигур, необходимо в нижнем левом угу выбрать пункт + Больше фигур… и в открывшемся окне выбрать требуемый набор (Рис. 13).
Рис. 13. Добавление нового набора фигур
Чтобы сохранить результат следует нажать Файл → Сохранить. При сохранении на жесткий диск файл просто скачается в формате .xml (по умолчанию в папку Загрузки).
Также можно экспортировать рисунок в формат, например, PNG, JPEG, SVG и т.д. Для этого нажмите кнопку Файл → Экспортировать как. Затем еще раз нажмите Экспортировать. Укажите место для сохранения диаграммы и нажмите Сохранить.
Чтобы открыть документ в будущем, достаточно просто зайти на сайт сервиса, и, выбрав Открыть существующую диаграмму, найти сохраненный ранее xml-проект.
37
Рис. 14. Добавление нового атрибута на сущность
Содержание работы
1)Ознакомиться с теоретическими вопросами построения диаграммы «сущность-связь».
2)Между выделенными сущностями построить связи и построить инфологическую модель БД.
3)Ознакомиться с теоретическими вопросами нормализации баз данных.
4)Осуществить нормализацию построенной ER-модели.
5)Нарисовать нормализованную ER-модель в средстве draw.io.
6)Подготовить отчет.
Требования к отчету
Отчет по лабораторной работе оформляется в печатном виде. Защита лабораторной работы включает в себя проверку знания студентом теоретического материала, а также практической части лабораторной работы.
Отчет должен включать:
−концептуальную модель БД;
−описание созданной нормализованной БД.
38
Контрольные вопросы
1)Перечислите этапы проектирования БД.
2)В чем заключается цель инфологического проектирования.
3)Что такое объект и предмет? В чем заключается отличие?
4)Что такое связь?
5)Какими параметрами характеризуется связь?
6)Как определяются связи 1:1, 1:m, n:m?
7)Что такое нормализация?
8)Дайте характеристику первой, второй и третьей нормальных форм.
Варианты заданий
Номер варианта определяется по номеру студента в списке группы.
1Каталог товаров интернет магазина
Каталог товаров содержит следующую информацию для клиентов. О товарах: категория, модель, производитель, есть ли в наличии, описание, характеристики, внешний вид, магазины, где можно купить товар и по какой цене. О магазинах: название, компания-владелец, сайт, контактные телефоны, адрес, схема проезда.
База данных предназначена для осуществления интернет-торговли
2Отдел социальной защиты
В отделении социальной защиты работают патронажные сестры, которые обслуживают пенсионеров. У каждой патронажной сестры по 2-3 пенсионера, для которых указываются фамилия, имя, отчество, адрес проживания, паспортные данные, сумма пенсии, телефон. Кроме этого имеются дополнительные сведения об основном диагнозе болезни, справочные данные об одном из родственников. В базе данных ведется учет посещений и выполняемых при этом работ. Список работ состоит из нескольких видов (покупки продуктов и лекарств, оплата ЖКХ, вызов врача, уборка квартиры, мытье окон, стирка и т.п.) за каждым видом работы закреплена ее стоимость выполнения и время выполнения в часах.
3Кинотеатры
База данных должна содержать следующую информацию. О фильмах: название, описание, жанр (категория), длительность, популярность (рейтинг, число проданных билетов в России и в мире), показывается ли
39
сейчас (сегодня, на текущей неделе), в каких кинотеатрах показывается, цены на билеты (в т.ч. средние).
О кинотеатрах: название, адрес, схема проезда, описание, число мест (в разных залах, если их несколько), акустическая система, широкоэкранность, фильмы и цены на них: детские и взрослые билеты в ависимости от сеанса (дневной, вечерний и т.п.) и от категории мест (передние, задние и т.п.); сеансы показа фильмов (дата и время начала).
4Грузовые перевозки
Компания осуществляет перевозки грузов по различным маршрутам. Для каждого маршрута определено название, расстояние и установленная оплата для водителя. Информация о водителях включает фамилию, имя, отчество и стаж. Для проведения расчетов хранится полная информация о перевозках (маршрут, водитель, даты отправки и прибытия). По факту некоторых перевозок водителям выплачивается премия.
5Туристическая фирма
Фирма продает путевки клиентам. У каждого клиента запрашиваются стандартные данные – фамилия, имя, отчество, адрес, телефон. После этого сотрудники компании выясняют у клиента, куда он хотел бы поехать отдыхать. Ему демонстрируются различные варианты, включающие страну проживания, особенности климата, отель. Обсуждается длительность пребывания и стоимость путевки. Если удалось найти приемлемый вариант, регистрируется факт продажи путевки (или путевок, если клиент покупает сразу несколько), фиксируется дата отправления. Иногда клиенту предоставляется скидка (скидки фиксированы и могут суммироваться). Фирма работает с несколькими отелями (название, категория, адрес) в нескольких странах. Путевки продаются на одну, две или четыре недели. Стоимость путевки зависит от длительности тура и отеля.
6Прокат автомобилей
Фирма, занимающаяся прокатом автомобилей, имеет автопарк, содержащий некоторое количество автомобилей различных марок, стоимостей и типов. Каждый автомобиль имеет свою стоимость проката. В пункт проката обращаются клиенты. Клиенты проходят обязательную регистрацию, в ходе которой о них собирается стандартная информация (фамилия, имя, отчество, адрес, телефон). Каждый клиент может обращаться в пункт проката несколько раз. Обращения клиентов фиксируются, при этом по каждой сделке запоминаются дата выдачи и ожидаемая дата возврата. Стоимость проката автомобиля должна зависеть не только от самого автомобиля, но и от срока его проката, а также от года выпуска. Также нужно ввести систему штрафов за возвращение
40
