Проектирование и реализация базы данных «Расписание занятий»

Сочинский Государственный  Университет Туризма  и Курортного Дела

Факультет информационных технологий и математики 
 
 
 
 
 
 

Курсовой  проект  
ПО ДИСЦИПЛИНЕ

“БАЗЫ ДАННЫХ И ЗНАНИЙ” 

на тему

  “Проектирование  и реализация базы  данных «Расписание занятий»” 
 
 

              Выполнила студентка

              группы 05-ПИ:

              Камардина Ю. А. 

              Научный руководитель:

              Лобова  О. Е. 

              ________________________ 

              Дата:

              “ 13 ” января  2008 г. 
               
               

Сочи, 2008 г.

    Сочинский государственный  университет туризма  и курортного дела

    Кафедра ИТ

    УТВЕРЖДАЮ

    Зав. кафедрой

    к.т.н., проф. Ю. И. Дрейзис

        _______________________

    “_____” __________ 2008г. 

    ЗАДАНИЕ

    на  курсовое проектирование по курсу

    “Базы данных и знаний”

    Студенту _____________________ Группа - ______________

    Тема  проекта: “Проектирование и реализация базы данных “Расписание занятий"

    Исходные  данные на проектирование:

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

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

    Выходные  документы: группы; преподаватели; аудитории.

    Технические средства - ПЭВМ типа IBM PC.

    Операционная  система - MS Windows.

    СУБД  и инструментальные программные  средства - по выбору разработчика.

    Объем работы по курсу

  1. Расчетная часть:
    1. Постановка задачи.
    2. Инфологическое моделирование предметной области.
    3. Проектирование реализации.
    4. Физическое проектирование.
  2. Графическая часть:
    1. Схема инфологической модели.
    2. Схема структуры БД.
    3. Укрупненная схема программы.
    4. Чертежи (распечатки) форм и документов.
  3. Экспериментальная часть:
    1. Создание и загрузка базы данных.
    2. Тестирование и отладка базы данных.

    Срок  выполнения проекта по разделам:

    1, Пункты 1.1, 1.2            - к  7 неделя

    2. Пункты 1.3, 3.1            - к  9 неделя

    3. Пункты 1.4, 3.2            - к  12 неделя

    4. Оформление ПЗ и графической части - к 14 неделе

    Дата  выдачи задания – 3 неделя семестра.

    Дата  защиты проекта – 16 неделя

    Руководитель -  __________________________

    Задание получил  ________________________

    Студент ________________________________

СОДЕРЖАНИЕ 
 
 
 
 
 
 
 

ВВЕДЕНИЕ 

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

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

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

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

     Access – мощное приложение Windows. При этом производительность СУБД органично сочетаются со всеми удобствами и преимуществами Windows.

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

     В рамках этого курсового проекта необходимо спроектировать и реализовать средствами MS ACCESS информационную систему, позволяющую составить расписание занятий.

 

1. Аналитическая часть

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

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

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

      Диспетчер должен вводить расписание в виде записей базы:

      • День недели
      • Время начала
      • Аудитория
      • Группа
      • Дисциплина
      • Преподаватель

      При вводе требуется не допускать «накладок» вида:

  1. В одной аудитории в одно и то же время занимаются разные группы;
  2. Одна и та же группа  в одно и то же время занимается в разных аудиториях, либо разными предметами, либо с разными преподавателями;
  3. Один и тот же преподаватель занимается в одно и то же время либо в разных аудиториях, либо разными предметами, либо с разными группами.

      Кроме того, информационная система должна выводить информацию по запросам расписаний:

    • группы;
    • преподаватели;
    • аудитории.
 
 
    1. Определение состава данных.
 
 

     Для обеспечения пользователя указанной  информацией в БД должны храниться справочные данные о группах, аудиториях и преподавателях. В результате анализа предметной области выявляются документы, содержащие справочную информацию: «Группы» (рис.1.2.1), «Аудитории» (рис.1.2.2), «Преподаватели» (рис.1.2.3), «Расписание звонков» (рис.1.2.4), «Дисциплины» (рис.1.2.5), «Дни недели» (рис.1.2.6), «Расписание» (рис.1.2.7), «Учебный план» (рис.1.2.8). Ниже приведены формы документов. 
 

 

     Рис.1.2.1  Форма справочного документа «Группы» 

     

 

     Рис.1.2.2  Форма справочного документа «Аудитории» 

 

Рис.1.2.3  Форма справочного документа «Преподаватели» 

 

Рис.1.2.4  Форма справочного документа « Расписание звонков» 

 

Рис.1.2.5  Форма справочного документа «Дисциплины» 

 

Рис.1.2.6   Форма справочного документа «Дни недели» 

 

Рис.1.2.7  Форма справочного документа «Расписание» 

 

Рис.1.2.8  Форма справочного документа «Учебный план» 

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

 

  1. РАЗРАБОТКА КОНЦЕПТУАЛЬНОЙ МОДЕЛИ
 
 

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

     Концептуальная  модель должна быть стабильной.

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

     Экземпляр сущности - конкретный объект.

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

    1.   Выявление информационных объектов
 
 

     Необходимо  проанализировать каждый реквизит на наличие взаимосвязей с другими реквизитами. Реквизит приобретает смысл только тогда, когда он связан с другими реквизитами, обладающими смысловым единством. Так, код техники, наименование техники, количество отражают сведения об изделии; код объекта, наименование объекта, начальник объекта отражают сведения об объектах.

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

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

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

   Реквизитный состав первичных документов: 

     Таблица 2.1.1. Анализ документа «Группы» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Группы Код группы КОД_ГР Группы
Количество КОЛ
Специальность СПЕЦ
 
 
 
 
 
 

      Таблица 2.1.2. Анализ документа «Аудитории» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Аудитории Номер аудитории НОМ_АУД Аудитории
Название НАЗВ
Вместимость ВМЕСТ
 
 

     Таблица 2.1.3. Анализ документа «Дисциплины» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Дисциплины Код дисциплины КОД_ДИСЦ Дисциплины
Дисциплина ДИСЦ
 
 

      Таблица 2.1.4. Анализ документа «Дни недели» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Дни недели Код дня недели КОД_НЕД Дни недели
Название НАЗВ
 
 

      Таблица 2.1.5. Анализ документа «Преподаватели» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Преподаватели Табельный номер ТАБ_НОМ Преподаватели
Фамилия ФАМ
Имя ИМ
Отчество ОТЧ
Дисциплина ДИСЦ
 

 
 Таблица 2.1.6. Анализ документа «Расписание»
 

Документ Наименование  реквизита Имя реквизита Имя ИО
Расписание Код дня недели КОД_НЕД Расписание
Номер пары НОМ_ПАР
Номер аудитории НОМ_АУД
Код дисциплины КОД_ДИСЦ
Код группы КОД_ГР
Табельный номер преподавателя ТАБ_НОМ
 
 

Таблица 2.1.7. Анализ документа «Расписание звонков» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Расписание звонков Номер пары НОМ_ПАР Расписание  звонков
Начало НАЧ
Конец КОН
 
 
 
 
 
 
 
 
 
 
 
 

Таблица 2.1.8. Анализ документа «Учебный план» 

Документ Наименование  реквизита Имя реквизита Имя ИО
Учебный план Дисциплина ДИСЦ Учебный план
Лекция ЛЕК
Практика ПР
Контрольная КОНТР
Курсовая КУРС
Зачёт ЗАЧ
Консультация КОНС
Экзамен ЭКЗ
Итого часов ИТ_Ч
 
 
 

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

     Таблица 2.1.9. Объекты справочной информации 

Информационный  объект Наименование  реквизита Обозначение Признак ключа 
Группы Код группы КОД_ГР П, У
Количество КОЛ  
Специальность СПЕЦ  
Аудитории Номер аудитории НОМ_АУД П, У
Название НАЗВ  
Вместимость ВМЕСТ  
Дисциплины Код дисциплины КОД_ДИСЦ П, У
Дисциплина ДИСЦ  
Дни недели Код дня недели КОД_НЕД П, У
Название НАЗВ  
Преподаватели Табельный номер ТАБ_НОМ П, У
Фамилия ФАМ  
Имя ИМ  
Отчество ОТЧ  
Дисциплина ДИСЦ  
Расписание Код дня недели КОД_НЕД С
Номер пары НОМ_ПАР
Номер аудитории НОМ_АУД
Код дисциплины КОД_ДИСЦ
Код группы КОД_ГР
Табельный номер преподавателя ТАБ_НОМ
Расписание  звонков Номер пары НОМ_ПАР П, У
Начало НАЧ  
Конец КОН  
Учебный план Дисциплина ДИСЦ П, У
Лекция ЛЕК  
Практика ПР  
Контрольная КОНТР  
Курсовая КУРС  
Зачёт ЗАЧ  
Консультация КОНС  
Экзамен ЭКЗ  
Итого часов ИТ_Ч  
 

     У – уникальный, П – простой, С - составной.

     2.2. Определение связей информационных объектов, построение информационно-логической модели и ER-диаграммы 

     Для построения информационно-логической модели сначала построим матрицу смежности — это квадратная матрица по числу ИО, которая заполняется по строкам. Элемент матрицы на пересечении строки и столбца равен 1, если ИО, стоящий в строке, связан с ИО, стоящим в столбце, отношением один ко многим, тип функциональной связи во внимание не принимается.

     Существуют  следующие типы отношений между  объектами:

    • Один-к-одному (1:1). Каждому экземпляру первого информационного объекта соответствует только один экземпляр второго информационного объекта
    • Один-ко-многим (1:М). Каждому экземпляру одного информационного объекта соответствует несколько экземпляров другого информационного объекта, а каждому экземпляру второго информационного объекта соответствовать не более одного экземпляра первого информационного объекта.
    • Многие-ко-многим (М:М). Каждому экземпляру одного информационного объекта соответствует несколько экземпляров другого информационного объекта и каждому экземпляру второго информационного объекта может соответствовать несколько экземпляров первого.

     В результате анализа получили 8 информационных объектов: ДНИ НЕДЕЛИ, АУДИТОРИИ, РАСПИСАНИЕ ЗВОНКОВ, УЧЕБНЫЙ ПЛАН, ГРУППЫ, ДИСЦИПЛИНЫ, РАСПИСАНИЕ, ПРЕПОДАВАТЕЛИ. Проведем попарный анализ связей между ними:

     Дни недели (1)                    Расписание (7).   Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Код дня недели.

     Аудитории (2)                 Расписание (7). Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Номер аудитории.

     Расписание  звонков (3)                   Расписание (7).  Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Номер пары.

      Учебный план (4)                   Дисциплины (6).   Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Дисциплина.

     Группы (5)                    Расписание (7). Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Код группы.

     Дисциплины (6)                    Расписание (7). Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Код дисциплины.

     Преподаватели (8)                 Расписание (7). Тип связи 1:М. Связь между этими объектами обеспечивается с помощью реквизита Табельный номер преподавателя.

     По  этим данным можно построить матрицу  смежности, которая позволяет выстроить информационные объекты по уровням (Рис.2.2.) 

       

     Рис. 2.2 Матрица смежности

     Информационно-логическая модель приведена к каноническому  виду, и объекты расположены в  ней по уровням. На нулевом уровне располагаются объекты не подчиненные никаким другим объектам, на 1 уровне подчиненные 0 уровню и т.д. Такое размещение объектов дает представление об иерархической подчиненности, делает модель более наглядной и облегчает понимание зависимостей 1:М.

     Матрица смежности показывает, что:

     - информационные объекты Дни недели, Аудитории, Расписание звонков,  Учебный план, Группы, Преподаватели находятся на 0ом уровне;

     - информационный объект Дисциплины  находится на 1ом уровне;

     - информационный объект Расписание находится на 2ом уровне.

     Диаграммы отношений между таблицами помогают наглядно представить проект базы данных. Диаграммы объект-отношение (Entity-relation - ER), которые также называют  диаграммами объект-атрибут-отношение (entity-atribute-relation – EAR), представляют собой один из наиболее широко используемых методов для изображения отношений между таблицами базы данных. Эллипсы над прямоугольниками таблиц обозначают классы атрибутов (поля), входящие в отношение. Ромбы, соединяющие пары прямоугольников таблиц и эллипсы полей, представляющих отношение между полями.

     ER-диаграмма предметной области «Расписание» представлена в ПРИЛОЖЕНИИ А. 
 

    1. Определение логической и физической моделей базы данных
 
 

     Логическая  структура реляционной базы данных является адекватным отображением полученной информационно-логической модели предметной области. Для канонической модели не требуется дополнительных преобразований. Каждый информационный объект модели данных отображается соответствующей реляционной таблицей. Структура реляционной таблицы определяется реквизитным составом соответствующего информационного объекта, где каждый столбец (поле) соответствует одному из реквизитов. Ключевые реквизиты образуют уникальный ключ реляционной таблицы. Для каждого столбца таблицы задается тип, размер данных и другие свойства. Топология проекта схемы данных практически совпадает с топологией информационно – логической модели. Логическая структура базы данных приведена в ПРИЛОЖЕНИИ В, а физическая – в ПРИЛОЖЕНИИ С. 
 

Проектирование и реализация базы данных «Расписание занятий»