В деловой или личной сфере часто приходится работать с данными из различных источников, каждый из которых связан с определенным видом деятельности. В настоящее время благодаря огромным возможностям компьютеров, которые связаны с хранением и обработкой больших массивов информации компьютер применяется для решения широкого круга задач буквально во всех сферах человеческой деятельности. Одновременно с развитием компьютерной техники развивалась и теория баз данных (БД), которые представляют собой наборы взаимосвязанных данных о некоторой предметной области. Такие наборы имеют определенную структуру и постоянно хранятся в памяти компьютера.
В результате развития концепций БД выделены три уровня представления информации: инфологический, даталогический и физический. На каждом уровне проводится структуризация информации таким образом, чтобы на третьем уровне информация могла быть представлена в виде структур данных, реализуемых в памяти ЭВМ. На инфологическом уровне определяется какая информация о предметной области будет хранится и обрабатываться в компьютере, а в результате исследования предметной области строится ее инфологическая модель, которая описывается в терминах классов объектов и их взаимодействий. В инфологической модели информация представляется вне зависимости от того, что представляют собой данные и какие технические средства будут использовании в дальнейшем для ее хранения и обработки. Даталогическая и физическая модели непосредственно реализуются в системах управления БД (СУБД), а физическая модель в свою очередь определяет структуру хранения данных на физических носителях. Цель инфологического проектирования заключается в представлении семантики (смысла) предметной области. Для описания предметной области наиболее часто используется модель “сущность–связь”, которую сокращенно называют ER–моделью от английского названия “Entity – Relationship” (“Сущность – связь”). ER–диаграмма модели имеет лексикографическую структуру и включает в себя текст и элементы графики. На практике инфологическая (семантическая) модель используется на первой стадии проектирования БД. При этом в терминах ER–модели описывается концептуальная (понятийная) схема БД, которая затем преобразуется к реляционной или другой схеме. ER–модели получили распространение в CASE–системах, поддерживающих проектирование реляционных БД [1–3]. Следует отметить, что при подготовке учителей и студентов инженерных специальностей высших учебных заведений следует выделять ключевые понятия теории БД и применять их при проектировании БД [4].
В данной работе мы предлагаем рассмотрение построения инфологической (семантической) модели данных и построения ER–диаграммы при проектировании базы данных “Кафедра”.
Процесс проектирования БД представляет собой последовательность переходов от неформального словесного описания информационной структуры предметной области к формализованному описанию объектов предметной области в терминах некоторой модели. При этом можно выделить следующие этапы проектирования [4]:
- Системный анализ и словесное описание информационных объектов предметной области;
- Проектирование инфологической модели предметной области – частично формализованное описание объектов предметной области в терминах некоторой семантической модели, например, в терминах ER–модели;
- Даталогическое или логическое проектирование БД;
- Физическое проектирование БД.
Создадим инфологическую (семантическую) модель предметной области, которая будет содержать сведения о студентах, успеваемости студентов по предметам и преподавателях, ведущих эти предметы в терминах ER–модели с построением ER–диаграммы.
ER–модель опирается на понятия сущность, атрибут, связь и предметная область должна быть представлена как совокупность сущностей с атрибутами, между которыми установлены связи. С объектами ER–модели связаны понятия: тип – набор однородных предметов, явлений, которые выступают как единое целое; экземпляр – конкретный элемент набора, который (набор) означает некоторый тип; множество – конкретный набор экземпляров типа. Сущность – это объект, который может быть идентифицирован некоторым способом, который отличает его от других объектов. Тип сущности означает набор однородных сущностей некоторого типа. Набор сущностей – множество сущностей одного типа. Сущность фактически является множеством атрибутов, которые описывают свойства всех членов данного набора сущности. Тип сущности означает множество однородных объектов, а “экземпляр сущности” – конкретный объект из множества объектов. Например, сущностью является Студент, который представляет собой всех студентов вуза, а один из них, Петров Петр Петрович является не сущностью, а конкретной реализацией этой сущности (экземпляром). Атрибутами сущности Студент являются: ФИО, номер группы, номер зачетной книжки, дата зачисления и др. [2–3].
Связь – это поименованное отношение, имеющее место между двумя сущностями. Такая связь является бинарной в том смысле, что она имеет место между двумя поименованными сущностями или же имеет вид отношения сущности к самой себе. Каждая связь имеет два конца, каждый из которых обладает: именем, степенью (мощностью), признаком обязательности. Эти свойства используются для характеристики связи по отношению к каждой из участвующей в ней стороне.
Каждая сущность должна иметь уникальный идентификатор (ключ), то есть должна быть уникально определена: каждый экземпляр сущности должен иметь ямное и недвусмысленное определение, позволяющее отличать его от других экземпляров той же сущности. Ключом может быть атрибут, комбинация атрибутов, комбинация связей или атрибутов и связей. Например, ключом для сущности Студент является атрибут № зачетной книжки [2–3].
На сегодняшний день существуют несколько нотаций для представления ER–диаграмм [1]:
1. Нотация Чена: сущность изображается прямоугольником, атрибут – овалом, соединенным со своей сущностью (идентифицирующий атрибут подчеркнут), а связь – ромбом, соединенным со связываемыми сущностями. Вид линии в месте соединения с сущностью определяет кардинальность связи («воронья лапка» – М, «крест» – 1). Имена сущности, атрибута и связи располагаются внутри их изображений (Рис. 1).
Рис. 1. Пример ER–диаграммы в нотации Чена.
2. Нотация Мартина: сущность изображается прямоугольником, внутри которого указано ее имя жирным шрифтом и список ее атрибутов (идентифицирующий атрибут подчеркнут), а связь – линией, название которой располагается над ней и ее вид в месте соединения с сущностью определяет кардинальность связи («воронья лапка» – М, «крест»– 1) (Рис. 2).
Рис. 2. Пример ER–диаграммы в нотации Мартина.
3. Нотация Баркера: сущность изображается прямоугольником, внутри которого указано ее имя жирным и список ее атрибутов (перед идентифицирующим атрибутом стоит #), а связь – линией, название которой располагается над ней и ее вид в месте соединения с сущностью определяет кардинальность связи («воронья лапка» – М, отсутствие – 1) (Рис. 3).
Рис. 3. Пример ER–диаграммы в нотации Баркера.
4. Нотация IDEFIX: сущность изображается прямоугольником, атрибут – овалом, соединенным со своей сущностью, а связь – ромбом, соединенным со связываемыми сущностями. Имена сущности, атрибута и связи располагаются внутри их изображений (Рис. 4.).
Рис. 4. Пример ER–диаграммы в нотации IDEFIX.
5. Нотация Бахмана: сущность изображается таблицей из одного столбца, столбцы которой являются атрибутами сущности (идентифицирующий атрибут выделен жирным шрифтом), а связь – стрелкой, соединяющей таблицы, направление которой указано на стороне М (Рис. 5).
Рис. 5. Пример ER–диаграммы в нотации Бахмана.
Выводы. В данной работе рассмотрено проектирование и построение инфологической модели данных. Приведены примеры построения ER–диаграмм в нотациях Чена, Мартина, Баркера, IDEFIX и Бахмана.