Разработка базы данных "Организация работы судового агента Херсонского речпорта"

Анализ предметной области речного порта г. Херсона, построение концептуальной модели. Выделение атрибутов, типы связи между ними. Проектирование базы данных "Организация работы судового агента" с использованием программных средств Microsoft Accesses.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 02.12.2013
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

ВВЕДЕНИЕ

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

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

Основные функции СУБД - это описание структуры базы данных, обработка данных и управление данными.

Любая СУБД позволяет выполнять четыре простейшие операции с данными:

- добавить в таблицу одну или несколько записей;

- удалить из таблицы одну или несколько записей;

- обновить значения некоторых полей в одной или нескольких записях;

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

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

Важным преимуществом применения БД в информационных системах является обеспечение независимости данных от прикладных программ. Это дает возможность пользователям не заниматься проблемами представления данных на физическом уровне: размещение данных в памяти, методов доступа к ним и т.п.

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

За моделью данных СУБД (как и БД) разделяют на иерархических, сетевых, реляционных, объектно-ориентированые и другие типы. Некоторые СУБД могут одновременно поддерживать несколько моделей данных.

Объект исследования - речпорт Херсон.

Предмет исследования - организация работы судового агента.

РАЗДЕЛ 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ ИССЛЕДОВАНИЯ

1.1 Описание предметной области

Предметной областью называется часть реальной системы, предоставляющая интерес для данного исследования.

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

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

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

Херсонский речной порт -- расположен в устье реки Днепр, в 28 км от Днепро-Бугского лимана, на правом берегу реки Кошевая. Херсонский речной порт -- это единственный устьевой речной порт Днепра с круглогодичной навигацией. Порт находится вне шлюзов гидростанций Днепровского каскада, чем привлекает грузовладельцев. В данный момент порт производит перевалку внешнеторговых и транзитных грузов различной номенклатуры и принимает под обработку морские суда с осадкой до 4 м, а также суда типа «река -- море» -- направление перевозок в порты Чёрного и Средиземного морей. На причалах длиной около 1 км находится 10 портальных кранов грузоподъемностью от 5 до 20 тонн, 4 плавучих крана (два 5-ти тонных и два 16-ти тонных). Порт имеет практику рейдовой погрузки судов с осадкой до 7,6 м. На территории порта расположен крытый склад, способный накапливать до двух судовых партий для каждого грузовладельца. Номенклатура грузов разработана: лес, металл, кокс, уголь, металлолом, минеральные удобрения. Порт располагает всеми возможностями для комплексного обслуживания флота. Порт имеет самоходное судно водолей грузоподъемностью 800 тонн для круглосуточной бункеровки пресной воды. Развитие порта: В августе 1999 года введен в эксплуатацию новый склад для зерновых грузов. Предусмотрено удлинение причальной линии и расширение складского хозяйства. Для этой цели идет переоборудование двух затонов, что позволит переваливать дополнительные экспортные грузы.

Порт переваливает навалочные и генеральные грузы: прокат черных металлов, лес, бокситы, металлолом, уголь, кокс. Кроме традиционного для порта леса, в последнее время возрождается экспортный грузопоток металлолома. Металлолом чаще всего поставляется в Турцию и Италию. Ещё один традиционный для порта экспортный грузопоток -- металлопрокат производства комбината «Запорожсталь». На экспорт также перерабатывается 33-35 тыс. т. в месяц минеральных удобрений (российские селитра, нитроамофос, карбамид). Поставки осуществляются в страны Африки, Грецию. Из импортных товаров в порт приходят стройматериалы из Турции. Транзит составляют глина и свинец. Объём пассажирских перевозок на туристических и местных линиях до 1,2 млн. пассажиров в год.

В порту 7 причалов общей длиной 950 м. Порт имеет возможность погрузки судов с осадкой до 7,8 м у причалов №1-2 и до 5 м на причалах №3-7. Комплекс по переработке минеральных удобрений введен в эксплуатацию в 1999 г. Расположен на причале №2. Предназначен для приема и отправки минеральных гранулированных удобрений, как фасованных, так и навалом. Погрузка судов осуществляется как у причала, так и на рейде. У причала можно обрабатывать одно судно. Имеются машины для фасовки удобрений в мешки. Мощность комплекса -- до 30 тыс. т. в месяц. Перерабатывающая способность: при фасовке -- 800 т/сут., при погрузке на суда -- до 1500 т/сут. Комплекс позволяет единовременно хранить до 15 тыс. т грузов и обрабатывать 12 вагонов в сутки. В порту имеется речной вокзал. Принимаются речные пассажирские суда пассажировместимостью до 700 человек. Пассажирские перевозки (в основном на местных линиях) осуществляются с 18 марта по 10 ноября. В этот период в среднем бывает до 20 судозаходов в день. Имеется 8 причалов длиной по 60 м. Глубина у причальных стенок -- 4 м. На 14 пассажирских линиях работает 13 судов. Общая площадь открытых складов -- 9500 м2, крытых -- 2500 м2.

Конечно же, в Херсонский речной порт в основном заходят грузовые суда для погрузки или выгрузки груза. Грузовые суда разделяют на два основных класса - сухогрузные и наливные, к которым, в свою очередь, относятся суда различных типов и назначений.

Рассмотрим процесс захода судна в порт для погрузки (выгрузки)

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

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

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

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

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

Работа в речных портах устроенна так, что на одно судно могут загрузить только один груз. Это связано с многими факторами. Во-первых, в речные порты, как правило, заходят относительно небольшие суда. Во -вторых, суда, которые заходят в речные порта, как правило совершают короткие переходы (с одного порта в другой). Да и проверять данное судно легче, меньше документов оформлять.

В портовых документах, всегда указывается такие сведенья об инспекции: ФИО головы инспекции, количество человек, код инспекции.

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

1.2 Выделение атрибутов и объектов

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

Другой характеристикой связи является мощность связи (или степень связи). Мощность связи показывает, какое максимальное количество экземпляров данной сущности может участвовать в конкретной связи (точнее экземпляре связи). Поскольку мы рассматриваем бинарную связь, то ее характеризуют две кардинальности - для обеих сущностей участвующих в связи. Для связи «один к одному» мощность связи будет равна 1 и 1, для связей «один ко многим» - 1 и N (часто вместо N используется знак ? - «бесконечность» или просто символ «звездочка» ?*?), для связи «многие к одному» - N и 1, для связи «многие ко многим» - N и М.

Еще одной характеристикой связи является класс принадлежности сущности. Принадлежность сущности также является двусторонней характеристикой связи. Различают обязательный и необязательный класс принадлежности сущности. Необязательный класс принадлежности - не все экземпляры сущности обязаны участвовать в связи, обязательный тип принадлежности - все экземпляры сущности участвуют в данной связи. Обязательный класс принадлежности можно обозначать 1, а не обязательный класс - 0.

В данной работе будут рассматриваться бинарные связи.

Атрибут - это информационное отображение свойств объекта. Каждый объект характеризуется рядом основных атрибутов.

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

Потенциальный ключ. В одной сущности могут оказаться несколько атрибутов или наборов атрибутов, претендующих на роль первичного ключа. Такие претенденты называются потенциальными ключами (candidate key).

Ключи могут быть сложными, т. е. содержащими несколько атрибутов.

Для того чтобы стать первичным, потенциальный ключ должен удовлетворять ряду требований:

а) уникальность: два экземпляра не должны иметь одинаковых значений возможного ключа;

б) компактность: сложный возможный ключ не должен содержать ни одного атрибута, удаление которого не приводило бы к утрате уникальности;

в) содержательность: атрибуты первичного ключа не могут содержать нулевых значений;

г) постоянность: значение атрибутов ключа не должно меняться в течение всего времени существования экземпляра сущности.

Альтернативный ключ (Alternate Key) - это потенциальный ключ, не ставший первичным. Каждая сущность должна иметь по крайней мере один потенциальный ключ. Многие сущности имеют только один потенциальный ключ. Такой ключ становится первичным. Некоторые сущности могут иметь более одного возможного ключа. Тогда один из них становится первичным, а остальные - альтернативными ключами.

Рассмотрим типы связей между существующими атрибутами:

Номер судна -> название судна (N:1);

Номер судна -> водоизмещение судна (N:1);

Номер судна -> флаг (N:1);

Номер судна -> количество человек команды (N:1);

Номер судна -> название компании судовладельца (N:1);

Название судна -> водоизмещение судна (N:M);

Название судна -> флаг (N:M);

Название судна -> количество человек команды (N:M);

Название судна -> название компании судовладельца (N:M);

Водоизмещение судна -> флаг (N:M);

Водоизмещение судна -> количество человек команды (N:M);

Водоизмещение судна -> название компании судовладельца (N:M);

Флаг -> количество человек команды (N:M);

Флаг -> название компании судовладельца (1:N);

Количество человек команды->название компании судовладельца (N:M);

ФИО капитана -> серия и номер паспорта моряка (1:N);

ФИО капитана -> контактный телефон капитана (1:N);

ФИО капитана -> дата рождения капитана (N:M);

Серия и номер паспорта моряка -> контактный телефон капитана (1:1);

Серия и номер паспорта моряка -> дата рождения капитана (N:1);

Контактный телефон капитана -> дата рождения капитана (N:1);

ФИО агента -> контактный телефон агента (1:N);

ФИО агента -> идентификационный код (1:N);

ФИО агента -> стаж работы агента (N:M);

ФИО агента -> рекомендации (N:M);

Контактный телефон агента -> идентификационный код (1:1);

Контактный телефон агента -> стаж работы агента (N:1);

Контактный телефон агента -> рекомендации (N:1);

Идентификационный код -> стаж работы агента (N:1);

Идентификационный код -> рекомендации (N:1);

Стаж работы агента -> рекомендации (N:M);

ФИО головы инспекции -> количество человек (N:M);

ФИО головы инспекции -> код инспекции (1:N);

Количество человек -> код инспекции (1:N);

Наименование груза -> вес (N:M);

Наименование груза -> шифр груза (1:N);

Наименование груза -> место доставки (N:M);

Вес -> шифр груза (1:N);

Вес -> место доставки (N:M);

Шифр груза -> место доставки (N:1).

На основании рассмотренных связей между атрибутами можно выделить такие объекты:

1. Объект Судно с такими атрибутами:

Номер судна -> название судна (N:1);

Номер судна -> водоизмещение судна (N:1);

Номер судна -> флаг (N:1);

Номер судна -> количество человек команды (N:1);

Номер судна -> название компании судовладельца (N:1);

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

2. Объект Капитан судна с такими атрибутами:

ФИО капитана -> серия и номер паспорта моряка (1:N);

ФИО капитана -> контактный телефон капитана (1:N);

ФИО капитана -> дата рождения капитана (N:M);

Серия и номер паспорта моряка -> контактный телефон капитана (1:1);

Серия и номер паспорта моряка -> дата рождения капитана (N:1);

Контактный телефон капитана -> дата рождения капитана (N:1).

Таким образом, для объекта Капитан судна в роли первичного ключа может выступать один из таких атрибутов: контактный телефон капитана, серия и номер паспорта моряка. Так как первичный ключ должен быть только один, то назначается первичным ключом атрибут серия и номер паспорта моряка. Атрибут контактный телефон капитана будит выступать в роли альтернативного ключа.

3. Объект Судовой агент с такими атрибутами:

ФИО агента -> контактный телефон агента (1:N);

ФИО агента -> идентификационный код (1:N);

Контактный телефон агента -> идентификационный код (1:1);

Контактный телефон агента -> стаж работы агента (N:1);

Контактный телефон агента -> рекомендации (N:1);

Идентификационный код -> стаж работы агента (N:1);

Идентификационный код -> рекомендации (N:1).

Таким образом, для объекта Судовой агент в роли первичного ключа может выступать один из таких атрибутов: контактный телефон агента, идентификационный код. Так как первичный ключ должен быть только один, то назначается первичным ключом атрибут идентификационный код. Атрибут контактный телефон агента будит выступать в роли альтернативного ключа.

4. Объект Инспекция с такими атрибутами:

ФИО головы инспекции -> код инспекции (1:N);

Количество человек -> код инспекции (1:N);

Для объекта Инспекция первичным ключом назначается атрибут код инспекции.

5. Объект Груз с такими атрибутами:

Наименование груза -> шифр груза (1:N);

Вес -> шифр груза (1:N);

Вес -> место доставки (N:M);

Шифр груза -> место доставки (N:1).

Для объекта Груз первичным ключом назначается атрибут шифр груза.

Судно может зайти в порт как для погрузки, так и для выгрузки. В данной работе рассмотрен вариант , когда судно заходит для погрузки.

Данные объекты связаны отношениями:

Капитан судна управляет Судном.

Судовой агент оформляет документы на Груз.

Инспекция проводит проверку Судна.

Груз загружают на Судно.

Установим тип связи между объектами. Зная, что тип связи между объектами это тип связи между их ключами, будем иметь:

серия и номер паспорта моряка -> номер судна (1:1).

Значит тип связи между объектами Капитан судна и Судно «один к одному». Это так, потому что на один капитан может управлять одним кораблём в данном рейсе. И на судне в конкретном рейсе может быть только один капитан.

Идентификационный код -> шифр груза (1:N).

Тип связи между объектами Судовой агент и Груз «один ко многим». Это так, потому что, агент, за время работы может оформить документы на погрузку нескольких различных грузов на разные суда. И в то самое время конкретный груз оформляется одним агентом.

Код инспекции -> номер судна (1:N).

Тип связи между объектами Инспекция и Судно «один ко многим». Это так, потому что, инспекция за время своей работы может проводить проверку на разных судах. И в то самое время, одно конкретное судно проверяет только одна инспекция.

Шифр груза -> номер судна (1:1).

Значит тип связи между объектами Груз и Судно «один к одному». Это очевидно, так как на одно судно может быть загружен только один груз, на который сделанные документы. И в то самое время, один конкретный груз может быть погружен только на одно конкретное судно, которое имеет документы на этот груз.

Представим вышесказанное концептуальной моделью (рис.1.1).

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

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

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

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

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

Судно

Размещено на http://www.allbest.ru/

Капитан судна

Название судна

Номер судна

Флаг

ФИО капитана

Количество человек команды

Серия и номер паспорта моряка

Водоизмещение судна

Контактный телефон капитана

Название компания судовладельца

дата рождения капитана

Размещено на http://www.allbest.ru/

Груз

Размещено на http://www.allbest.ru/

Инспекция

Наименования груза

ФИО головы инспекции

Вес

Код инспекции

Шифр груза

Количество человек

Место доставки

Дата проведения инспекции

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Судовой агент

ФИО агента

Идентификационный код

Стаж работы агента

Контактный телефон агента

Рекомендации

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

РАЗДЕЛ 2. ОПИСАНИЕ МАТЕМАТИЧЕСКОЙ МОДЕЛИ

2.1 Цели и методы проектирования

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

Основные задачи:

- Обеспечение хранения в БД всей необходимой информации.

- Обеспечение возможности получения данных по всем необходимым запросам.

- Сокращение избыточности и дублирования данных.

- Обеспечение целостности базы данных.

Основные этапы проектирования баз данных:

1) Концептуальное (инфологическое) проектирование -- построение семантической модели предметной области, то есть информационной модели наиболее высокого уровня абстракции. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных. Термины «семантическая модель», «концептуальная модель» и «инфологическая модель» являются синонимами. Кроме того, в этом контексте равноправно могут использоваться слова «модель базы данных» и «модель предметной области» (например, «концептуальная модель базы данных» и «концептуальная модель предметной области»), поскольку такая модель является как образом реальности, так и образом проектируемой базы данных для этой реальности.

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

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

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

На этапе логического проектирования учитывается специфика конкретной модели данных, но может не учитываться специфика конкретной СУБД.

3) Нормализация

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

Таблица считается нормализованной, если находится в НФБК.

Нормальная форма Бойса-Кодда -- одна из возможных нормальных форм отношения в реляционной модели данных.

Переменная отношения находится в BCNF тогда и только тогда, когда каждая её нетривиальная и неприводимая слева функциональная зависимость имеет в качестве своего детерминанта некоторый потенциальный ключ[1].

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

Для определения НФБК следует понимать понятие функциональной зависимости атрибутов отношения.

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

В данной работе будит выполнено ER- проектирование

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

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

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

Алгоритм ER-проектирования:

1) Строится ER-диаграмма экземпляров сущности для рассматриваемой бинарной связи.

2) На основании шага 1 строится ER-диаграмма типа для бинарной связи.

3) Выбирается правило проектирования в зависимости от типа связи и классов принадлежности.

4) На основании правила генерируется необходимое количество таблиц и доказывается, что каждая полученная таблица находится в НФБК.

Если хотя бы одна из таблиц не будет находится в НФБК, то это значит, что на предыдущем шаге проектирования была допущена ошибка.

Правило №1: если тип связи между двумя сущностями «один к одному» и класс принадлежности каждой сущности является обязательным, то достаточным является построение одного отношения, причем первичным ключом может выступать ключ любой из сущности.

Правило №2: если тип связи между двумя сущностями «один к одному» и класс принадлежности одной сущности является обязательным, а другой нет, то генерируется два отношения - под каждую сущность с ключом этой сущности плюс ключ сущности с необязательным классом принадлежности добавляется в отношение для сущности с обязательным классом принадлежности.

Правило №3: если тип связи между сущностями «один к одному» и класс принадлежности каждой сущности не обязателен, то генерируется 3 отношения - по одному под каждую сущность, с ключом этой сущности, и одно для связи, которая среди своих атрибутов имеет ключи обеих сущностей.

Правило №4: если тип связи между двумя сущностями равен (1:N) «один ко многим» и класс принадлежности N-связной сущности обязателен, то генерируется две таблицы: по одной под каждую сущность с ключом этой сущности плюс ключ односвязной сущности добавляется в качестве не ключевого атрибута в отношение N-связной сущности.

Правило №5: если тип связи между двумя сущностями (1:N) «один ко многим» и класс принадлежности N-связной сущности не обязателен требуется построить 3 реляционных таблицы - по одной под каждую сущность с ключом этой сущности и одна под связь с ключом одной из сущности.

Правило №6: если тип связи между двумя сущностями (M:N) «многие ко многим», то требуется построить три отношения- по одному под каждую сущность с ключом этой сущности и одно для связи, с ключами обеих сущностей.

2.2 Построение ER-диаграмм для бинарных связей

ER-диаграмма экземпляров сущностей Капитан судна и Судно показана на рис. 2.1.

Серия и номер паспорта моряка

Номер судна

АЕ957712

VTO1256

AA673423

VTR8754

FD987615

NTY9817

FW561423

NTR8722

CV178717

NRS8715

FW223465

NTW1209

FG234517

VTR1717

DR123519

VVR8911

Рис. 2.1 - ER-диаграмма экземпляров сущностей Капитан судна и Судно

Размещено на http://www.allbest.ru/

Рис. 2.2 - ER-диаграмма типа для бинарной связи Капитан судна управляет Судном

ER-диаграмма экземпляров сущностей Груз и Судно представлена на Рис. 2.3.

Шифр груза Номер судна

marin12 VTO1256

cub55 VTR8754

marin76 NTY9817

init89 NTR8722

latin91 NRS8715

mgo19 NTW1209

dark12 VTR1717

ams34 VVR8911

Рис. 2.3 - ER-диаграмма экземпляров сущностей Груз и Судно

Размещено на http://www.allbest.ru/

Рис. 2.4-ER-диаграмма типа для бинарной связи Груз загружают на Судно

ER-диаграмма экземпляров сущностей Судовой агент и Груз представлена на Рис. 2.5.

Идентификационный код Шифр груза

8712234591 marin12Размещено на http://www.allbest.ru/

4512321237 cub55

5678901231 marin76

6678901124 init89

4544124587 latin91

mgo19

dark12

ams34

Рис. 2.3 - ER-диаграмма экземпляров сущностей Судовой агент и Груз

Размещено на http://www.allbest.ru/

Рис. 2.6 - ER-диаграмма типа для бинарной связи Судовой агент оформляет документы на Груз

ER-диаграмма экземпляров сущностей Инспекция и Судно представлена на Рис. 2.7.

Код инспекции Номер судна

1289fx VTO1256

8234ff VTR8754

7809sd NTY9817

4561wq NTR8722

4787fo NRS8715

NTW1209

VTR1717

VVR8911

Рис. 2.7-ER-диаграмма экземпляров сущностей Инспекция и Судно

Размещено на http://www.allbest.ru/

Рис. 2.8 - ER-диаграмма типа для бинарной связи Инспекция проводит проверку на Судне

2.3 Нормализация отношений

Исходя из анализа ER-диаграммы типа для бинарной связи Капитан судна управляет Судном, для нормализации этого отношения нужно применить Правило №1 ER-проектирования. В итоге получим таблицу 2.1 Капитан-Судно. В качестве ключевого будет, принят атрибут номер судна

Таблица 2.1

Капитан-судно

Название судна

Номер судна

Водоизмещение судна

Количество человек команды

Флаг

Название компания судовладельца

ФИО капитана

Серия и номер паспорта моряка

Контактный телефон

Дата рождения

Скандинавия

VTO1256

10000

15

Укр

УКРРЕЧФЛОТ

Петров В.Г

AA673423

0998547812

23.17.71

Лена

VTR8754

20000

15

Укр

УКРРЕЧФЛОТ

Савиков П.П

АЕ957712

0961025785

12.12.69

Давинчи

NTY9817

10000

12

Укр

УКРРЕЧФЛОТ

Петров В.Г

FD987615

0958741235

10.02.74

Альбрус

NTR8722

3500

12

Укр

УКРРЕЧФЛОТ

Чурбак А.С

FW561423

0971485212

11.12.75

Скандинавия

NRS8715

5000

20

Укр

МУРАМП

ПетренкоВ.А

CV178717

0997541235

11.03.67

Лена

NTW1209

7000

10

Росс

Россимпорт

Мурамцев П.А

FW223465

07961214578

12.12.69

Восход

VTR1717

10000

12

Укр

Черномор

Сидров П.П

FG234517

0993654128

23.17.71

Апалачи

VVR8911

3500

15

Герман

Вавилон

Леймец

DR123519

0900741254

11.03.67

Таблица 2.2

Капитан - Судно - Груз

Название судна

Номер судна

Водоизм. судна

К-во чел. команды

Флаг

Назв. компания судовладельца

ФИО капитана

Серия и № паспорта мор.

Контактный телефон

Дата рождения

Наименования груза

Вес

Шифр груза

Место доставки

Скандинавия

VTO1256

10000

15

Укр

УКРРЕЧФЛОТ

Петров В.Г

AA673423

0998547812

23.17.71

Зерно

100

marin12

Турция

Лена

VTR8754

20000

15

Укр

УКРЕЧФЛОТ

Савиков П.П

АЕ957712

0961025785

12.12.69

Зерно

80

cub55

Турция

Давинчи

NTY9817

10000

12

Укр

УКРРЕЧФЛОТ

Петров В.Г

FD987615

0958741235

10.02.74

Зерно

150

marin76

Россия

Альбрус

NTR8722

3500

12

Укр

УКРРЕЧФЛОТ

Чурбак А.С

FW561423

0971485212

11.12.75

Лес

200

init89

Казахстан

Скандинавия

NRS8715

5000

20

Укр

МУРАМП

ПетренкоВ.А

CV178717

0997541235

11.03.67

Железобетон

200

latin91

Иран

Лена

NTW1209

7000

10

Росс

Россимпорт

Мурамцев П.А

FW223465

07961214578

12.12.69

Зерно

100

mgo19

Иран

Восход

VTR1717

10000

12

Укр

Черномор

Сидров П.П

FG234517

0993654128

23.17.71

Зерно

90

dark12

Турция

Апалачи

VVR8911

3500

15

Герм.

Вавилон

Леймец

DR123519

0900741254

11.03.67

Зерно

80

ams34

Германия

Функциональные зависимости:

Номер судна -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компании судовладельца.

Номер судна<-> Серия и номер паспорта моряка.

Номер судна -> ФИО капитана, Контактный телефон, Дата рождения.

Серия и номер паспорта моряка -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Серия и номер паспорта моряка -> ФИО капитана, Контактный телефон, Дата рождения.

Детерминанты: Номер судна, серия и номер паспорта моряка.

Возможный ключ: Номер судна, серия и номер паспорта моряка.

Значит, таблица Капитан-судно находится в НФБК.

Исходя из анализа ER-диаграммы типа для бинарной связи Груз загружают на Судно, для нормализации этого отношения нужно применить Правило №1 ER-проектирования. То есть получается что таблица Капитан -судно будит дополнена атрибутами объекта Груз. В результате получим таблицу 2.2 Капитан-Судно -Груз.

Функциональные зависимости:

Номер судна -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Номер судна<-> Серия и номер паспорта моряка.

Номер судна -> ФИО капитана, Контактный телефон, Дата рождения.

Серия и номер паспорта моряка -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Серия и номер паспорта моряка -> ФИО капитана, Контактный телефон, Дата рождения.

Номер судна<-> шифр груза.

Серия и номер паспорта моряка <-> шифр груза.

Шифр груза -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Шифр груза -> ФИО капитана, Контактный телефон, Дата рождения.

Шифр груза -> наименование груза, вес, место доставки.

Номер судна-> наименование груза, вес, место доставки.

Серия и номер паспорта моряка -> наименование груза, вес, место доставки.

Детерминанты: Номер судна, серия и номер паспорта моряка, шифр груза.

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

Значит, таблица Капитан-Судно-Груз находится в НФБК.

Исходя из анализа ER-диаграммы типа для бинарной связи Судовой агент оформляет документы на Груз , для нормализации этого отношения нужно применить Правило №4 ER-проектирования. В итоге получаем, что нужно таблицу 2.2 Капитан-Судно-Груз дополнить ключевым атрибутом объекта Судовой агент и таблицу 2.3. Судовой агент.

Таблица 2.3

Судовой агент

ФИО агента

Идентификационный код

Стаж работы агента

Контактный телефон агента

Рекомендации

Сидоров П.А

8712234591

3

0994567896

Позитивные

Попов В.Г

4512321237

3

0957854102

Позитивные

Сидцов А.Г

5678901231

5

0964541002

Позитивные

Попов В.Г

6678901124

3

0998574595

Позитивные

Сидоров П.А

4544124587

8

0967896524

Негативный

Функциональные зависимости:

Идентификационный код -> ФИО агента, стаж работы агента, рекомендации.

Идентификационный код <-> контактный телефон агента.

Контактный телефон агента -> ФИО агента, стаж работы агента, рекомендации.

Детерминанты: Идентификационный код, контактный телефон агента.

Возможный ключ: Идентификационный код, контактный телефон агента.

Значит, таблица Судовой агент находится в НФБК.

Функциональные зависимости:

Номер судна -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца

Номер судна<-> Серия и номер паспорта моряка.

Номер судна -> ФИО капитана, Контактный телефон, Дата рождения.

Номер судна -> Идентификационный код

Серия и номер паспорта моряка -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Серия и номер паспорта моряка -> ФИО капитана, Контактный телефон, Дата рождения.

Серия и номер паспорта моряка -> Идентификационный код.

Номер судна<-> шифр груза.

Серия и номер паспорта моряка <-> шифр груза.

Шифр груза -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца.

Шифр груза -> Идентификационный код.

Шифр груза -> ФИО капитана, Контактный телефон, Дата рождения.

Шифр груза -> наименование груза, вес, место доставки.

Номер судна-> наименование груза, вес, место доставки.

Серия и номер паспорта моряка -> наименование груза, вес, место доставки.

Таблица 2.4

Капитан - Судно - Груз

Название судна

№ судна

Водо-изм. судна

К-во чел.

Флаг

Название комп. судо-владельца

ФИО капитана

Серия и № паспорта моряка

Контактный телефон

Дата рождения

Наим. груза

Вес

Шифр груза

Место доставки

Идентифик. код

Скандинавия

VTO1256

10000

15

Укр

УКРРЕЧФЛОТ

Петров В.Г

AA673423

0998547812

23.17.71

Зерно

100

marin12

Турция

8712234591

Лена

VTR8754

20000

15

Укр

УКРРЕЧФЛОТ

Савиков П.П

АЕ957712

0961025785

12.12.69

Зерно

80

cub55

Турция

8712234591

Давинчи

NTY9817

10000

12

Укр

УКРРЕЧФЛОТ

Петров В.Г

FD987615

0958741235

10.02.74

Зерно

150

marin76

Россия

4512321237

Альбрус

NTR8722

3500

12

Укр

УКРРЕЧФЛОТ

Чурбак А.С

FW561423

0971485212

11.12.75

Лес

200

init89

Казахстан

4512321237

Скандинавия

NRS8715

5000

20

Укр

МУРАМП

ПетренкоВ.А

CV178717

0997541235

11.03.67

Железо-бетон

200

latin91

Иран

5678901231

Лена

NTW1209

7000

10

Росс

Россимпорт

Мурамцев П.А

FW223465

07961214578

12.12.69

Зерно

100

mgo19

Иран

6678901124

Восход

VTR1717

10000

12

Укр

Черномор

Сидров П.П

FG234517

0993654128

23.17.71

Зерно

90

dark12

Турция

6678901124

Апалачи

VVR8911

3500

15

Герман

Вавилон

Леймец

DR123519

0900741254

11.03.67

Зерно

80

ams34

Германия

4544124587

база данный судовой речной

Детерминанты: Номер судна, серия и номер паспорта моряка, шифр груза.

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

Значит, таблица Капитан-Судно-Груз находится в НФБК.

Исходя из анализа ER-диаграммы типа для бинарной связи Инспекция проводит проверку на Судне, для нормализации этого отношения нужно применить Правило №4 ER-проектирования. В итоге получаем, таблица 2.5 Инспекция, и таблица Капитан-Судно-Груз (см.табл.2.4) будит дополнен ключом объекта Инспекция.

Таблица 2.5

Инспекция

ФИО головы инспекции

Код инспекции

Количество человек

Слепаков В.В

1289fx

5

Попов А.А

8234ff

7

Андрусов П.П

7809sd

10

Слепаков В.В

4561wq

7

Попов А.А

4787fo

5

Функциональные зависимости:

Код инспекции -> ФИО головы инспекции, количество человек.

Детерминанты: код инспекции.

Возможный ключ: код инспекции.

Значит, таблица Инспекция находится в НФБК.

Функциональные зависимости:

Номер судна -> Название судна, водоизмещение судна, Количество человек команды, флаг, название компания судовладельца

Номер судна<-> Серия и номер паспорта моряка.

Номер судна -> ФИО капитана, Контактный телефон, Дата рождения.

Номер судна -> Идентификационный код, код инспекции.

Таблица 2.6

Капитан - Судно - Груз

Название судна

Номер судна

Водо-изм. судна

К-во чел. команды

Флаг

Название компания судо-владельца

ФИО капитана

Серия и номер паспорта моряка

Контакт. телефон

Дата рожд.

Наимен. груза

Вес

Шифр груза

Место доставки

Идентиф. код

Код инспекции

Скандинавия

VTO1256

10000

15

Укр

УКРРЕЧФЛОТ

Петров В.Г

AA673423

0998547812

23.12.71

Зерно

100

marin12

Турция

8712234591

1289fx

Лена

VTR8754

<...

Подобные документы

  • Создание базы данных, где будет храниться, обрабатываться вся необходимая информация. Построение с помощью CASE-средства Microsoft Visio концептуальной модели, дающая возможность отображения всех выделенных сущностей, их атрибутов и связи между ними/

    курсовая работа [514,4 K], добавлен 29.11.2008

  • Построение инфологической (концептуальной) модели предметной области. Проектирование логической и физической структуры базы данных. Реализация проекта в среде конкретной СУБД. Организация корректировки и ввода данных в БД. Разработка интерфейса.

    курсовая работа [1,4 M], добавлен 14.01.2018

  • Анализ предметной области - магазин "Канцелярские товары". Проектирование и реализация базы данных в MS SQL Server. Перечень хранимой информации: таблицы, поля, типы. Моделирование предметной области. Выделение сущностей, атрибутов, ключей, связей.

    курсовая работа [2,2 M], добавлен 05.02.2015

  • Создание концептуальной (инфологической) модели системы, которая позволила описать сущности предметной области и отношения между ними. Диаграммы функциональных зависимостей атрибутов сущностей базы данных. Разработка программного обеспечения для ЭВМ.

    курсовая работа [877,8 K], добавлен 28.05.2012

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

    курсовая работа [2,5 M], добавлен 10.01.2016

  • Определение предметной области базы данных ("Сеть ресторанов"), виды ее моделирования. Первоначальный набор сущностей и атрибутов предметной области. Процесс смыслового наполнения базы данных. Атрибуты в концептуальной модели. Характеристика видов связей.

    контрольная работа [510,9 K], добавлен 03.12.2014

  • Построение инфологической концептуальной модели предметной области. Структура базы данных Microsoft Office Access. Формы, запросы и отчеты. Создание форм, запросов и отчетов в базах данных. Схема данных физической и логической сущности в Erwin 4.0.

    курсовая работа [5,1 M], добавлен 13.12.2011

  • Анализ предметной области. Проектирование концептуальной модели. Разработка логической структуры базы данных. Выделение информационных объектов. Создание глобальной схемы связей. Поддержка целостности данных. Структура и назначение существующих форм.

    курсовая работа [1,4 M], добавлен 23.09.2016

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

    курсовая работа [188,6 K], добавлен 15.07.2012

  • Разработка клиентского приложения для работы с базой данных (БД) санатория. Классификации БД и приложений для работы с ними. Алгоритмическое и программное конструирование БД. Описание объектов предметной области, их атрибутов и связей между ними.

    курсовая работа [1,9 M], добавлен 08.01.2014

  • Системный анализ предметной области. Построение концептуальной и даталогичной модели базы данных. Физическое проектирование базы данных. Описание функциональной модели системы управления базами данных. Разработка экранных форм ввода-вывода и отчета.

    курсовая работа [1,1 M], добавлен 09.12.2014

  • Выделение объектов предметной области и взаимосвязей между ними. Разработка ER-модели на логическом уровне с использованием системы Erwin Data Modeler. Проектирование даталогической и реляционной модели в среде выбранной системы управления базами данных.

    курсовая работа [905,6 K], добавлен 26.12.2013

  • Построение концептуальной модели базы данных. Физическое проектирование программы для автоматизации работы пользователя в Microsoft Access. Разработка системы запросов информации на основе таблиц и получения необходимых отчетов в требуемых формах.

    курсовая работа [2,9 M], добавлен 08.05.2015

  • Анализ предметной области с использованием моделей методологии ARIS и разработка ER-диаграммы. Описание входной и выходной информации для проектирования реляционной базы данных. Разработка управляющих запросов и связей между ними с помощью языка SQL.

    курсовая работа [975,2 K], добавлен 30.01.2014

  • Базы данных - важнейшая составная часть информационных систем. Проектирование базы данных на примере предметной области "Оргтехника". Сбор информации о предметной области. Построение информационно-логической модели данных. Разработка логической структуры.

    курсовая работа [318,6 K], добавлен 24.12.2014

  • Системный анализ предметной области. Разработка концептуальной модели базы данных. Построение схемы функциональных зависимостей. Создание таблиц базы данных в Database Desktop и псевдонима в BDE Administrator. Разработка алгоритма работы программы.

    курсовая работа [911,3 K], добавлен 20.12.2014

  • Создание базы данных для информационной системы "Грузоперевозки". Анализ предметной области, разработка концептуальной и логической модели базы данных, с использованием средства MS Micrоsоft SQL Server 2005, реализация физического проектирования базы.

    курсовая работа [1,3 M], добавлен 01.07.2011

  • Анализ предметной области. Перечень хранимой информации: таблицы, поля, типы. Выделение сущностей, атрибутов, ключей, связей. Начальное заполнение данными БД. Создание и запуск базовых запросов. Проектирование базы данных в среде Enterprise Architect.

    курсовая работа [1,6 M], добавлен 16.02.2016

  • Разработка концептуальной модели базы данных "Чемпионат авто": описание предметной области, каталог задач, описание таблиц, схема данных, ER-диаграмма. Проектирование реляционной модели "Спортивный комплекс". Реализация и результат работы базы данных.

    курсовая работа [3,7 M], добавлен 14.06.2011

  • Разработка базы данных для компании, занимающейся авиагрузоперевозками, снабженной средствами идентификации пользователей. Описание ее предметной области и функций. Разработка интерфейса программы. Построение концептуальной и реляционной модели БД.

    курсовая работа [2,1 M], добавлен 15.06.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.