Министерство образования и науки РФ
Федеральное агентство по образованию
ГОУ ВПО "Курский государственный технический университет"
Кафедра "Управление качеством, стандартизация и сертификация"
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе по дисциплине
"Информационное обеспечение и базы данных"
на тему: "Разработка программной системы для работника деканата"
Выполнил студент группы УК-51
А.Н. Руднева
Руководитель курсовой работы
В.В. Куц
Курск 2007
Аннотация
Курсовая работа на тему: "Разработка программной системы для работника деканата" состоит из пояснительной записки.
Пояснительная записка содержит описание предметной области базы данных, инфологическую модель предметной области, описание создания базы данных, включающее создание таблиц базы данных, построение запросов и создание форм и отчетов. Пояснительная записка содержит также описание работы с базой данных при выполнении поставленных задач.
Пояснительная записка выполнена на листах, содержит таблиц, рисунка.
Содержание
1. Описание предметной области
2. Построение инфологической модели предметной области
3. Создание базы данных в Microsoft Access 2000
3.1 Создание таблиц базы данных
3.2 Создание связей между таблицами базы данных
3.3 Построение запросов базы данных
3.4.1 Создание форм базы данных
3.3.4 Создание отчетов базы данных
3.5 Создание элементов управления базой данных
Введение
База данных предназначена для работника деканата. Она должна обеспечивать хранение сведений о группах и студентах, а также о результатах текущей сессии. Для каждого студента должны храниться такие данные: фамилия, имя, отчество, номер зачетной книжки, адрес постоянной прописки и адрес, по которому студент проживает, получает или нет стипендию, а также оценки, полученные в текущей сессии, и отметки о сданных зачетах. Сведения о группе - это номер группы, факультет, кафедра, специальность, к которым она относиться, год формирования группы.
Работник деканата может вносить следующие изменения:
Удалить или добавить в базу студента;
Поменять студенту номер группы, специальность, кафедру, номер зачетки;
Занести оценки, полученные студентами на экзаменах по каждому предмету;
По результатам сессии начислить стипендии студентам, которые имеют не более одной тройки. Право на 50% повышения стипендии имеют студенты, получившие в сессию не более двух четверок, а на 100% повышение - студенты, сдавшие сессию на все пятерки.
Работнику деканата могут потребоваться следующие сведения:
Студенты, обучающиеся на определенной кафедре и не сдавшие хотя бы один экзамен, с указанием группы и предмета, по которому оценка отсутствует или равна 2?
Средний бал студентов каждой группы указанного факультета?
Средний бал по каждому предмету?
Список студентов указанной кафедры, которые по итогам сессии могут получать стипендию?
Список студентов, подлежащих отчислению (не сдано более двух предметов) по всему факультету.
Количество студентов факультета, не получающих стипендию, получающих обычную стипендию, с 50% надбавкой и со 100% надбавкой.
По какому предмету больше всего неудовлетворительных оценок?
Какой предмет студенты сдали лучше, чем другие предметы?
Необходимо предусмотреть возможность получения отчета о студентах каждой группы факультета, получающих стипендию, с указанием оценок, полученных ими, и подсчетом среднего балла каждого студента, среднего балла группы и факультета. Следует также подсчитать в группе и на факультете общее количество студентов, количество студентов, получающих обычную стипендию, получающих повышенную стипендию и не получающих стипендию.
Все эти возможности и сведения работник деканата сможет быстро и легко найти в грамотно составленной базе данных.
1. Описание предметной области
База данных предназначена для хранения сведений об имеющихся в гостинице номерах, о проживающих в гостинице клиентах и о служащих, убирающих в номерах.
Описание предметной области можно свести к заполнению таблицы 1, в которой выделены объекты и атрибуты, относящиеся к данной предметной области.
Таблица 1 - Описание предметной области
Объекты | Атрибуты | Описание атрибута |
1. Факультет |
1.1 Код факультета (первич. ключ) |
Счетчик |
1.2 Факультета | Наименование факультета | |
2. Кафедра | 2.1 Код кафедры (первич. ключ) | Счетчик |
2.2 Код деканата (внешний ключ) | Цифровой код | |
2.3 Кафедра | Наименование кафедры | |
3. Специальность | 3.1 Код специальности (первич. ключ) | Счетчик |
3.2 Код кафедры (внешний ключ) | Цифровой код | |
3.3 Специальность | Наименование специальности | |
3.4 Шифр специальности | Шестизначное число | |
4. Группа |
4.1 Код группы (первич. ключ) |
Счетчик |
4.2 Код специальности (внешний ключ) | Цифровой | |
4.3 Год формирования | Четырехзначное число | |
4.4 Обозначение | Буквенно-цифровое обозначение (2 буквы и 2 цифры) | |
5. Студент |
5.1. Код студента (первич. ключ) | Счетчик |
5.2. Фамилия студента | Фамилия студента | |
5.3. Имя студента | Имя студента | |
5.4 Отчество студента | Отчество студента | |
5.5 Адрес прописки | Буквенно - цифровое обозначение | |
5.6 Адрес проживания | Буквенно - цифровое обозначение | |
5.7 Номер зачетки | Шестизначное число | |
5.8 Иногородний/ не иногородний | Иногородний, не иногородний | |
5.9 Код группы (внеш. ключ) | Цифровой код | |
6. Сессия | 6.1. Оценка | Оценка на экзамене (5/4/3/2/не сдан) |
6.2. Дата сдачи экзамена | дд. мм. гг (число, месяц, год сдачи студентом экзамена) | |
6.3. Код студента (внеш. ключ) | Цифровой код | |
6.4 Код предметов | Цифровой код | |
7. Предмет | 7.1. Код предмета (первич. ключ) | Счетчик |
7.2 Предмет | Наименование предмета | |
8. Стипендия | 8.1 Код стипендии (первич. ключ) | Счетчик |
8.2 Код студента (внеш. ключ) | Цифровой код | |
8.3 Стипендия | Размер стипендии (Четырехзначное число) | |
9. Зачеты | 9.1 Код студента (внеш. ключ) | Цифровой код |
9.2 Код предмета (внеш. ключ) | Цифровой код | |
9.3 Оценка на зачете | Оценка на зачете (зачтено/не зачтено) | |
10. Предметы по специальности | 10.1 Код специальности (внеш. ключ) | Цифровой код |
10.2 Код предметов (внеш. ключ) | Цифровой код |
2. Построение инфологической модели предметной области
Анализ определенных выше объектов и атрибутов позволяет выделить сущности проектируемой базы данных и построить ее инфологическую модель.
К стержневым сущностям можно отнести:
Факультет (Код факультета, Факультет)
Предмет (Код предмета, Предмет)
К обозначениям можно отнести:
Студент (Код студента, Фамилия студента, Имя студента, Отчество студента, Адрес прописки, Адрес проживания, Номер зачетки, Иногородний/ не иногородний, Код группы)
Группа (Код группы, Код специальности, Год формирования, Обозначение)
Специальность (Код кафедры, Код специальности, Специальность, Шифр специальности)
Кафедра (Код кафедры, Кафедра, Код деканата)
Стержневые сущности и обозначения связаны между собой ассоциациями:
Зачеты (Код студента, Код предмета, Оценка на зачете)
Сессия (Оценка, Дата сдачи экзамена, Код студента, Код предметов)
Предметы по специальности (Код студента, Код специальности)
Инфологическая модель представлена на рисунке 1.
3. Создание базы данных в Microsoft Access 2000
3.1 Создание таблиц базы данных
Каждая сущность инфологической модели, представленной выше, реализуется в виде таблицы с аналогичным именем и соответствующими полями.
В процессе проектирования базы данных "Система для деканата" были созданы следующие таблицы:
Факультет
Кафедра
Специальность
Группа
Студент
Сессия
Предметы
Стипендия
Зачеты
Предметы по специальности
Структуры созданных таблиц приведены ниже.
Таблица 2 - Структуры созданных таблиц
Название таблицы |
Название поля | Тип данных поля | Свойства поля |
Факультет | Код факультета | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Факультет | Текстовый |
Размер поля: 25 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
Кафедра | Код кафедры | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Кафедра | Текстовый |
Размер поля: 25 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Код деканата | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Специальность | Код специальности | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Код кафедры | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Специальность | Текстовый |
Размер поля: 25 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Шифр специальности | Текстовый |
Размер поля: 6 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Группа | Код группы | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Код специальности | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Год формирования | Текстовый |
Размер поля: 4 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Обозначение | Текстовый |
Размер поля: 5 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
Студент | Код студента | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Фамилия студента | Текстовый |
Размер поля: 20 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Имя студента | Текстовый |
Размер поля: 20 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Отчество студента | Текстовый |
Размер поля: 20 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Адрес прописки | Текстовый |
Размер поля: 50 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Адрес проживания | Текстовый |
Размер поля: 50 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Номер зачетки | Текстовый |
Размер поля: 6 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Код группы | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Иногородний/ не иногородний | Текстовый |
Размер поля: 14 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Сессия | Оценка | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
Дата сдачи экзамена | Дата/время |
Формат поля: Краткий формат даты Обязательное поле: Да Индексированное поле: Нет |
|
Код студента | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
Код предметов | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Предметы | Код предмета | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Предмет | Текстовый |
Размер поля: 20 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Стипендия | Код стипендии | Счетчик |
Размер поля: Длинное целое Новые значения: Последовательные Индексированное поле: Да (Совпадения не допускаются) |
Код студента | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Стипендия | Денежный |
Формат поля: Денежный Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Зачеты | Код студента | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
Код предмета | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
|
Оценка на зачете | Текстовый |
Размер поля: 11 Обязательное поле: Да Пустые строки: Нет Индексированное поле: Нет |
|
Предметы по специальности | Код специальности | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Обязательное поле: Да Индексированное поле: Нет |
Код предметов | Числовой |
Размер поля: Длинное целое Число десятичных знаков: Авто Значение по умолчанию: 0 Обязательное поле: Да Индексированное поле: Нет |
После создания всех таблиц в окне базы данных должны быть записаны имена всех таблиц. Окно базы данных "Система для деканата" со всеми созданными таблицами представлено на рисунке 2.
Рисунок 2 - Окно базы данных "Система для деканата" с таблицами
3.2 Создание связей между таблицами базы данных
При создании связи между таблицами связываемые поля могут иметь разные имена. Однако связываемые поля должны иметь одинаковый тип данных, за исключением случая, когда поле первичного ключа является полем типа Счетчик. Поле счетчика связывается с числовым полем, если значения свойства "Размер поля" обоих полей совпадают.
Устанавливаем связи между таблицами базы данных "Система для деканата" согласно инфологической модели. Полученная таким образом схема данных (совокупность таблиц, связанных между собой) представлена на рисунке 3.
Рисунок 3 - Схема данных
3.3 Построение запросов базы данных
Работа с любой базой данных предполагает получение (выбор из совокупности данных) необходимой пользователю информации. С этой целью разрабатываются запросы, в содержании которых определяется информация, которая может понадобиться пользователю, и процесс ее поиска и вывода.
Работнику деканата могут потребоваться следующие сведения:
Студенты, обучающиеся на определенной кафедре и не сдавшие хотя бы один экзамен, с указанием группы и предметы, оценка по которому отсутствует или равна 2;
Средний балл каждой группы;
Средний балл по каждому предмету;
Список студентов указанной кафедры, которые по итогам сессии могут получать стипендию;
Список студентов, подлежащих отчислению;
Количество студентов, не получающих стипендию; получающих обычную стипендию; получающих стипендию с 50% -ной надбавкой; получающих стипендию со 100% -ной надбавкой;
Какой предмет студенты сдали хуже других предметов;
Какой предмет студенты сдали лучше других предметов.
Согласно этим пунктам в процессе разработки базы данных созданы запросы, позволяющие пользователю, то есть работнику деканата, быстро и без особых усилий найти необходимую ему информацию: об успеваемости студентов с указанием их фамилий, о средних баллах по предметам, о средней успеваемости каждой группы, о студентах, получающих определенную стипендию и др.
Запрос, выводящий фамилии студентов определенной кафедры с указанием группы и предмета, по которому оценка отсутствует или равна 2, ссылается на связанные между собой таблицы "Кафедра", "Специальность", "Группа", "Студент", "Предметы", "Сессия". Структура запроса представлена на рисунке 4.
Рисунок 4 - Запрос о студентах обучающихся на определенной кафедре и не сдавшие хотя бы один экзамен, с указанием группы и предметы, оценка по которому отсутствует или равна 2;
Запрос, в результате действия которого выводятся данные о среднем балле студентов каждой группы, ссылается на таблицы "Факультет", "Кафедра", "Специальность", "Группа", "Студент", "Сессия".
Структура запроса представлена на рисунке 5.
Рисунок 5 - Запрос о среднем балле по каждой группе
Запрос, в результате действия которого выводятся данные о среднем балле по каждому сдаваемому студентами предмету, ссылается на таблицы "Сессия" и "Предметы".
Структура запроса представлена на рисунке 6
Рисунок 6 - Запрос о среднем балле по предмету.
В результате работы запроса "Студенты, которые могут получать стипендию" выводятся фамилии, инициалы студентов и размер стипендии. Данный запрос ссылается на таблицы "Стипендия" и "Студент".
Структура запроса представлена на рисунке 7.
Рисунок 7 - Запрос о студентах, которые по результатам сессии могут получать стипендию
В результате работы запроса "список студентов, подлежащих отчислению", выводятся фамилия студента, количество несданных зачетов и экзаменов. Этот запрос ссылается на запросы "Кол-во несданных зачетов" и "Кол-во несданных экзаменов". Структура запроса представлена на рисунке 8.
Рисунок 8 - Запрос о студентах, которые по результатам сессии могут быть отчислены.
Запросы о количестве студентов, не получающих стипендию, получающих обычную стипендию, получающих стипендию с 50% -ной надбавкой и получающих стипендию со 100% -ной надбавкой ссылаются на одну и ту же таблицу "Стипендия". Структуры этих запросов представлены соответственно на рисунках 9, 10, 11 и 12.
Рисунок 9 - Запрос о количестве студентов, не получающих стипендию
Рисунок 10 - Запрос о количестве студентов, получающих обычную стипендию.
Рисунок 11 - Запрос о количестве студентов, получающих стипендию с 50% -ной надбавкой
Рисунок 12- Запрос о количестве студентов, получающих стипендию со 100% -ной надбавкой
Запрос, выводящий названия наиболее плохо сданных предметов, ссылается на запрос "Кол-во 2 по предметам". Структура запроса представлена на рисунках 13.
Рисунок 13 - Запрос, выводящий наиболее плохо сданный предмет
Запрос, выводящий названия наиболее плохо сданных предметов, ссылается на запрос "Средний бал по предмету". Структура запросов представлены соответственно на рисунках 13.
3.4 Создание форм и отчетов
3.4.1 Создание форм базы данных
Работа с данными в Microsoft Access осуществляется в основном с помощью форм. Любая форма содержит окна - поля, которые предназначены для ввода информации.
Для ввода и редактирования данных были созданы следующие формы:
"Данные о студентов";
"Студент";
"Начисление стипендии".
В процессе работы с формой "Данные о студентов" работник деканата может с помощью нее удалить или добавить в базу студента, а также поменять студенту номер группы, специальность, кафедру, номер зачетки. Источником данных для данной формы являются запрос "Для формы студенты". Форма выглядит, как показано на рисунке 14.
Рисунок 14 - Форма "Данные о студентах"
Форма "Студент" содержит поля, в которых работник деканата (пользователь разрабатываемой базы данных) может внести оценки по каждому предмету, сданному студентом в течение сессии. Создание данной формы сопровождалось созданием подчиненной формы "Сессия.
Форма "Студент" представлена на рисунке 15.
Рисунок 15 - Форма "Студент"
С помощью формы "Начисление стипендии" работник деканата имеет возможность по результатам сессии начислить студенту соответствующую стипендию. Данная форма ссылается на запрос "Начисление стипендии". Форма представлена на рисунке 16.
Рисунок 16 - Форма "Начисление стипендии"
3.3.4 Создание отчетов базы данных
Хотя таблицы и формы можно напечатать, часто возникает необходимость преобразовать их в отчеты, которые предназначены для пользователей, занимающихся анализом информации. Отчет включает в себя сведения из таблицы или запроса, которые являются источником данных, содержащихся в этом отчете.
Процесс проектирования базы данных в соответствии с заданием были созданы отчеты о студентах каждой группы факультета, получающих стипендию, с указанием их оценок, полученных ими, подсчетом среднего балла каждого студента, подсчетом среднего балла группы и факультета. Следует также подсчитать количество студентов, не получающих стипендию, получающих обычную стипендию и получающих повышенную стипендию.
Рисунок 17 - Отчет о студентах каждой группы факультета, получающих стипендию, с указанием их ФИО, и размере стипендии.
Рисунок 18 - Отчет о подсчете среднего балла каждого студента
Рисунок 19 - Отчет о подсчете среднего балла по группам
Рисунок 20 - Отчет о подсчете среднего балла по факультету
Рисунок 21 - Отчет о подсчете количества студентов в группах
Рисунок 22 - Отчет о подсчете количества студентов на факультете
Рисунок 23 - Отчет о подсчете количества студентов не получающих стипендию
Рисунок 24 - Отчет о подсчете количества студентов получающих обычную стипендию.
Рисунок 25 - Отчет о подсчете количества студентов получающих стипендию + 50% надбавкой.
Рисунок 26 - Отчет о подсчете количества студентов получающих стипендию + 100% надбавкой.
Рисунок 27 - Фрагмент (1из 5стр) отчета о студентах каждой группы факультета, получающих стипендию, с указанием их оценок, полученных ими.
3.5 Создание элементов управления базой данных
После создания форм и запросов была создана форма для управления всей базой данных - главная кнопочная форма "Система для деканата" (рисунок 28).
Рисунок 28 - Главная кнопочная форма "Информация для деканата".