Разработка информационной системы для отчетности структурного подразделения ВУЗа

Выбор инструментария для разработки информационной системы. Базы данных и системы управления базами данных, формулирование задач системы. Выбор языка программирования, специфика проектирования клиентского приложения. Требования для информационной системы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 07.08.2018
Размер файла 750,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

* <=, меньше равно;

* >, больше;

* >= , больше равно;

* =, равно;

* ==, равно;

* <>, не равно;

* !=, не равно;

* IN, принадлежит;

* AND, логическое и;

* OR, логическое или;

* IS, логическая эквивалентность;

* LIKE, подобие строк;

* GLOB, подобие имен файлов.

LIKE, представляет собой операцию эквивалентности, но используется для подбора текстовых значений похожих на образец, так же работает с отрицанием NOT. % обозначает ноль или несколько символов, а _ обозначает один символ.

GLOB, тоже самое что и LIKE, только использует синтаксис Unix для определения символов подстановки, * обозначает ноль или несколько символов, а ? обозначает один символ.

Ограничения:

* Unique, ограничение уникальности, оно требует, чтобы все значения в столбце были уникальны, при попытке добавления значения которое уже есть или заменить, то выдает ошибку;

* Not null, не будет возможности добавить нулевое значение;

* Primary key, первичный ключ, это столбец, который идентифицирует таблицу в базе данных и значение которого должно быть уникальным и вечным. Так же можно еще использовать модификатор autoincrement;

* Default, значение по умолчанию. Задает значение по умолчанию для столбца, если его значение не было задано;

* Check, с помощью него задаются дополнительные ограничения;

* References, внешний ключ, это ограничение на то что нельзя ввести значение отличное от значений из столбика таблицы, откуда взят этот ключ.

Теперь можно приступить к созданию самой базы данных.

Откроем консоль и создадим файл базы данных SQLite, с помощью команды:

sqlite3 database.db

После чего в текущем каталоге будет создан файл database.db, sqlite3 обеспечит нам приглашение на ввод, в интерфейсе командной строки.

Базу мы создали, теперь можно перейти к созданию таблиц. Но сначала нужно включить foreign_keys, потому что по умолчанию он выключен, с помощью команды:

PRAGMA foreign_keys = “1”;

После создаем таблицы:

1. Преподаватель

CREATE TABLE `teacher` (

`id` INTEGER PRIMARY KEY AUTOINCREMENT,

`full_name` TEXT NOT NULL,

`position` TEXT NOT NULL,

`rate` REAL NOT NULL,

`session` TEXT NOT NULL

);

2) Дисциплина:

CREATE TABLE `disciplin` (

`id` INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,

`name` TEXT NOT NULL

);

3) Специальность:

CREATE TABLE `specialties` (

`code` TEXT NOT NULL,

`name` TEXT NOT NULL,

PRIMARY KEY(`code`)

);

4)Преподавание:

CREATE TABLE `teaching` (

`load_type` TEXT NOT NULL,

`department` TEXT NOT NULL,

`semester` INTEGER NOT NULL,

`name` TEXT NOT NULL,

`specialty_code` TEXT NOT NULL,

`lectures` REAL,

`practices` REAL,

`lab_exercises` REAL,

`consultations` REAL,

`kp_kw` REAL,

`kz` REAL,

`pk` REAL,

`credits` REAL,

`exams` REAL,

`total` REAL,

`id` INTEGER PRIMARY KEY AUTOINCREMENT,

`id_teacher` INTEGER NOT NULL,

`id_dis` INTEGER NOT NULL,

FOREIGN KEY(`specialty_code`) REFERENCES `specialties`(`code`),

FOREIGN KEY(`id_teacher`) REFERENCES `teacher`(`id`),

FOREIGN KEY(`id_dis`) REFERENCES `disciplin`(`id`)

);

5) Дополнительные работы:

CREATE TABLE `extra_works` (

`id` INTEGER PRIMARY KEY AUTOINCREMENT,

`id_teacher` INTEGER NOT NULL,

`name` TEXT NOT NULL,

`load_type` TEXT NOT NULL,

`norm` INTEGER NOT NULL,

`hours` INTEGER NOT NULL

);

6) Научна работа:

CREATE TABLE `science_work` (

`id` INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,

`name` TEXT NOT NULL,

`text` TEXT NOT NULL,

`total` INTEGER NOT NULL

);

Принимая во внимание все выше сказанное постоим следующую датталогическую схему базы данных (Рис. 3.1)

Рис. 3.1 - Даттадлгическая схема БД

3.3 Проектирование клиентского приложения

Требуется разработать пользовательское приложение. Приложение должно иметь функции, обработки входного файла Excel, запись всей информации в базу данных, сбор информации о его расписании, вывод двух видов отчетов и карты за семестр. Главное окно (Рис. 3.2).

Рис. 3.2 - Главное окно

В нем будет находится поле входных данных, рабочая область где заполняем расписание преподавателя, выходные данные, на выход выдает карту, отчет Excel и Word.

При нажатии добавить вылезает всплывающее окно, в котором добавляем повторяющиеся работы (Рис. 3.3).

Рис. 3.3 - Ввод повторяющихся работ

Выбирается тип занятия, список групп, с какую по какую неделю рассчитывать, день недели, количество пар, и какие по четности недели.

Второе добавить в главном меню (Рис. 3.4).

Рис 3.4 - Ввод единичных работ

Выбирается тип работы, список групп и выбирается дата когда назначена.

Изображённое ниже (Рис. 3.5).

Рис. 3.5 - Пример входного файла

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

Изображённое ниже (Рис. 3.6).

Рис. 3.6 - Пример выходного отчета Word

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

Изображение ниже (Рис. 3.7).

Рис. 3.7 - Пример выходного отчета Excel

Является выдаваемый системой отчет, в формате Excel. Для его заполнения так же используется пустой макет, в который при надобности из базы берутся данные обрабатываются и заполняют результатом таблицу.

Ниже изображено (Рис. 3.8).

Рис. 3.8 - Пример составляемой карты

Является выдаваемым приложением файлом Excel. В котором полностью расписывается работа преподавателя. И так же, как и в двух предыдущих, берутся данные из базы, обрабатываются и их результат записывается в таблицу.

Заключение

В рамках данной работы была разработана информационная система по автоматизации процесса составления отчетов и карт за семестр. Следствием ее необходимости послужило, то что преподаватели тратят много времени на заполнение тысячи ячеек в Excel, это работа очень выматывает, так как нужно повторять монотонные действия, с которыми прекрасно справится компьютер.

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

Разработанная система имеет следующие возможности:

1. Парсинг Excel файлов для последующего переноса всей информации по индивидуальному плану за семестр в базу;

2. Сотрудники могут ввести свое расписание, которое так же сохраняется в базе данных;

3. Не требуется загружать данные из Exel и заполнять свое расписание заново, все данные загрузятся сами из базы данных;

4. Построение отчетов как в формате Exel так и Word;

5. Построение карты в формате Exel;

Один из ее плюсов -- это то что ее можно запустить на любой десктопной системе. Вторым плюсом является то что ей есть куда расти, строить расписание, сделать обучающее приветствие, которое проведет пользователя по всем этапам, использовать сетевую СУБД что бы пользоваться ей можно было от куда угодно при этом все данные бы хранились например на сервере университета. Основой информационной системы стали Python плюс Qt и SQLite. Из минусов можно отметить не удобный интерфейс и то что не все работы преподавателей сейчас обрабатываются системой. Но так как это только прототип он еще не раз изменит свой внешний вид и в будущем охватит все виды работ.

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.