Автор: Пользователь скрыл имя, 24 Мая 2013 в 04:40, курсовая работа
Целью такой программы является просмотр сдачи студентом определенных нормативов, указанных в учебном плане заведения. Таким образом сократиться время поиска студента среди всех членов группы, и просмотр нормативов будет удобным, так как будет отвечать только заданному студенту.
Введение 2
1 Постановка задачи 4
1.1 Требования пользователя 4
1.1.1 Мандатные требования 4
1.1.2 Ограничительные требования 4
2 Анализ требований 6
2.1 Анализ и обзор предметной области 6
2.2 Глоссарий 6
2.3 Описание вариантов использования ПО 7
2.4 Требования к ПО 13
2.4.1 Функциональные требования 13
2.4.2 Нефункциональные требования 13
3 Архитектурное и детальное проектирование ПО 14
3.1 Архитектурное проектирование клиентской части ПО 14
3.2 Архитектурное проектирование серверной части ПО 15
3.2.1 Логическая модель даннях 15
3.2.1.1 Выделение сущностей и атрибутов предметной области 15
3.2.2 Выделение связей между сущностями 17
3.2.3 Построение логической схемы БД 17
3.3 Детальное проектирование ПО 18
3.3.1 Детальное проектирование клиентской части ПО 18
3.3.2 Детальное проектирование серверной части ПО 20
3.3.2.1 Описание таблиц БД на основе логической модели БД 20
4 Проверка работоспособности ПО 21
Выводы 24
Список литературы 25
Приложение А. Листинг исходных кодов SQL-сценариев для создания таблиц БД 26
Приложение В . Листинг исходного кода клиентской части приложения 28
Для реализации пользовательских требований в полном объеме, были созданы следующие программные классы пакета model:
В пакете domain разработаны следующие пользовательские классы:
Пакет controls:
На рис. 3.7 представлено дерево интерфейса ПО автоматизации учета успеваемости по физическому воспитанию.
Рисунок 3.7 - Дерево интерфейса ПО автоматизации учета успеваемости по физическому воспитанию
В таблицах 3.1 – 3.8 приведено описание таблиц БД, включающее названия таблиц, полей таблиц, типы полей и их описание.
Таблица 3.1 – Faculty (Факультет)
Название поля |
Тип |
Ограничение |
Примечания |
id_faculty |
INT |
PK |
Номер факультете |
name_faculty |
VARCHAR |
UNIQUE KEY |
Название факультета |
Таблица 3.2 - Department (Кафедра)
Название поля |
Тип |
Ограничение |
Примечания |
id_department |
INT |
PK |
Номер кафедры |
code_department |
VARCHAR |
UNIQUE KEY |
Код кафедры |
name_department |
VARCHAR |
Название кафедры | |
id_faculty |
INT |
Номер факультета |
Таблица 3.3 - Group (Группы)
Название поля |
Тип |
Ограничение |
Примечания |
id_group |
INT |
PK |
Номер группы |
id_department |
INT |
Номер кафедры | |
name_group |
VARCHAR |
Название группы |
Таблица 3.4 - Normative (Нормативы)
Название поля |
Тип |
Ограничение |
Примечания |
id_normative |
INT |
PK |
Номер норматива |
name_normative |
VARCHAR |
Название норматива |
Таблица 3.5 - Semestr (Семестр)
Название поля |
Тип |
Ограничение |
Примечания |
id_semestr |
INT |
PK |
Номер семестра |
name_semestr |
VARCHAR |
Название семестра |
Таблица 3.6 - Student (Студенты)
Название поля |
Тип |
Ограничение |
Примечания |
id_student |
INT |
PK |
Номер студента |
surname_student |
VARCHAR |
UNIQUE KEY |
Фамилия |
firstname_student |
VARCHAR |
Имя | |
middlename_student |
VARCHAR |
Отчество | |
id_group |
INT |
Номер группы | |
phone_student |
VARCHAR |
Номер телефона |
Таблица 3.7 - Lecturer (Преподаватели)
Название поля |
Тип |
Ограничение |
Примечания |
id_lecturer |
INT |
PK |
Номер преподавателя |
id_department |
INT |
Номер кафедры | |
surname_lecturer |
VARCHAR |
UNIQUE KEY |
Фамилия |
firstname_lecturer |
VARCHAR |
Имя | |
middlename_lecturer |
VARCHAR |
Отчество |
Таблица 3.8 - Result (Результаты)
Название поля |
Тип |
Ограничение |
Примечания |
id_result |
INT |
PK |
Номер оценки |
id_semestr |
INT |
Номер семестра | |
id_lecturer |
INT |
Номер преподавателя | |
id_normative |
INT |
Номер норматива | |
id_student |
INT |
Номер студента | |
evaluation |
INT |
Оценка | |
delivery_date |
DATE |
Дата сдачи |
Код создания таблиц приведен в приложении А.
На рисунке 4.1- изображена экранная форма «Авторизация пользователя».
После того как запустилось приложение открывается экранная форма авторизации пользователя в системе, где требуется заполнить поля «Логин» и «Пароль» пользователя, после чего выполняется вход в систему. Если какое-либо из полей не заполнено или данные введены неправильно, система выдает сообщение об ошибке.
Рисунок 4.1 – Авторизация пользователя
На рисунке 4.2 представлена главная форма программы «Физическое воспитание учебного заведения»
После того как пользователь выполнил вход в систему, перед ним открывается главная форма программы, которая позволяет выбрать группу, с которой пользователь будет работать, после чего становятся активными дальнейшие действия для работы со студентами.
Рисунок 4.2 – Главная форма программы.
На рисунке 4.3 представлена форма добавления студента в группу.
После того как пользователь выбрал группу с которой он будет работать, появляется возможность действия «Добавить студента», «Редактировать студента», а также «Удалить студента». Пользователь заполняет следующие поля при действие «Добавить студента»:ФИО студента, номер группы, телефонный номер.
Рисунок 4.3 - Добавление студента в группу.
На рисунке 4.4 представлена форма редактирования студента.
Если пользователь хочет редактировать информацию о студентах, он нажимает кнопку «Редактировать студента». После чего необходимо заполнить следующие поля: ФИО студента, номер группы, телефонный номер.
Рисунок 4.4 - Редактирование студента.
На рисунке 4.5 представлена форма добавления успеваемости.
После
того как пользователь выбрал
определенного студента, он может
добавить данные о его
Рисунок 4.5 - Добавление успеваемости.
В ходе выполнения курсового
проекта по учебной дисциплине «Проектирование
распределенных систем ЭВМ» было разработано
программное обеспечение «
Были поставлены требования пользователя:
- мандатные требования;
- ограничительные требования.
Был разработан глоссарий проекта, описаны варианты использования.
После чего были разработаны требования к ПО:
- функциональные требования;
- нефункциональные требования.
Было проведено архитектурное и детальное проектирование клиентской и серверной частей ПО.
На основе выделенных сущностей и их атрибутов была построена логическая модель данных.
Была проведена проверка работы ПО. В результате проведения функциональных тестов ошибок выявлено не было.
CREATE TABLE `faculty` (
`id_faculty` int(3) NOT NULL AUTO_INCREMENT,
`name_faculty` varchar(30) NOT NULL,
PRIMARY KEY (`id_faculty`),
UNIQUE KEY `name_faculty` (`name_faculty`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `department` (
`id_department` int(3) NOT NULL AUTO_INCREMENT,
`code_department` varchar(3) NOT NULL,
`name_department` varchar(50) NOT NULL,
`id_faculty` int(3) NOT NULL,
PRIMARY KEY (`id_department`),
UNIQUE KEY `code_department` (`code_department`),
KEY `id_faculty` (`id_faculty`),
CONSTRAINT `department_fk` FOREIGN KEY (`id_faculty`) REFERENCES `faculty` (`id_faculty`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `group` (
`id_group` int(11) NOT NULL AUTO_INCREMENT,
`id_department` int(11) NOT NULL,
`name_group` varchar(4) NOT NULL,
PRIMARY KEY (`id_group`),
KEY `id_department` (`id_department`),
CONSTRAINT `group_fk` FOREIGN KEY (`id_department`) REFERENCES `department` (`id_department`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `normative` (
`id_normative` int(11) NOT NULL AUTO_INCREMENT,
`name_normative` varchar(20) NOT NULL,
PRIMARY KEY (`id_normative`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `semestr` (
`id_semestr` int(11) NOT NULL AUTO_INCREMENT,
`name_semestr` varchar(20) NOT NULL,
PRIMARY KEY (`id_semestr`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `student` (
`id_student` int(6) NOT NULL AUTO_INCREMENT,
`surname_student` varchar(20) NOT NULL,
`firstname_student` varchar(20) NOT NULL,
`middlename_student` varchar(20) NOT NULL,
`id_group` int(3) NOT NULL,
`phone_student` varchar(10) NOT NULL,
PRIMARY KEY (`id_student`),
UNIQUE KEY `surname_student` (`surname_student`),
UNIQUE KEY `surname_student_2` (`surname_student`),
KEY `id_group` (`id_group`),
CONSTRAINT `student_fk` FOREIGN KEY (`id_group`) REFERENCES `group` (`id_group`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `lecturer` (
`id_lecturer` int(3) NOT NULL AUTO_INCREMENT,
`id_department` int(3) NOT NULL,
`surname_lecturer` varchar(20) NOT NULL,
`firstname_lecturer` varchar(20) NOT NULL,
`middlename_lecturer` varchar(20) NOT NULL,
PRIMARY KEY (`id_lecturer`),
UNIQUE KEY `surname_lecturer` (`surname_lecturer`),
KEY `id_department` (`id_department`),
CONSTRAINT `lecturer_fk1` FOREIGN KEY (`id_department`) REFERENCES `department` (`id_department`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
CREATE TABLE `result` (
`id_result` int(3) NOT NULL AUTO_INCREMENT,
`id_semestr` int(3) NOT NULL,
`id_lecturer` int(3) NOT NULL,
`id_normative` int(3) NOT NULL,
`id_student` int(3) NOT NULL,
`evaluation` int(2) NOT NULL,
`delivery_date` date NOT NULL,
PRIMARY KEY (`id_result`),
KEY `id_semestr` (`id_semestr`),
KEY `id_lecturer` (`id_lecturer`),
KEY `id_normative` (`id_normative`),
KEY `id_student` (`id_student`),
CONSTRAINT `result_fk2` FOREIGN KEY (`id_semestr`) REFERENCES `semestr` (`id_semestr`),
CONSTRAINT `result_fk3` FOREIGN KEY (`id_lecturer`) REFERENCES `lecturer` (`id_lecturer`),
CONSTRAINT `result_fk4` FOREIGN KEY (`id_normative`) REFERENCES `normative` (`id_normative`),
CONSTRAINT `result_fk5` FOREIGN KEY (`id_student`) REFERENCES `student` (`id_student`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 PACK_KEYS=0;
JFrameMain.java
package view;
import controls.Utils;
import model.Result;
import model.Student;
import javax.swing.*;
Информация о работе ПЗ автоматизації обліку успішності з фізичного виховання