Проектирование базы данных по контролю успеваемости студентов
Предметная область — это часть реального мира, данные о которой мы хотим отразить в базе данных. Например, в качестве предметной области можно выбрать бухгалтерию какого-либо предприятия, отдел кадров, банк, магазин и т. д. Предметная область бесконечна и содержит как существенно важные понятия и данные, так и малозначащие или вообще не значащие данные. Так, если в качестве предметной области… Читать ещё >
Проектирование базы данных по контролю успеваемости студентов (реферат, курсовая, диплом, контрольная)
В настоящее время в разных сферах деятельности все более нуждаются в средствах, позволяющих быстро и безошибочно перерабатывать большое количество информации. Применение таких средств позволяет существенно снизить затраты и повысить эффективность работы. Например, в каждом учебном заведение большой поток данных (абитуриенты, студенты, преподаватели, данные об успеваемости и т. п.) и чтобы снизить время обработки информации и облегчить работу сотрудникам заведений создается информационная система, которая может это позволить.
Целью курсовой работы является проектирование базы данных по контролю успеваемости студентов, а именно по учету и просмотру текущих оценок за экзамены, дополнительные экзамены, зачеты и курсовые работы.
В процессе разработки базы данных предстоит решить следующие задачи:
Произвести анализ предметной области, запросов пользователей, документов, отражающих события и процессы, протекающие во время сессии;
Разработать концептуальную модель, которая описывает объекты и связи предметной области; составить список сущностей и атрибутов, описывающих их;
Разработать логическую модель; построить реляционную модель на основании логической модели; разработать физическую модель;
Реализовать базу данных, проанализировав и выбрав одно из наиболее распространенных СУБД, с учетом требований проекта.
Для решения оставленных задач нужно разработать БД, которая позволит:
Хранить в течении всего времени обучения студента персональную информацию о каждом студенте, успеваемости по каждому предмету и распределении студентов по группам;
Выводить в удобной форме данные по следующим запросам пользователей:
Вывод списка студентов;
Добавление нового студента;
Добавление нового предмета;
Выборка данных по успеваемости данного студента;
Оформление повторной сдачи предмета студентом;
Вывод зачетной или экзаменационной ведомости.
1. ОСНОВНАЯ ЧАСТЬ.
1.1 Анализ предметной области.
Для начала проектирования базы данных необходимо определить ее предметную область.
Предметная область — это часть реального мира, данные о которой мы хотим отразить в базе данных. Например, в качестве предметной области можно выбрать бухгалтерию какого-либо предприятия, отдел кадров, банк, магазин и т. д. Предметная область бесконечна и содержит как существенно важные понятия и данные, так и малозначащие или вообще не значащие данные. Так, если в качестве предметной области выбрать учет товаров на складе, то понятия «накладная» и «счет-фактура» являются важными понятиями, а то, что сотрудница, принимающая накладные, имеет двоих детей — это для учета товаров неважно. Однако, с точки зрения отдела кадров данные о наличии детей являются необходимыми. Таким образом, важность данных зависит от выбора предметной области.
Модель предметной области — это наши знания о предметной области. Знания могут быть как в виде неформальных знаний в мозгу эксперта, так и выражены формально при помощи каких-либо средств. В качестве таких средств могут выступать текстовые описания предметной области, наборы должностных инструкций, правила ведения дел в компании и т. п. Модель предметной области описывает скорее процессы, происходящие в предметной области и данные, используемые этими процессами. От того, насколько правильно смоделирована предметная область, зависит успех дальнейшей разработки приложений.
В данной курсовой работе рассматривается задачи, выполняемые учебной частью ВУЗа. Данная информационная система обеспечивает: хранение информации о студентах, учет процессов, связанных с обучением студентов, данные о преподавателях, учебных дисциплинах и т. д.
Каждый поступивший или уже учащийся в данном учебном заведении и так же преподаватели заносятся в информационную систему. Это способствует удобству обработки данных, уменьшению времени поиска определенных данных.
Промежуточная аттестация студентов осуществляется в соответствии с учебными планами по направлениям и специальностям подготовки в форме экзаменов и зачетов по учебным дисциплинам и практикам.
Экзамены являются заключительным этапом изучения всей дисциплины или ее части и имеют целью проверку знаний студентов по теории и выявление навыков применения полученных знаний при решении практических задач, а также навыков самостоятельной работы с учебной и научной литературой.
Зачеты, как правило, служат формой проверки выполнения студентами лабораторных и расчетно-графических работ, курсовых проектов (работ), усвоения учебного материала практических и семинарских занятий, а также проверки результатов учебной, производственной и преддипломной практик.
Экзамены и зачеты проводятся в строгом соответствии с утвержденными рабочими программами дисциплин и программами практик.
Все студенты обязаны сдавать экзамены и зачеты по дисциплинам, предусмотренным учебным планом.
Знания, умения, навыки студентов оцениваются оценками: «отлично», «хорошо», «удовлетворительно», «неудовлетворительно», «зачет», «не зачет». Эти оценки проставляются в аттестационную ведомость. Оценки «неудовлетворительно» и «не зачет» в зачетную книжку студентов не проставляются.
Неявка на экзамен или зачет отмечается в аттестационной ведомости словами «не явился» и в случае последующего выявления неуважительности причины деканом факультета проставляется неудовлетворительная оценка.
В случае повторной сдачи экзамена или сдачи в неустановленное расписанием время декан факультета выписывает студенту направление на сдачу дисциплины.
1.2 Выбор средств.
В создании моей информационной системы использовалась система управления базами данных Microsoft Access. Она является одним из самых популярных приложений в семействе настольных СУБД. Все версии Access имеют в своем арсенале средства, значительно упрощающие ввод и обработку данных, поиск данных и предоставление информации в виде таблиц, графиков и отчетов. Начиная с версии Access 2000, появились также Web-страницы доступа к данным, которые пользователь может просматривать с помощью программы Internet Explorer. Помимо этого, Access позволяет использовать электронные таблицы и таблицы из других настольных и серверных баз данных для хранения информации, необходимой приложению. Присоединив внешние таблицы, пользователь Access будет работать с базами данных в этих таблицах так, как если бы это были таблицы Access. При этом и другие пользователи могут продолжать работать с этими данными в той среде, в которой они были созданы.
Access позволяет не только вводить данные в таблицы, но и контролировать правильность вводимых данных. Для этого необходимо установить правила проверки прямо на уровне таблицы. Тогда каким бы образом не вводились данные — прямо в таблицу, через экранную форму или на странице доступа к данным, Access не позволит сохранить в записи те данные, которые не удовлетворяют заданным правилам. В Access возможно создание связей между таблицами, что позволяет совместно использовать данные из разных таблиц. При этом для пользователя они будут представляться одной таблицей. Реализовать такую возможность в системах управления электронными таблицами сложно, а иногда просто невозможно.
Устанавливая взаимосвязи между отдельными таблицами, Access позволяет избежать ненужного дублирования данных, сэкономить память компьютера, а также увеличить скорость и точность обработки информации. Для этого таблицы, содержащие повторяющиеся данные, разбивают на несколько связанных таблиц.
Access имеет развитую систему защиты от несанкционированного доступа, которая позволяет каждому пользователю или группе пользователей видеть и изменять только те объекты, на которые ему выданы права администратором системы, например можно запретить использование некоторых команд меню, открытие определенных форм, изменение данных в таблицах или формах. Электронные таблицы тоже позволяют защитить данные паролем или разрешить только просмотр данных, однако эти средства существенно проще.
Таким образом, СУБД Access применяется в тех случаях, когда прикладная задача требует хранения и обработки разнородной информации о большом количестве объектов и предполагает возможность многопользовательского режима.
1.3 Построение концептуальной модели.
Поскольку проще исследовать структуру графически, чем описывать ее в текстовой форме, проектировщики БД посчитали удобным использовать соответствующие изобразительные средства, в которых логические объекты (сущности, entity) и их связи (relationship) могли изображаться графическими средствами.
С этой целью была разработана модель «сущность-связь» (entityrelationship, ER), которая является, безусловно, самым широко распространенным и простым графическим инструментом моделирования данных.
ER-модели обычно представляются в виде диаграмм «сущность-связь» (ER-диаграмма, ERD). В ER-диаграмме используется графическое представление модели компонентов базы данных.
Основу ER-модели составляют следующие компоненты.
Сущность (логический объект) — персона, местоположение или предмет, сведения о которых подлежат сбору и хранению. В ER-модели сущность представлена в виде прямоугольника. Название сущности (имя существительное) записывается в центре прямоугольника, как правило, заглавными буквами и предпочтительнее в единственном числе на русском языке: ХУДОЖНИК лучше, чем ХУДОЖНИКИ и СТУДЕНТ лучше, чем СТУДЕНТЫ. Обычно если ER-диаграмма связана с реляционной моделью, сущность отображается на реляционную таблицу. Каждая строка реляционной таблицы соответствует экземпляру сущности.
Сущность описывается набором атрибутов. Каждый атрибут описывает отдельное свойство сущности. Например, сущность СТУДЕНТ имеет такие атрибуты, как номер студенческого билета, фамилию, имя, отчество и т. д.
Связь описывает соединение между данными. Большинство связей описывает соединение между двумя сущностями. Разработчики ER-диаграмм для обозначения типа связи используют термин связность (на ER-диаграммах связность записывается рядом с прямоугольником, соответствующим сущности). Связь изображается на ER-диаграмме ромбом, соединенным с соответствующей сущностью. Название связи (в глагольной форме) записывается внутри ромба.
1.4 Разработка физической модели БД.
В реляционной базе данных все данные хранятся в таблицах. Названия сущностей станут заголовками таблиц, а атрибуты станут столбцами. Целостность данных в реляционной базе данных основывается на концепции ключей.
Первичный ключ (PK) — это атрибут который можно использовать для уникальной идентификации таблицы.
Внешний ключ (FK) — это атрибут, который существует в нескольких таблицах и является первичным ключом одной из этих таблиц. Связь проводим от первичного ключа одой таблицы до внешнего ключа другой таблицы.
Рисунок 2 — Физическая модель БД.
На этой схеме данных изображено 7 таблиц, так же на этой схеме данных можно увидеть связи, и их тип.
Рассмотрим каждую таблицу, типы данных и ключи.
Таблица 1 — Студент.
Атрибут. | Тип данных. | Ключ. | |
Номер зачетки. | Long Integer. | Primary Key. | |
Номер группы. | Integer. | Foreign Key. | |
Фамилия, Имя, Отчество. | Text. | ||
Таблица 2 — Группа.
Атрибут. | Тип данных. | Ключ. | |
Номер группы. | Integer. | Primary Key. | |
Направление обучения. | Text. | ||
Таблица 3 — Преподаватель.
Атрибут. | Тип данных. | Ключ. | |
Код преподавателя. | Long Integer. | Primary Key. | |
Фамилия, Имя, Отчество. | Text. | ||
Таблица 4 — Предмет.
Атрибут. | Тип данных. | Ключ. | |
Код предмета. | Long Integer. | Primary Key. | |
Наименование предмета. | Text. | ||
Таблица 5 — Вид контроля.
Атрибут. | Тип данных. | Ключ. | |
Код контроля. | Long Integer. | Primary Key. | |
Наименование контроля. | Text. | ||
Таблица 6 — Ведомость.
Атрибут. | Тип данных. | Ключ. | |
Код документа. | Long Integer. | Primary Key. | |
Код контроля. | Integer. | Foreign Key. | |
Код предмета. | Integer. | Foreign Key. | |
Наименование документа. | Text. | ||
Дата. | Date/Time. | ||
Таблица 7 — Оценка.
Атрибут. | Тип данных. | Ключ. | |
Код документа. | Long Integer. | Primary Foreign Key. | |
Номер зачетки. | Long Integer. | Primary Foreign Key. | |
Оценка. | Text. | ||
Таблицы-сущности связаны между собой различными отношениями.
Группа и Студент — один-ко-многим. В группе учится много студентов, но каждый студент может учится только в одной группе.
Группа и Преподаватель — многие-ко-многим. Каждый преподаватель преподает в разных группах, а в каждой группе преподает много преподавателей.
Преподаватель и Предмет — многие-ко-многим. Преподаватель может преподавать различные предметы, но и один предмет преподают множество преподавателей.
Вид контроля и Ведомость — один-ко-многим. Здесь таблица «Вид контроля» исполняет роль справочника. Ведомости различные (зачетная, экзаменационная, так же студент может сдавать предмет по направлению из деканата), но вид контроля только один: Ведомость зачетная или экзаменационная, но не может быть одновременно и тем и другим.
На основе этих таблиц-сущностей мы можем реализовать базу данных в практически любой СУБД. В нашем случае был выбран Microsoft Access как наиболее распространенная и доступная СУБД.
2. ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ В MICROSOFT ACCESS.
Microsoft Access — это СУБД предназначенная для хранения и поиска информации, её представления в удобном виде и автоматизации часто повторяющихся операций. Чтобы реализовать базу данных в Access надо ввести через режим конструктора свою модель. Для начала надо ввести название таблиц и всех их атрибутов. Здесь же задается тип данных и первичный ключ.
Затем реализуем реляционную модель третей нормальной формы в схеме данных.
Для ввода данных в таблицы мы можем воспользоваться специально созданными формами.
Например, для заполнения таблицы «Студент» была создана форма «Сведения о студенте».
Рисунок 3 — Форма «Сведения о студенте».
Так же данные можно вводить непосредственно в таблицу, но это не всегда удобно.
При вводе данных в таблицы в Microsoft Access нужно быть предельно внимательным, так как можно не заметив изменить какие-либо важные данные (Access не выдает при этом ни каких предупреждений). И хорошо, если это заметите сразу. Потом найти ошибку будет гораздо труднее.
Формы как раз служат для уменьшения вероятности ошибки. Они позволяют различать типы и форматы вводимых данных.
Рисунок 4 — Пример ввода данных непосредственно в таблицу После заполнения всех таблиц данными мы можем организовать работу с выборкой и изменением этих данных.
Рисунок 5 — Каскадное отображение таблиц В Access используется каскадное отображение таблиц. Например, открыв таблицу «Ведомость» и нажав на значок «+» слева, мы увидим связь с результатами сдачи студентами этой дисциплины.
Рисунок 6 — Каскадное отображение таблицы «Ведомость».
В MS Access существует возможность показать каскадно не одну связь, а несколько, что делает анализ связей особенно удобным, к тому же такой подход делает возможным анализ непрямых связей. В таком виде удобно исправлять неверные связи. Возможность же править данные при каскадном отображении делает MS Access ещё более привлекательным для создания сложных комплексов автоматизированного учета данных.
Рисунок 7 — «Каскад» из нескольких связей Единственным «недостатком» такого рода изображения можно считать большой объём места на экране, заминаемое «полной» схемой.
Создадим несколько информационных запросов к нашей базе данных, воспользовавшись системой создания запросов.
Рисунок 8 — Мастер запросов Проверим их работоспособность согласно задания Рисунок 9 — Запрос Зачастую запросы удобнее создавать создавать с помощью конструктора запросов, хотя большинство простых запросов легко создаются с помощью мастера Рисунок 10 — Конструктор запросов Практически все современные базы данных управляются запросами. Для этого был создан специальный язык SQL.
SQL — это язык, который дает вам возможность создавать и работать в реляционных базах данных, содержащиеся в базе, управлять ими и налагать правила, обеспечивающие целостность реляционных данных, которые являются наборами связанной информации сохраняемой в таблицах.
Чтобы войти в режим SQL в access нужно в поле конструктора запроса нажать правой кнопкой и в появившемся окне нажать «Режим SQL».
Рисунок 11 — Пример SQL-запроса.
MS Access позволяет создавать завершенную базу данных с удобным интерфейсом. Для этого в нем существует множество средств.
Для управления нашей базой данных создадим специальную кнопочную форму, на которой расположим кнопки доступа к основным необходимым операциям.
Каждая кнопка будет вызывать какою-либо процедуру (выборка данных, внесение новых данных, построение отчетов, просмотр содержимого таблиц).
Кнопка «Список студентов» выводит для просмотра форму «Список студентов», с возможностью редактирования и добавления данных.
Рисунок 13 — Таблица «Список студентов».
Если нажать на номер студента будет выведена форма с данными о успеваемости студента без возможности редактирования содержимого. Редактирование успеваемости производится через специальную форму «Ведомость».
Рисунок 14.
В верхнем левом углу формы находится ссылка «Новый студент», которая вызывает чистую форму «Студент» для добавления учащихся.
Рисунок 15 — Добавление нового студента Эта же форма вызывается если нажать кнопку новый студент в Главной форме или щелкнуть на номере в конце списка студентов формы «Список студентов».
Рисунок 16 — Редактирование данных об успеваемости студентов Так же на Главной форме присутствуют кнопки «Список предметов» и «Новый Предмет». Они действуют так же как и кнопки студента, только показывают и изменяют соответственно данные об изучаемых предметах.
Последняя кнопка вызывает процедуру создания ведомостей по предметам. При нажатии на эту кнопку будут запрошены номер группы, предмет и тип контроля (зачет, экзамен, курсовая работа).
После этого будет выведена экзаменационная ведомость согласно запрошенным данным.
Рисунок 17 — Результат вывода отчета «Ведомость».
данная база модель запрос Полученный отчет можно сохранить в дробном формате, распечатать, отправить по электронной почте и так далее.
В различных ситуациях требуется разграничение доступа к базе данных различных пользователей. Например, студенты не должны иметь доступа к редактированию данных об успеваемости. Кроме того сама база должна быть защищена от вмешательства.
Условно способы защиты информации можно разделить на три группы.
Во-первых, это разделение информации путем размещения ее в различных файлах с различными правами доступа. Во-вторых, это разграничение прав доступа к объектам баз данных для различных пользователей. Это достигается путем создания рабочих групп и назначения владельцев объектов. В-третьих, это введение общих ограничений доступа при открытии базы данных путем назначения параметров запуса.
Защитить базы данных MS Access путем использования пароля базы данных довольно легко. Пароль ни как не связан с другими способами защиты и никак их не ограничивает. Например, можно назначить разные пароли для разных файлов одной разделенной базы данных.
Пароль базы данных обеспечивает среднюю степень защиты. Кроме того он не позволяет разделять пользователей по правам доступа. Все пользователи знающие пароль регистрируются с правами Администратора и могут совершать любые действия с базой данных.
Можно использовать средства сетевой безопасности для разграничения доступа, для этого нужно выполнить сетевую установку MS Access.
MS Access является системой баз общего назначени. Модель защиты разработана на основе рабочей группы. Каждая РГ определяет единую технологию работы совокупности пользователей. Информация о каждой рабочей группе хранится в соответствующем файле РГ (system.mdw), который автоматически создается при установке системы. Информация о размещении этого файла хранится в системном реестре. Созданные группы постоянны для любой базы данных одного компьютера. А разрешения для групп устанавливаются отдельно для каждой базы данных.
Access является весьма гибкой и универсальной системой, предъявляющей достаточно умеренные требования к техническому обеспечению. Поэтому на сегодняшнем этапе эта СУБД удобна для работы практически на всех иерархических уровнях управления производством — от отрасли в целом до отдельного предприятия.
Важно помнить, что работа с базой данных MS Access в многопользовательской среде может вызывать проблемы, связанные с блокировкой данных и конфликтами доступа к ним. Подавление сообщений об ошибках, недостаточное внимание к подобным вопросам либо надежда на благоприятное стечение обстоятельств не решает проблему.
Если для приложения не предусмотрено эффективное решение вопросов работы в многопользовательской среде, при работе с ними неизбежно буду возникать следующие проблемы:
Новые записи не сохраняются. Если подобная ошибка не повторяется, это говорит не об отсутствии проблемы, а о ненадежности приложения.
Пользователи получают невразумительные сообщения о невозможности обеспечить доступ к данным.
Проблемы работы приложений Access в многопользовательской среде связаны не только с установкой и снятием блокировок записей. Поскольку такое приложение существует в виде единого файла и, по крайней мере, часть его форм может быть непосредственно связана с данными, любой обзор проблем применения в многопользовательском режиме должен охватывать вопросы работы на уровне файла, аспекты конфигурирования, а также технологий разработки интерфейсов и свойств запросов и форм. Типичное приложение Access требует определенного сочетания различных приемов работы в распределенном режиме, поскольку в разных частях приложения подобные проблемы решаются различными способами.
ЗАКЛЮЧЕНИЕ.
В настоящее курсовой работе разрабатывалась БД для информационной системы «Учет успеваемости», которая приблизительно отражает деятельность учебного учреждения.
Во время инфологического проектирования были определены информационные потоки, сущности: студенты, ведомость; и связи между ними в рассматриваемой предметной области.
На этапе даталогического проектирования все объекты предметной области и их свойства были формально представлены в виде таблицы с набором полей определенного типа и свойств.
Итогом данной курсовой работы стало получение приложения с интуитивно понятным интерфейсом, позволяющее выполнить некоторые задачи деканата, вести учет студентов, их успеваемости, а так же хранить данные о студенте на протяжении всего периода его обучения.
1. Проектирование баз данных СУБД Microsoft Access [Текст]: учеб. пособие для вузов / Н. Н. Гринченко [и др.]. — Москва: Горячая линия-Телеком, 2004. — 240 с.
2. Проектирование реляционных баз данных [Текст]: учеб. пособие для вузов / Ю. В. Полищук, С. И. Сормов, Т. А. Черных. — Оренбург: ГОУ ОГУ, 2008. — 133 с.
3. Системы управления базами данных и знаний: Справ. изд. / под ред. А. Н. Наумова. — М.: Финансы и статистика, 1991. — 352 с.
4. Основы использования и проектирования баз данных: учеб. пособие для вузов / В. М. Илюшечкин. — М.: Высшее образование, 2009. — 214 с.
5. Access 2010. Учебный курс. — Спб.: Питер, 2010. — 288 с.