Пояснительная записка __ с., __ рис., __ табл., __ источника, __ прил.
В данном курсовом проекте объектом исследования является процесс учета студентов в ВУЗе.
Объектом автоматизации является доступ и хранение информации о студентах.
Целью курсового проектирования является обеспечение качественного, комфортного и быстрого учета, поиска и ведения уже существующей и новой поступающей информации и сведений о студентах в ВУЗе, посредством создания СБД, обеспечивающей быстрый и удобный доступ к информации о студентах, ее редактирование и просмотр.
Данный программный продукт может быть использован в ВУЗах (сотрудниками и студентами) для хранения, изменения и получения информации о студентах.
Содержание
Введение
1 Описание учета студентов в ВУЗе
2 Постановка задачи
3 Концептуальное проектирование СУБД
3.1 Разработка схемы объект-отношение
3.2 Обоснование выбора модели данных
3.2.1 Типы моделей данных
3.2.2 Иерархическая модель данных
3.2.3 Сетевая модель данных
3.2.4 Реляционная модель данных
3.3 Нормализация таблиц
3.3.1 Выделение функциональных зависимостей
3.3.2 Описание нормальных форм
3.3.3 Описание РМД
4 Программная реализация СУБД
4.1 Описание таблиц
4.2 Описание реализованных запросов к БД
4.3 Описание разработанных форм
4.4 Описание сформированных отчетов
4.5 Описание макросов
5 Уровни доступа к СУБД
Выводы
Приложение А. Техническое задание
Приложение Б. Заполненные таблицы
Приложение В. Руководство пользователю
Список используемых источников
Перечень обозначений, символов, единиц, сокращений и терминов
БД - База данных
СБД - Система базы данных
ПП - Программный продукт
SQL - Select Query Language
СМД - Сетевая модель данных
РМ - Реляционная модель данных
ИМ - Иерархическая модель данных
УС - Учет студентов
Введение
В наше время существует множество программных приложений позволяющих обеспечивать качественное хранение и обработку информации. Так для хранения большого объема информации, касающейся определенной области очень удобно пользоваться системами управления базами данных (СУБД). Под базой данных (БД) будем понимать совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы и отображающих состояние объектов и их взаимосвязь в конкретной предметной области. СУБД позволяет:
- надежно хранить информацию;
- изменять (добавлять, удалять, обновлять) информацию;
- уменьшить время доступа к необходимой информации;
- реализовать различные уровни доступа к информации, рассчитанные на различных пользователей.
Таким образом, СУБД очень хорошо подходят для хранения и систематизации любой информации на работе.
В последнее время базы данных находят всё более широкое применение в нашей жизни. Практически во всех отраслях экономики, промышленности, рыночных отношений используются базы данных, позволяющие хранить и обрабатывать информацию.
Предметная область курсового проекта – обработка информации о студентах ВУЗа, представление информации о специальностях, местах жительства студентов, о родителях и т.д. Базу данных могут использовать как сотрудники ВУЗа, так и сами студенты.
Базы являются очень востребованными при учете студентов. Грамотно составленная система учета студентов очень сильно экономит время при обращении к необходимой информации. При правильном составлении и внесении информации в базу скорость поиска необходимой информации сводится до минимума. Создание такой базы данных поможет с легкостью работать с информацией, хранящейся в ней. Позволит получить полную информацию как и о каждом отдельном студенте, так и о всех студентах выбранного врача.
Разрабатываемая база данных является удобной и понятной для любого типа пользователей. База позволяет добавлять новых студентов, удалять, вносить изменения. Студенты, которые проучились более пяти лет, добавляются в архив.
1 Описание учета студентов в ВУЗе
В университете учится огромное количество студентов, и чтобы удобно было сохранять и использовать о них информацию, мы создадим базу данных на примере Государственного университета информатики и искусственного интеллекта. База данных нужна для того, чтобы в любой момент времени можно было бы узнать любую информацию об учащемся студенте: форму обучения, место проживания и т.д.
Для разработки такой базы нам необходимо знать такую информацию о студентах: ФИО, контактный телефон, домашний адрес (включая область, город (поселок и т.д.) и индекс, т.к. студент может быть иногородним), пол, форма обучения (очная/заочная), № зачетки, год рождения. Если, допустим, невозможно связаться со студентом (долго не было в ВУЗе, изменились контактные данные и т. д.) или о чём-то необходимо сообщить их родителям, то нам потребуется их информация, а именно: ФИО мамы и ее контактные данные, а также ФИО и контактная информация папы. Если нет родителей, то указываем контактные данные родственников (близких).
Также в нашей базе необходимо указывать группу, где учитываем год набора и буквы той или иной группы. Так как группа принадлежит к специальности, то мы должны занести такую информацию: полное, кратное название специальности и шифр. Любая специальность относится к определенному факультету, о котором нам нужно знать полное, краткое название, ФИО декана, номер телефона деканата.
Если студент является иногородним и проживает в общежитии, то следует учесть адрес того общежития, куда заселен, телефон, ФИО коменданта.
Так как каждый год студент заселяется и выселяется из общежития, необходимо учитывать дату заселения и выселения. Также студента могут селить каждый год в разные комнаты, и для этого следует содержать информацию о номере комнаты (например, комната № 2.713, где 2- номер самого общежития, 7- этаж, 13- № комнаты на этом этаже), типе комнаты (женский/мужской) и количеству мест в этой комнате.
2 Постановка задачи
Перед разработчиком была поставлена задача спроектировать и разработать базу данных автоматизации учета студентов в ВУЗе. Она включает в себя подробное изучение предметной области данного курсового проекта: сбор и группировка информации о данных студентов, в какой группе учится, к какому факультету относится, сведения о их родителях и т.д. В результате должен получиться проект базы данных, которая бы позволяла хранить, обрабатывать, автоматизировать и изменять информацию для вышеописанной справочной системы. База данных должна иметь удобный, лёгкий и доступный для восприятия пользовательский интерфейс. Должны быть продуманы специальные запросы по систематизации и обработке хранимой информации. Пользователю должна быть предоставлена возможность самому задавать параметры имеющихся запросов. В проекте должны быть изучены и хорошо продуманы вопросы защиты и обновления информации. Данный проект должен быть предназначен для круга пользователей в ВУЗе, не обязательно знакомых с СУБД, в которой реализована база данных "Учета студентов".
В данном курсовом проекте проектируется БД, которую может использовать любой пользователь. БД облегчает работу сотрудникам ВУЗа, потому что можно свободно и легко найти информацию об интересующем студенте, и для этого затратить немало сил и времени.
В целом, база данных должна:
· содержать необходимую информацию о студентах;
· обеспечивать возможность выполнять запрос, поиск, изменение и систематизацию данных БД;
· иметь удобный пользовательский интерфейс для работы с ней любого пользователя;
· иметь необходимые запросы и формы для обработки хранимой информации;
· предусматривать архивацию данных и сохранность хранимой в БД информации.
3 Концептуальное проектирование СУБД
В нашей базе данных было выбрано 6 объектов: «Студент», «Группа», «Специальность», «Факультет», «Комната» и «Общежитие».
Рассмотрим свойства каждого из этих объектов и отношения, которыми связаны объекты. Главным объектом является «Студент», который имеет 11 свойств: ФИО, год рождения, домашний адрес, контактный телефон, пол, ФИО мамы, контактная информация мамы, ФИО папы и его контактная информация, форма обучения, № зачетки. Этот объект связан отношением «учится в…» с объектом «Группа». Также он объект связан отношением «проживает в …» с объектом «Комната».
Следующий наш объект - «Группа» имеет 2 свойства: год набора и буква и связан отношением «принадлежит к …» с объектом «Специальность».
Объект «Специальность»- 3 свойства: полное название, краткое название и шифр; связан отношением «относится к…» с объектом «Факультет».
Объект «Факультет» характеризуется свойствами: полное название, краткое название, Ф.И.О. декана, № телефона деканата.
Объект «Комната» имеет 3 свойства: тип комнаты, количество мест и № комнат и связан отношением «принадлежит к…» с объектом «Общежитие».
К «Общежитию» относятся 3 свойства: адрес, ФИО коменданта, номер телефона общежития.
Отношение «Проживает в…» обладает свойствами дата заселения и дата выселения.
В данной схеме используются 2 связи: один ко многим () и многие ко многим (). Между объектами «Студент» и «Группа» выбрана связь , потому что каждый студент учится только в одной на данный момент группе, а группа содержит много студентов.
Между «Группой» и «Специальностью» выбрано отношение : одна группа принадлежит к одной специальности, в свою очередь к одной специальности может принадлежать несколько групп. Аналогичная связь связывает объекты «Специальность» и «Факультет»- к одному факультету может относиться много различных специальностей; одна специальность относится к одному факультету. Рассмотрим связь между объектами «Комната» и «Общежитие»: т.к. каждая комната принадлежит одному общежитию, а общежитие содержит множество комнат. В итоге получаем отношение . Между объектом «Студент» и «Комната» получаем отношение , т.к. один студент может проживать в разное время в разных комнатах, а в одной комнате может проживать несколько студентов. На рис.3.1 показана схема «Объект отношения».
3.2 Обоснование выбора модели данных
3.2.1 Типы моделей данных
БД может быть основана на одной модели или на совокупности нескольких моделей. Любую модель данных можно рассматривать как объект, который характеризуется своими свойствами (параметрами), и над ней, как над объектом, можно производить какие-либо действия.
Любая модель должна обеспечивать такие операции над БД:
- поиск указанного элемента базы;
- переход от одних данных к другим;
- движение по записям;
Существуют три основных типа моделей данных – реляционная, иерархическая и сетевая.
3.2.2 Иерархическая модель данных
Иерархическая модель БД представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих перевернутое дерево. Данная модель характеризуется такими параметрами, как уровни, узлы, связи. Принцип работы модели таков, что несколько узлов более низкого уровня соединяются при помощи связи с одним узлом более высокого уровня.
Узел – информационная модель элемента, находящегося на данном уровне иерархии.
Свойства иерархической модели данных:
- несколько узлов низшего уровня связано только с одним узлом высшего уровня;
- иерархическое дерево имеет только одну вершину (корень), не подчиненную никакой другой вершине;
- каждый узел имеет свое имя (идентификатор);
- существует только один путь от корневой записи к более частной записи данных.
Пример реализации иерархической модели данных для разрабатываемой БД представлен на рисунке 3.2.
Достоинством ИМД в общем является эффективное использование памяти, малое время обращения к данным. Но для данной БД малое время обращения к информации можно наблюдать только для верхних уровней, а не для нижних из-за глубины дерева. Недостатком этой модели является высокая избыточность. Одна запись БД – это совокупность деревьев. Через эту структуру нельзя построить отношение многие ко многим. Очевидна громоздкость обрабатываемой информации, сложность в понимании для конечного пользователя. ИМД не имеет механизма поддержки целостности данных.
Изображенная на рисунке схема отображает вырожденное дерево, у которого каждый объект имеет не более одного ребенка. Основным недостатком иерархической модели для данного программного продукта являются громоздкая форма записи реляционной модели, что, в свою очередь, приводит к осложнению понимания пользователем базы.
3.2.3 Сетевая модель данных
Сетевая модель позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных.
Основной структурой в сетевых моделях данных является «сеть». При таком представлении существует несколько входов в сеть – неоднозначность доступа к данным.
Особенности такого представления: один или несколько узлов могут иметь больше одного родителя; время доступа изменяется в зависимости от исходного входа. Время доступа в сетевой структуре может быть больше, чем в иерархической структуре.
Схема сетевой модели данных для данной БД показана на рисунке 3.3.