Суббота, 05.07.2025, 13:30
Элективный курс "Разработка баз данных для информационно-аналитических систем"
Приветствую Вас Гость | RSS
Главная Урок 5,6 Регистрация Вход
Меню сайта

Наш опрос
Оцените элективный курс
Всего ответов: 2

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Урок 5,6. Концептуальное проектирование.

Концептуальная схема — система взаимосвязанных по определенным правилам понятий (а не единичное понятие) и концепций.

Объект (процесс, явление) познаваемы человеком постольку, поскольку человек имеет дело с этими объектами, пытаясь решить какие-то задачи или проблемы.

Иными словами, степень глубины и предмет познания прямо зависят от того, как человек собирается использовать изучаемый объект в своей практической деятельности.

Следовательно, помимо собственно объекта имеется субъект и стоящая перед ним практически значимая задача. Именно она формирует точку зрения человека на объект. (см. Система отсчёта, Наблюдатель)

При воспроизведении этой точки зрения в явном виде выстраивается концептуальная схема — система взаимосвязанных понятий, необходимая и достаточная для описания требуемого аспекта объекта.

Пример

Архитектор, инженер, строитель, экономист, дизайнер, прораб, каменщик с разных сторон смотрят на проектируемое и возводимое их общими усилиями здание. Позиция каждого предопределена теми производственными задачами, которые ему необходимо решить в отношении этого здания. Соответственно и управление их деятельностью будет базироваться на совершенно разных информационных «портретах» (концептуальных схемах) строящегося объекта. Ясно, однако, что при этом необходимо учитывать смежные аспекты, иначе не получится правильного целого.

Концептуальные схемы предметной области можно описывать с помощью модели данных - Модель сущность-связь (ER-модель).

ER-модель используется,  предложенная П. Ченом в 1976 г., при высокоуровневом (концептуальном) проектировании баз данных. С её помощью можно выделить ключевые сущности и обозначить связи, которые могут устанавливаться между этими сущностями.

Во время проектирования баз данных происходит преобразование ER-модели в конкретную схему базы данных на основе выбранной модели данных (реляционной, объектной, сетевой или др.).

Реляционная модель - логическая модель данных, прикладная теория построения баз данных, которая является приложением к задачам обработки данных таких разделов математики как теории множеств и логика первого порядка.

На реляционной модели данных строятся реляционные базы данных.

Реляционная модель данных включает следующие компоненты:

·         Структурный аспект (составляющая) — данные в базе данных представляют собой набор отношений.

·  Аспект (составляющая) целостности — отношения (таблицы) отвечают определенным условиям целостности. РМД поддерживает декларативные ограничения целостности уровня домена (типа данных), уровня отношения и уровня базы данных.

·  Аспект (составляющая) обработки (манипулирования) — РМД поддерживает операторы манипулирования отношениями (реляционная алгебра, реляционное исчисление).

ER-модель представляет собой формальную конструкцию, которая сама по себе не предписывает никаких графических средств её визуализации. В качестве стандартной графической нотации, с помощью которой можно визуализировать ER-модель, была предложена диаграмма сущность-связь (ER-диаграмма) (англ. entity-relationship diagram, ERD).

Понятия ER-модель и ER-диаграмма часто ошибочно не различают, хотя для визуализации ER-моделей предложены и другие графические нотации.

Основные преимущества ER-моделей:

·         наглядность;

·         модели позволяют проектировать базы данных с большим количеством объектов и атрибутов;

·         ER-модели реализованы во многих системах автоматизированного проектирования баз данных (например, ERWin).

Основные элементы ER-моделей:

·         объекты (сущности);

·         атрибуты объектов;

·         связи между объектами.

Атрибут – это параметр данных, относящийся к их структурным свойствам, используемый для указания контекста данных или придания им смыслового значения.

Сущность — объект предметной области, имеющий атрибуты.

Связь между сущностями характеризуется:

·         типом связи (1:1, 1:N, N:М);

·         классом принадлежности. Класс может быть обязательным и необязательным. Если каждый экземпляр сущности участвует в связи, то класс принадлежности — обязательный, иначе — необязательный.

 

Нотация Питера Чена

Множества сущностей изображаются в виде прямоугольников, множества отношений изображаются в виде ромбов. Если сущность участвует в отношении, они связаны линией. Если отношение не является обязательным, то линия пунктирная. Атрибуты изображаются в виде овалов и связываются линией с одним отношением или с одной сущностью.

 

Crow's Foot

Данная нотация была предложена Гордоном Эверестом (англ. Gordon Everest) под названием Inverted Arrow («перевёрнутая стрелка»), однако сейчас чаще называемая Crow's Foot («воронья лапка») или Fork («вилка»).


Согласно данной нотации, сущность изображается в виде прямоугольника, содержащем её имя, выражаемое существительным. Имя сущности должно быть уникальным в рамках одной модели. При этом, имя сущности — это имя типа, а не конкретного экземпляра данного типа. Экземпляром сущности называется конкретный представитель данной сущности.

Связь изображается линией, которая связывает две сущности, участвующие в отношении. Степень конца связи указывается графически, множественность связи изображается в виде «вилки» на конце связи. Модальность связи так же изображается графически — необязательность связи помечается кружком на конце связи. Именование обычно выражается одним глаголом в изъявительном наклонении настоящего времени: «Имеет», «Принадлежит» и т. д.; или глаголом с поясняющими словами: «Включает в себя», и т.п. Наименование может быть одно для всей связи или два для каждого из концов связи. Во втором случае, название левого конца связи указывается над линией связи, а правого – под линией. Каждое из названий располагаются рядом с сущностью, к которой оно относится.

Атрибуты сущности записываются внутри прямоугольника, изображающего сущность и выражаются существительным в единственном числе (возможно, с уточняющими словами). Среди атрибутов выделяется ключ сущности — неизбыточный набор атрибутов, значения которых в совокупности являются уникальными для каждого экземпляра сущности.

Рассмотрим нормализацию и ее роль в проектировании реляционных баз данных.

Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.

Процесс преобразования отношений базы данных (БД) к виду, отвечающему нормальным формам, называется нормализацией. Нормализация предназначена для приведения структуры БД к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации. Как отмечает К. Дейт, общее назначение процесса нормализации заключается в следующем:

  • исключение некоторых типов избыточности;
  • устранение некоторых аномалий обновления;
  • разработка проекта базы данных, который является достаточно «качественным» представлением   реального мира, интуитивно понятен и может служить хорошей основой для последующего расширения;
  •        упрощение процедуры применения необходимых ограничений целостности.

Устранение избыточности производится, как правило, за счёт декомпозиции отношений таким образом, чтобы в каждом отношении хранились только первичные факты (то есть факты, не выводимые из других хранимых фактов).

Роль нормализации в проектировании реляционных баз данных.

При том, что идеи нормализации весьма полезны для проектирования баз данных, они отнюдь не являются универсальным или исчерпывающим средством повышения качества проекта БД. Это связано с тем, что существует слишком большое разнообразие возможных ошибок и недостатков в структуре БД, которые нормализацией не устраняются. Несмотря на эти рассуждения, теория нормализации является очень ценным достижением реляционной теории и практики, поскольку она даёт научно строгие и обоснованные критерии качества проекта БД и формальные методы для усовершенствования этого качества. Этим теория нормализации резко выделяется на фоне чисто эмпирических подходов к проектированию, которые предлагаются в других моделях данных. Более того, можно утверждать, что во всей сфере информационных технологий практически отсутствуют методы оценки и улучшения проектных решений, сопоставимые с теорией нормализации реляционных баз данных по уровню формальной строгости.

Нормализацию иногда упрекают на том основании, что «это просто здравый смысл», а любой компетентный профессионал и сам «естественным образом» спроектирует полностью нормализованную БД без необходимости применять теорию зависимостей. Однако, как указывает К. Дейт, нормализация в точности и является теми принципами здравого смысла, которыми руководствуется в своём сознании зрелый проектировщик, то есть принципы нормализации — это формализованный здравый смысл. Между тем, идентифицировать и формализовать принципы здравого смысла — весьма трудная задача, и успех в её решении является существенным достижением.

Нормальные формы

В создании и развитии теории нормализации принимали участие многие учёные. Однако первые три нормальные формы и концепцию функциональной зависимости предложил Э. Кодд

Первая нормальная форма (1NF) 

Переменная отношения находится в первой нормальной форме (1НФ) тогда и только тогда, когда в любом допустимом значении отношения каждый его кортеж содержит только одно значение для каждого из атрибутов.

В реляционной модели отношение всегда находится в первой нормальной форме по определению понятия отношение. Что же касается различных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в 1НФ.

Вторая нормальная форма (2NF)

Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме, и каждый неключевой атрибут неприводимо (функционально полно) зависит от ее потенциального ключа.

Третья нормальная форма (3NF)

Переменная отношения находится в третьей нормальной форме тогда и только тогда, когда она находится во второй нормальной форме, и отсутствуют транзитивные функциональные зависимости неключевых атрибутов от ключевых.

Нормальная форма Бойса — Кодда (BCNF)

Переменная отношения находится в нормальной форме Бойса — Кодда (иначе — в усиленной третьей нормальной форме) тогда и только тогда, когда каждая ее нетривиальная и неприводимая слева функциональная зависимость имеет в качестве своего детерминанта некоторый потенциальный ключ.

Четвёртая нормальная форма (4NF) 

Переменная отношения находится в четвёртой нормальной форме, если она находится в нормальной форме Бойса — Кодда и не содержит нетривиальных многозначных зависимостей.

Пятая нормальная форма (5NF)

Переменная отношения находится в пятой нормальной форме (иначе — в проекционно-соединительной нормальной форме) тогда и только тогда, когда каждая нетривиальнаязависимость соединения в ней определяется потенциальным ключом (ключами) этого отношения.

Доменно-ключевая нормальная форма (DKNF)

Шестая нормальная форма (6NF)

Введена К. Дейтом в его книге, как обобщение пятой нормальной формы для темпоральной базы данных.


Инструменты для создания ER-моделей

Существует множество инструментов для работы с ER-моделями, вот некоторые из них:

Название

Платформа

Лицензия

Microsoft Visio

Microsoft Windows

Проприетарная

MySQL Workbench

Кроссплатформенное ПО

Свободная (GNU GPL) / проприетарная (EULA)

OmniGraffle (англ.)

Mac OS X v10.5

Проприетарная

Oracle Designer (англ.)

Microsoft Windows

Проприетарная

PowerDesigner (англ.)

Microsoft Windows

Проприетарная

Rational Editor (англ.)

Кроссплатформенное ПО

Проприетарная

RISE Editor (англ.)

Microsoft Windows

Проприетарная / бесплатное ПО

Sparx Enterprise Architect (англ.)

Microsoft Windows, Linux, Mac OS X (с использованием CrossOver)

Проприетарная

SQL Maestro

Проприетарная

SQLyog

Microsoft Windows: 4.10+, NT

Бесплатное ПО / проприетарная (EULA)

StarUML (англ.)

Microsoft Windows

Свободная (модифицированный вариант GNU GPL)

System Architect (англ.)

Microsoft Windows

Проприетарная

Toad Data Modeler (англ.)


Практическое задание:

Спроектируйте, опираясь на отобранную информацию прошлого занятия, базу данных "Современные коммуникационные средства". Используйте знания, приобретенные на теоретической части урока.

Для контроля усвоенного материала ответьте на следующие вопросы:

1. Что такое концептуальная схема? 
2. Что такое ER-модель данных? Что такое сущность? 
3. Перечислите преимущества ER-моделей. 
4. Перечислите основные элементы ER-моделей. 
5. Перечислите типы связей между сущностями.

Поиск

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Copyright MyCorp © 2025 Бесплатный конструктор сайтовuCoz