БД «Кафедра информационно-компьютерных технологий»

МИНИСТЕРСТВО ОБРАЗОВАНИЯ  И НАУКИ, МОЛОДЁЖИ И СПОРТА УКРАИНЫ

МИНИСТЕРСТВО ОБРАЗОВАНИЯ  И НАУКИ, МОЛОДЁЖИ И СПОРТА АР КРЫМ

РВУЗ «КРЫМСКИЙ ИНЖЕНЕРНО-ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ»

 

 

 

 

Факультет информатики

Кафедра информационно-компьютерных технологий

 

 

КУРСОВАЯ РАБОТА

по дисциплине «Базы данных и информационные системы»

на тему: «БД «Кафедра информационно-компьютерных технологий»»

 

 

 

 

 

студентки 2 курса

направление подготовки

6.040302 «Информатика»

Аметова Эльвира Акимовна

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

Сейтвелиева С.Н.

 

Курсовая работа допущена к защите

         зав. каф. ИКТ                       д.пед.н., проф. З.С. Сейдаметова


 

 

     Оценка после защиты 


     Дата


Подпись научного руководителя

 

 

Симферополь 2012 г.

 

Оглавление

Введение 3

1. Теоретическая часть 5

1.1. Описание предметной области «Кафедра информационно-компьютерных технологий» 6

1.2. Инфологическое проектирование 8

1.3. Выбор СУБД 11

1.4. Логическое проектирование 13

2. Разработка БД «БД «Кафедра информационно-компьютерных технологий»» 16

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

2.1.1. Создание таблиц  и заполнение их текстовой  информацией 17

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

2.2. Проектирование  форм 25

2.2.1 Обоснование и  определение необходимого набора  форм, их содержание 25

2.3. Проектирование  отчетов 27

2.3.1 Обоснование и  определение необходимого набора  отчетов, их содержание 28

2.4 Обоснование и  определение необходимого набора  запросов, их содержание 30

2.5 Проектирование  меню проекта 31

2.5 Программирование  программной оболочки управления  базами данных 32

2.6. Разработка систем оперативной справки 33

2.7 Создание инсталляционного  пакета проекта 34

Заключение 36

Список используемых источников 37

 

 

Введение

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

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

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

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

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

Цель работы – создание и разработка базы данных «БД «Кафедра  информационно-компьютерных технологий»».

Для достижения цели были поставлены задачи:

- анализировать литературу  по данной теме;

- ознакомится с предметной областью;

- построить ER – модель базы данных;

- охарактеризовать СУБД  для реализации БД;

- построить логическую  модель данных;

- разработать проект и  БД;

- создать объекты БД (таблицы,  формы, отчёты, запросы);

- определить условия целостности  БД;

- создать справочную службу;

- спроектировать меню  приложения;

- создать инсталляционный  пакет.

Объектом работы является процесс разработки БД.

Предметом работы является разработка базы данных «БД «Кафедра  информационно-компьютерных технологий»».

Курсовая работа содержит 37 – страниц, 40 – рисунков, 6 – таблиц. Курсовая работа состоит из введения, двух глав и заключения. В первой главе представлена характеристика понятий в СУБД. Вторая глава содержит процесс разработки базы данных «БД «Кафедра  информационно-компьютерных технологий»».

 

 

  1. Теоретическая часть

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

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

Таблица – некоторая регулярная структура, состоящая из конечного  числа записей.

Атрибут – конкретное значение одного из свойств сущности.

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

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

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

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

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

 

 

 

    1. Описание предметной области «Кафедра информационно-компьютерных технологий»

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

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

Данная БД выполняет следующие  действия:

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

Кафедра работает с большим  количеством документации, и содержит данную информацию:

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

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

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

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

Вся информация вводится в  БД и в последующем может с  лёгкостью корректироваться, что  облегчает труд секретаря и экономит время.

 

 

    1. Инфологическое проектирование

На данном этапе мы представим объекты в виде сущностей и  связей. В данной схеме хорошо просматриваются сущности, их атрибуты и связи.

Содержится в ER – диаграмме 5 связей, которые обеспечивают объединение между сущностями (направление стрелки показывает связь между сущностями).

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

Связь «курируют», показывает отношение студентов-дипломников  к кураторам.

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

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

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

Данные связи являются связями многие ко многим.

 

ЕR – диаграмма.

    1. Выбор СУБД

Для выбора программного обеспечения  для реализации оценим несколько  самых распространённых программных  продуктов по следующим критериям:

распространённость;

финансовая доступность;

поддержка защиты данных.

Дадим небольшую характеристику программ:

СУБД Microsoft Access — наиболее широко используемая в среде Microsoft Windows. Microsoft Access — типичная СУБД для персональных компьютеров, обеспечивающая хранение, сортировку и поиск данных для  множества приложений. Проста в изучении и эксплуатации и поэтому доступна для пользователей с низкой квалификацией, снабжена обширными средствами по созданию отчётов различной степени сложности, создаваемых на основе таблиц различных  форматов. Используется для создания личных баз данных, не имеющих коммерческого  распространения. В СУБД Access для  создания таблиц, запросов, форм и отчетов предусмотрен графический интерфейс пользователя (GUI); для разработки настраиваемых приложений с базой данных есть инструментальные средства, использующие макроязык Microsoft Access. Кроме того, в СУБД Access предусмотрены программы, называемые мастерами (Wizards), которые  упрощают многие из процессов формирования приложений с базой данных, проводя пользователя через ряд диалоговых окон в запросно-ответном режиме. В СУБД Access предусмотрены также конструкторы (Builders), которые могут помочь пользователю сформировать синтаксически правильные выражения. СУБД Microsoft Access может использоваться как автономная система на одном персональном компьютере или как многопользовательская система в сети.

Oracle - одна из самых  успешно продающихся много пользовательская  реляционная СУБД.  Oracle базируется  на архитектуре клиент/сервер, сервер Oracle состоит из базы данных (данные  в двоичном формате, включая  системный журнал и управляющие файлы) и, экземпляра (instance) (процессы и память системных программ на сервере, которые обеспечивают доступ к базе данных). Экземпляр может соединяться только с одной базой данных. База данных состоит из логической структуры, называемой схемой базы данных, и физической структуры, содержащей файлы, которые составляют базу данных Oracle.  На логическом уровне Oracle поддерживает табличные пространства (tablespaces), схемы (schemas), блоки данных (data blocks) и экстенты/сегменты (extents/segments). Основные физические структуры базы данных в Oracle — это файлы данных (datafiles), журналы восстановления (redo log files) и управляющие файлы (control files).

Microsoft Visual FoxPro-одна из самых популярных реляционных СУБД. Предназначена для создания приложений баз данных объёма предприятий, обладает хорошим быстродействием и устанавливается на различные платформы, удобна и проста в использовании. В Visual FoxPro имеется несколько уровней разработки приложений. Если необходимо в кратчайшее время разработать не очень сложное приложение, вы можете воспользоваться средствами быстрой разработки приложений, которые представлены многочисленными мастерами для создания форм, отчетов, почтовых этикетов и многого другого. Visual FoxPro является системой управления реляционными базами данных, которые в настоящее время являются наиболее распространенными. Visual FoxPro состоит из отдельных компонентов, которые используются для хранения и представления информации. Этими компонентами являются таблицы, представления данных, формы, отчеты, запросы, программы и библиотеки.

Сделаем небольшой вывод:  мы будем разрабатывать нашу БД в  FoxPro, потому что она удовлетворяет всем потребностям разработчика БД, а именно:

    1. Реляционная СУБД.
    2. Предназначена для создания БД объёма предприятий.
    3. Несколько уровней разработки приложений.
    1. Логическое проектирование

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

Перед нормализацией БД «Кафедра информационно-компьютерных технологий» представляет собой структуру, которая еще не разбита на более управляемые таблицы меньшего размера. В таблице 1 представлена БД нормализации 1НФ.

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

  • первая нормальная форма (1NF);
  • вторая нормальная форма (2NF);
  • третья нормальная форма (3NF);
  • нормальная форма Бойса—Кодда (BCNF);
  • четвертая нормальная форма (4NF);
  • пятая нормальная форма, форма проекции-соединения (5NF).

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

Таблица 1. 1 Таблица "Кафедра информационно-компьютерных технологий" в 1НФ

Кафедра информационно-компьютерных технологий

Аудитория

Текстовый

Id группы

Текстовый

ФИО преподавателя

Текстовый

Предмет

Текстовый

Часы

Числовой

Курс

Числовой

Научное направление

Текстовый

Научная степень

Текстовый

Id сотрудника

Числовой

Должность

Текстовый

Номер телефона

Числовой

Id зачётной книжки

Числовой


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

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

Ключом отношения «Кафедра информационно-компьютерных технологий» является комбинация полей (Id группы, ФИО преподавателя, Id сотрудника, Id зачётной книжки). Все поля, не входящие в состав ключа, зависят только от первичного ключа(Id группы). Поэтому отношения должны быть разбиты на: Расписание(таблица 1.2) и Преподаватель-Сотрудник-Студент(таблица 1.3). Эти отношения связаны по внешнему ключу, которым является поле Id группы.

Таблица 1.2 Таблица " Расписание"  2НФ

Id группы

Текстовый

Аудитория

Текстовый

Предмет

Текстовый

Часы

Числовой

Курс

Числовой

Научное направление

Текстовый

Должность

Текстовый

Номер телефона

Числовой


Таблица 1.3 Таблица " Преподаватель-Сотрудник-Студент"  2НФ

Id группы

Текстовый

Id зачётной книжки

Числовой

Id сотрудника

Числовой

ФИО преподавателя

Текстовый


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

Таблица 1.4 Таблица " Сотрудники "  3НФ

Id сотрудника

Числовой

ФИО преподавателя

Текстовый


Перейдем к 4НФ.Для отношения Преподаватель-Сотрудник-Студент(таблица 1.3) образуют две зависимости от первичного ключа, и при этом их значения их атрибутов не зависят друг от друга. Поэтому необходимо разбить на отношения: Преподаватели и Студенты.

Таблица 1.5 Таблица " Преподаватели"  4НФ

Id группы

Текстовый

Id сотрудника

Числовой


Таблица 1.6 Таблица " Студенты"  4НФ

Id группы

Текстовый

Id зачётной книжки

Числовой


Смысла проводить нормализацию, дальше нет, мы устранили избыточность. Поэтому остановимся на 4НФ.

 

Вывод: для реализации базы данных «БД «Кафедра информационно-компьютерных технологий»» построили ER – модель в виде сущность – сущность, отношения находятся в 4НФ.

 

 

  1. Разработка БД «БД «Кафедра информационно-компьютерных технологий»»

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

Данная курсовая работа содержит базу данных «kafedra». Данная база данных состоит из семи таблиц в соответствие с предметной областью. Подробное описание таблиц содержится далее.

База данных «Кафедра информационно-компьютерных технологий» содержит в себе семь таблиц:

  • Schedule group – расписание занятий на семестр (по группам);
  • Schedule teacher – расписание для преподавателей;
  • Load teacher clock – нагрузки по часам для преподавателей;
  • Lists scientific staff – список научных кадров;
  • Curriculum curse – учебный план каждого курса;
  • Lists telephone – список телефонов сотрудников;
  • Lists student diploma – список студентов – дипломников.

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

После старта Visual FoxPro выбираем меню File>New, и в окне New выбираем Project (рисунок 1), потом нажимаем кнопку Wizard.

                 

Рис.1 Рис.1.2

Нам будет предложено указать  имя файла проекта и его расположение (рисунок 1.2).

После этого, теперь перейдем к созданию самой базы данных:

В менеджере проекта (Project Manager) открываем закладку Date, устанавливаем курсор на Databases и клацаем мышкой на кнопку New (рисунок 1.3).

                  

Рис.1.3 Рис.1.4

В предложенной форме  создания новой базы данных выбираем кнопку создания новой базы данных – Create New Database (рисунок 1.4). Вам будет предложено указать имя и место расположения базы данных (рисунок 1.5). Её следует размещать в папке ..\Data\.


 
Рис.1. 5

 

2.1.1. Создание таблиц и заполнение их текстовой информацией

Далее в окне, открывшемся  конструктора базы данных (Database Designer) выбираем в контекстно-зависимом меню (правая кнопка мыши) опцию New Table и создаем таблицу (рисунок 2.1).

 

               

Рис.2.1 Рис.2.2

В предложенной форме создания новой таблицы нажимаем на кнопку New Table (рисунок 2.2). Аналогично базе данных обозначаем имя и расположение таблицы. В открытом на экране конструкторе таблиц задаем структуру (рисунок 2.3).  В столбик Name записываем имя поля, в Type выбираем тип поля, в третьем Width определяем длину поля в символах, в пятом Index указываем тип индекса – по возрастанию или убыванию Ascending/Descending, в шестом Null указываем допустимо ли для этого поля значение равное Null. Именовать поля можно и символами кириллицы, но не рекомендуется. Название полей на русском языке можно отобразить при вводе в поле Caption псевдоним поля на нужном языке.

Рис. 2.3

На рисунке 2.4 мы видим, как задается индекс.


       
Рис.2.4

      В таблице 2 мы видим типы индексов.

Таблица 2.

Тип индекса

Описание

Regular

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

Unique

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

Candidate

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

Primаry

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


 

Таблица в режиме Modify (рисунок 2.5).


 
Рис.2.5

      Теперь заполняем текстовой информацией таблицы. Таблица в режиме Browse (рисунок 2.6).


 

 

 

 

 

 

Рис.2.6

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

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

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

Таблица «Schedule_group» содержит поля:

  • Id_group – Id группы;
  • Fio_teacher – ФИО преподавателя;
  • Audience – аудитория.

Заполняем текстовой информацией рисунок 3.1: 

Рис.3.1

Таблица «Schedule_teacher» содержит поля:

  • Audience – аудитория;
  • Subject – предмет;
  • Id group – Id группы;
  • Fio_teacher – ФИО преподавателя.

Заполняем текстовой информацией рисунок 3.2:

Рис.3.2

Таблица «Curriculum_course» содержит поля:

  • Kurs – курс;
  • Fio_teacher – ФИО преподавателя;
  • Id_group – Id группы;
  • Subject – предмет;
  • Hour – часы.

Заполняем текстовой информацией рисунок 3.3:

Рис.3.3

Таблица «Load_teacher_clock» содержит поля:

  • Hour – часы;
  • Id group – Id группы;
  • Subject – предмет;
  • Fio_teacher – ФИО преподавателя.

Заполняем текстовой информацией рисунок 3.4:

Рис.3.4

Таблица «Lists_telephone» содержит поля:

  • Id_employee – Id сотрудника;
  • Post – должность;
  • Telephone_number – номер телефона.

Заполняем текстовой информацией рисунок 3.5:

 

Рис.3.5

Таблица «Lists_student_diploma» содержит поля:

  • Fio_teacher – ФИО преподавателя;
  • Student _record_book – Id зачетной книжки.

Заполняем текстовой информацией рисунок 3.6:

Рис.3.6

Таблица «Lists_scientific_staff» содержит поля:

  • Id_employee – Id сотрудника;
  • Scientific_direction – научное направление;
  • Fio_teacher – ФИО преподавателя;
  • Scientific_degree – научная степень.

Заполняем текстовой информацией рисунок 3.7:

Рис.3.7

Таким образом образовались связи «многие-ко-многим». Связи отображены на рисунке 3.8:

БД «Кафедра информационно-компьютерных технологий»