Анализ информационных потоков, выбор модели




Содержание

Введение

1. Разработка требования к базе данных

1.1 Постановка задачи

1.2 Анализ информационных потоков, выбор модели

2. Проектная часть

2.1 Проектирование базы данных

2.2 Создание базы данных

2.3 Программирование

Заключение

Список использованной литературы


Введение

 

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

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

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

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

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


Разработка требования к базе данных

 

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

. Постановка задачи.

2. Анализ информационных потоков, выбор модели.

Постановка задачи

 

В рамках выполнения курсовой работы требуется разработать базу данных "Автостанция".

А. Входные документы.

Аl. Расписание рейса

А2. Сведения о покупателях

В. Выходные документы.

B1. Сведения о свободных местах на рейс

B2. Сведения о продаже билетов

Реквизиты:

Номер рейса, Пункт отправления, Пункт назначения, Дата отправления, Номер автобуса, Основной водитель, Сменный водитель, Количество мест, Проданные места на момент отправления, ФИО водителя, Номер водителя, Дата, Время в пути, Регистрационный номер проданного билета, Номер рейса, Дата отправления, Пункт назначения, Стоимость билета.

Необходима реализация следующих запросов:

выдать информацию о наличии свободного билета на рейс;

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


Анализ информационных потоков, выбор модели

 

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

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

 

Рис.1. Пример взаимосвязи информационных потоков

 

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

Рассмотрим входной документ "Расписание рейса"

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

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

. К заверительной части документа относится реквизит - начальник смены.

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

 

УТВЕРЖДАЮ Главный диспетчер _____________ Петров А. В.
РАСПИСАНИЕ РЕЙСА
Номер рейса Дата отправления Пункт отправления Пункт назначения Время в пути
    25.09.2009 Павлодар Экибастуз 2ч. 20мин
    25.09.2009 Павлодар Омск 12ч
    25.09.2009 Павлодар Аксу 1ч 30 мин
    25.09.2009 Павлодар Томск 14ч. 20мин
    25.09.2009 Павлодар Семей 6ч.
Начальник смены __________________
             

 

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

 

УТВЕРЖДАЮ Главный диспетчер _____________ Петров А. В.
СВЕДЕНИЯ О ПОКУПАТЕЛЯХ
ФИО покупателя № удостоверения/паспорта Гражданство № рейса Место
  Кренько Олеся Сергеевна   RUS    
  Петров Иван Васильевич   KZ    
  Ахметов Нурлан Каиргалиевич   KZ    
  Пашко Светлана Константиновна   KZ    
  Скворцов Сергей Петрович   RUS    
Начальник смены __________________
             

 

Рассмотрим выходной документ "Сведения о свободных местах на рейс"

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

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

. К заверительной части документа относится реквизит - начальник смены.

. К реквизитам, предназначенным для улучшения читабельности документа, относится реквизит Сведения о свободных местах на рейс на 25.09.2009 год 14: 00 часов и Итого, но эти реквизиты не подлежит вводу в базу данных.

 

УТВЕРЖДАЮ Главный диспетчер _____________ Петров А. В.
СВЕДЕНИЯ О СВОБОДНЫХ МЕСТАХ НА РЕЙС НА 25.09.2009, 14: 00
Номер рейса Дата отправления Пункт назначения Номер автобуса Количество мест Свободные места
    25.09.2009 Экибастуз      
    25.09.2009 Омск      
    25.09.2009 Аксу      
    25.09.2009 Томск      
    25.09.2009 Семей      
ИТОГО:количество мест 186продано мест 176 свободно мест 10
Начальник смены __________________
               

 

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

 

УТВЕРЖДАЮ Главный диспетчер _____________ Петров А. В.
СВЕДЕНИЯ О ПРОДАЖЕ БИЛЕТОВ НА 25.09.2009, 14: 00
Номер рейса Количество мест Проданные места Стоимость билета
         
         
         
         
         
ИТОГО:количество мест 186продано мест 176 свободно мест 10
Начальник смены __________________
           

 

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

Основная задача проектирования базы данных - это определение количества файлов и их реквизитного состава.

Реквизит - это совокупность значений некоторого фиксированного набора переменных. Различают реквизиты-признаки и реквизиты-основания.

Реквизит-признак - это информационное отображение качественного свойства некоторого объекта.

Реквизит-основание - это информационное отображение количественного свойства некоторого объекта.

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

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

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

. Если реквизит текстовый, то это признак;

. Если реквизит обозначает предмет или время - это признак;

. Если реквизит в некотором показателе является признаком (основанием), то он будет играть эту же роль в других показателях;

. Если показатели описывают сходные процессы, то их призначные части совпадают;

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

К реквизитам основаниям относятся: стоимость билета, количество мест, проданные места.

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

Можно сделать вывод, что в документах приложения базы данных "Автостанция" будет 3 показателя. Подберем реквизиты-признаки для каждого основания и получим показатели.

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

В результате структура показателя П1 примет вид:

П1 (номер билета, номер рейса, время в пути, стоимость билета).

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

В результате структура показателя П2 примет вид:

П2 (номер рейса, номер автобуса, пункт отправления, пункт назначения, дата отправления, количество мест).

У основания Проданные места необходимыми признаками будут номер рейса, номер автобуса, номер водителя, ФИО водителя, сменный водитель, основной водитель.

В результате структура показателя П3 примет вид:

П3 (номер рейса, номер автобуса, номер водителя, ФИО водителя, сменный водитель, основной водитель, проданные места).

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

Методом, решающим этот недостаток является построение модели данных.

Модель данных - это совокупность трех составляющих:

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

множество допустимых операций над данными;

множество ограничений, наложенных на информационные конструкции.

Иными словами модель данных - это инструмент для представления данных в базе данных.

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

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

В проектируемой базе данных сущностями будут являться: РЕЙС, БИЛЕТ, АВТОБУС, ВОДИТЕЛЬ.

Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть ВОДИТЕЛЬ, а экземпляром - Иванов, Петров и т.д.

Атрибут - поименованная характеристика сущности. Примерами атрибутов для сущности БИЛЕТ будут номер билета, стоимость и т.д.

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

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

 

 

 

 

 

∞ ∞

∞ ∞

 

 

1 1

 

 

Центральная задача проектирования базы данных - это определение количества отношений и их атрибутного состава.

Задача группировки атрибутов в отношении допускает множество вариантов решения.

Рациональный вариант предполагает:

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

. корректировка отношений не должна приводить к двусмысленности и потере информации;

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

Переход от модели "Сущность-связь" к реляционной модели данных осуществим через нормализацию.

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

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

По определению, в отношении R (A,B) реквизит А функционально определяет реквизит В, если в любой момент времени каждому значению А соответствует единственное значение В.

На первом шаге алгоритма приведения отношений к третьей нормальной форме, составим все функциональные зависимости рассматриваемой предметной области:

. номер рейса - > пункт отправления

2. номер рейса - > пункт назначения

. номер рейса - > дата отправления

. номер рейса - > номер автобуса

. номер автобуса - > пункт отправления

. номер автобуса - > пункт назначения

. номер автобуса - > количество мест

. номер водителя - > ФИО водителя

. номер водителя - > смена

. номер билета - > номер рейса

. номер билета - > стоимость

. номер рейса, дата отправления - > номер водителя

. номер рейса, дата отправления - > проданные места

. номер рейса, номер автобуса - > время в пути.

На шаге 2 воспользуемся двумя теоремами:

) теорема 2 - реквизит А определяет реквизит В и реквизит А определяет реквизит С только тогда, когда А определяет В и С вместе;

) теорема 3 - если реквизит А определяет реквизит В и реквизит В определяет реквизит С, то реквизит А определяет реквизит С.

В результате получим 6 функциональных зависимостей:

. номер рейса - > пункт отправления, пункт назначения, дата отправления, номер автобуса

2. номер рейса, дата отправления - > номер водителя, проданные места

. номер рейса, номер автобуса - > время в пути

. номер автобуса - > пункт отправления, пункт назначения, количество мест

. номер водителя - > ФИО водителя, смена

. номер билета - > номер рейса, стоимость.

В этих функциональных зависимостях отсутствуют неполные и транзитивные функциональные зависимости.

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

Для каждой функциональной зависимости создадим проекцию исходного отношения:

1. T=R1 [номер рейса, номер водителя, номер автобуса, пункт отправления, пункт назначения, дата отправления, проданные места, время в пути]

2. T=R2 [номер билета, номер рейса, стоимость]

3. T=R3 [номер автобуса, пункт отправления, пункт назначения, количество мест]

4. T=R4 [номер водителя, ФИО водителя, смена].

Таким образом, переход к третьей нормальной форме привел в данном примере к четырем отношениям.

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

. Выдать информацию о наличии свободного билета на рейс.

Этот запрос относится к

Запрос будет выглядеть так:

Вход запроса:

Выход запроса:

Оболочка запроса:

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

Этот запрос относится к

Запрос будет выглядеть так:

Вход запроса:

Выход запроса:

Оболочка запроса:


Проектная часть

 

В проектной части необходимо выполнить следующие этапы:

. Проектирование базы данных (определение состава полей её таблиц и связей между ними).

2. Создание базы данных.

. Программирование выполнения операций над данными.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-04-01 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: