Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовые работы / РАЗРАБОТКА БАЗЫ ДАННЫХ / Пояснительная записка лукешин2.docx
Скачиваний:
48
Добавлен:
28.01.2014
Размер:
804.69 Кб
Скачать

1.2 Концептуальная модель предметной области

Концептуальная модель - это определённое множество понятий и связей между ними, являющихся смысловой структурой рассматриваемой предметной области.

Концептуальная модель - модель предметной области, состоящей из перечня взаимосвязанных понятий, используемых для описания этой области, вместе со свойствами и характеристиками, классификацией этих понятий, по типам, ситуациям, признакам в данной области и законов протекания процессов в ней.

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

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

Рассмотрим некоторые средства концептуального моделирования.

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

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

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

Концептуальная модель реализуемой базы данных строилась по принципу "Сущность - связь", которая предполагает следующее:

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

  • представляем каждую связь вида "M:M", "1:M" и "1:1" и т.д. между сущностями, как таблицу;

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

  • представляем каждое свойство как поле в таблице, представляющей сущность, которая непосредственно описывается этим свойством;

  • указываем ограничения целостности проектируемой базы данных.

Сущность, с помощью которой моделируется класс однотипных объектов, определяется как "предмет, который может быть четко идентифицирован". Также как каждый объект уникально характеризуется набором значений свойств, сущность должна определяться таким набором атрибутов, который позволял бы различать отдельные экземпляры сущностей. Каждый экземпляр сущности должен быть отличим от любого другого экземпляра той же сущности (это требование аналогично требованию отсутствия кортежей-дубликатов в реляционных таблицах). Уникальным идентификатором сущности может являться атрибут, комбинация атрибутов, комбинация связей или комбинация связей и атрибутов, однозначно отличающая любой экземпляр сущности от других экземпляров сущности того же типа.

Сущность имеет имя, уникальное в пределах модели. При этом имя сущности - это имя типа, а не некоторого конкретного экземпляра.

Сущности подразделяются на сильные и слабые. Сущность является слабой, если ее существование зависит от другой сущности - сильной по отношению к ней.

Природа свойства, как и характер связи свойства с сущностью (объектом), может быть различной. Рассмотрим основные виды свойств.

Свойство может быть множественным или единичным - т.е. атрибут, задающий свойство, может одновременно иметь несколько значений или, соответственно, только одно.

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

В некоторых случаях полезно различать базовые и производные свойства. Если наличие некоторого свойства для всех экземпляров сущности не является обязательным, то такое свойство называется условным. Значения свойств могут быть постоянными - статистическими или динамическими, т.е. меняться со временем. Свойство может быть неопределенным, если оно является динамическим, но его текущее значение еще не задано.

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

Атрибут характеризует размер или тип информации, содержащейся в поле.

Кроме связи между объектом и его свойствами, концептуальная модель отражает связи между объектами разных классов. Связь определяется как "ассоциация, объединяющая несколько сущностей". Эта ассоциация всегда может существовать между разными сущностями или между сущностью и ею же самой (рекурсивная связь).

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

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

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

Количественный характер участия сущностей (один или многие) задается типом связи (или мощностью связи). Возможны следующие типы: "один к одному" (1:1), "один ко многим" (1:М), "многие к одному" (М:1), "многие ко многим" (М:М).

В данном проекте были реализованы такие связи как: "один ко многим" и "многие к одному".

Рисунок 3 - Схема данных

Данная схема данных базы данных соответствует следующим требованиям:

  1. Физическая целостность, т. е. сохранность информации на магнитных носителях и корректность форматов данных.

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

  3. Актуальность данных, т. е. соответствие данных реальному положению вещей.

  4. Каскадное обновление данных.

  5. Каскадное удаление данных.

1.3 Анализ модели с учётом информационных потребностей пользователей

При проектировании базы данных решаются две основные проблемы:

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

  2. Обеспечение эффективного выполнения запросов к базе данных, т.е. рациональное расположение данных во внешней памяти, создание полезных дополнительных структур (например, индексов) с учетом особенностей конкретной СУБД. Эту проблему называют проблемой физического проектирования баз данных.

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

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

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

В ходе анализа предметной области необходимо:

  1. уяснить и указать назначение базы данных;

  2. определить и выделить первоначальный набор сущностей и атрибутов предметной области.

Будущая база данных должна выполнять следующие задачи:

  • систематизированное хранение информации;

  • выдача информации по запросу пользователя;

  • обеспечивать оперативный доступ, изменение и удаление информации.

Рисунок 4 - Главная форма

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

Форма "Модели", позволяет просматривать и добавлять записи из главной таблицы базы данных, так же в ней реализован переход по записям.

Рисунок 5 - Форма таблицы "Модели"

Форма "Производители" так же позволяет выполнять функции просмотра, редактирования и добавления записей из соответствующих таблиц, и представлены на рисунке 6.

Рисунок 6 - Форма "Производители"

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

Рисунок 7 – Отчёт

Все таблицы имеющиеся в проекте имеют поле "Код", которое имеет тип данных "Счетчик" и используется в качестве первичного ключа. Использование вторичного ключа не считаю целесообразным, т.к. этого не требует выбранная схема данных. Ниже на рисунке 8 приведена главная таблица, открытая с помощью режима конструктор, с установленным полем "Код" в качестве первичного ключа.

Рисунок 8 - Режим конструктора для главной таблицы

Вся база данных состоит из следующих таблиц:

  • Модели - хранит название модели, ряд, фирму конструктор и производительность;

  • Производители - хранит фирму производителя и страну производителя;

  • Модельный ряд - хранит модельный ряд, фирму конструктор и год раз работки;

  • Периферия - хранит периферийный блок, производитель, периферийные устройства;

  • Производительность - хранит класс производительности, частоту оп/сек, многозадачность, расширение.