ПЗ автоматизації обліку успішності з фізичного виховання

Автор: Пользователь скрыл имя, 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

Работа содержит 1 файл

lozovaya_kursach_java.docx

— 608.55 Кб (Скачать)

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

В пакете domain разработаны следующие пользовательские классы:

  • Department – хранит информацию о кафедре
  • Faculty – хранит информацию о факультете
  • Group – хранит информацию о группе
  • Lecturer – хранит информацию о преподавателях
  • Normative – хранит информацию об успеваемости
  • Result – хранит информацию о результатах
  • Semestr – хранит информацию о название семестра
  • Student – хранит информацию о студентах

 Пакет controls:

  •    ConnectioDB – класс для соединения с БД
  •    Utils – класс, содержащий дополнительные методы:
    • getStudentsList() – метод для получения списка всех студентов
    • getStudentsListForGroup – метод для получения списка студентов по группе
    • getListGroups() – метод для получения списка группы
    • getResultListForStudent(String id_student) – метод для получения результатов определенного студента
    • deleteStudent(int id_student) – метод для удаления опреленного студента
    • deleteResult(int id_result) – метод для удаления результатов успеваемости
    • getListNormative() – метод получения списка нормативов
    • getListLecturer() – метод для получения списка преподавателей
    • getListSemestr() – метод для получения списка названий семестров

На рис. 3.7 представлено дерево интерфейса ПО автоматизации учета успеваемости по физическому воспитанию.

 

Рисунок 3.7 -  Дерево интерфейса ПО автоматизации учета успеваемости по физическому воспитанию

3.3.2 Детальное проектирование  серверной части ПО

3.3.2.1  Описание  таблиц БД на основе логической модели БД

 

В таблицах 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 Проверка работоспособности ПО

 

На рисунке  4.1- изображена экранная форма «Авторизация пользователя».

 

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

 

Рисунок 4.1 – Авторизация пользователя

 

На рисунке  4.2 представлена главная форма программы «Физическое воспитание учебного заведения»

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

 

Рисунок 4.2 – Главная форма программы.

 

На рисунке  4.3 представлена  форма добавления студента в группу.

После того как пользователь выбрал группу с которой он будет работать, появляется возможность действия «Добавить студента», «Редактировать студента», а также «Удалить студента». Пользователь заполняет следующие поля при действие «Добавить студента»:ФИО студента, номер группы, телефонный номер.

 

Рисунок 4.3 - Добавление студента в группу.

 

На рисунке  4.4 представлена форма редактирования студента.

Если  пользователь хочет редактировать  информацию о студентах, он нажимает кнопку «Редактировать студента». После  чего необходимо заполнить следующие  поля: ФИО студента, номер группы, телефонный номер.

Рисунок 4.4 - Редактирование студента.

 

На рисунке  4.5 представлена форма добавления успеваемости.

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

 

Рисунок 4.5 - Добавление успеваемости.

 

 

 

Выводы

 

В ходе выполнения курсового  проекта по учебной дисциплине «Проектирование  распределенных систем ЭВМ» было разработано  программное обеспечение «Физическое воспитание учебного заведения» в виде клиент-серверного приложения.

Были поставлены требования пользователя:

- мандатные требования;

- ограничительные требования.

Был разработан глоссарий  проекта, описаны варианты использования.

После чего были разработаны  требования к ПО:

- функциональные требования;

- нефункциональные требования.

Было проведено архитектурное  и детальное проектирование клиентской и серверной частей ПО.

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

Была проведена проверка работы ПО. В результате  проведения функциональных тестов ошибок выявлено не было.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список литературы

 

  1. ru.wikipedia.org/wiki/Проектирование_баз_данных.
  2. ru.wikipedia.org/wiki/Физическая_модель.
  3. Наконечний С.І. , Савіна С.Є. Програмування: Навч. посібник – К., КНЕУ, 2005 – 401с.
  4. Симонович С.В., Евсеев Г.А., Алексеев А.Г. Специальная информатика: Учебное пособие- М., АСТ-ПРЕСС, 2008 - 480с.
  5. П.Ноутон, Г.Шилдт «Java 2», Изд.дом «Вильямс», 2008.
  6. Стивен Стелтинг, Олав Маассен «Применение шаблонов Java», Москва, 2002.
  7. Мартин Фаулер, Кендалл Скотт «Основы UML», Москва, 2005.
  8. ru.wikipedia.org/wiki/Естественный_язык
  9. support.microsoft.com/kb/283878/ru

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение  А. Листинг исходных кодов SQL-сценариев для создания таблиц БД

 

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.*;

Информация о работе ПЗ автоматизації обліку успішності з фізичного виховання