Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Документ Microsoft Office Word.docx
Скачиваний:
9
Добавлен:
13.04.2015
Размер:
302.9 Кб
Скачать

ВВЕДЕНИЕ

В данной курсовой работе на тему «Автоматизация учета рабочего времени» ставится целью рассмотреть возможности построения современной интеллектуальной системы учета рабочего времени с удаленным управлением и редактированием через локальную сеть или Интернет.

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

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

Учет и контроль рабочего времени – одна из важнейших частей автоматизации производства . Она необходима для контроля рабочего времени сотрудников на производстве. Процесс учета элементов поставленной задачи нуждается в автоматизации. Благодаря автоматизации процесса учета и контроля позволяет не только получать отчеты о работе сотрудников, но и отображать место положение сотрудника на данный момент на производстве (есть он на производстве или его нет). Так же программа оснащена журналом посещений который обеспечивает полный отчет о передвижении сотрудника по производству.

Одно из дополнительных требований к программам –экономичность, заранее установленное программное обеспечение, которое должно быть с открытым исходным кодом или бесплатным. Преимущественная операционная система – Unix подобная система: Mint, Linux, Ubuntu, Kubuntu, FreeBSD,Debian, RedHat, Centos, Fedoracore, Suse или подобные. Также эти системы могут быть легко настроены на выполнение одной или нескольких функций, что позволит использование слабых терминалов.

Также для разработки программного кода требуется специальное ПО, которое позволит компилировать программный код в машинный. По тем же характеристикам нами был выбран пакет MonoDevelop.

1 Анализ литературы и требованй к тз

1.1 Общая характеристика системы

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

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

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

1.2 Требования к программе

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

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

Для невозможности разбития на ряд более детальных требований без потери завершённости, программа должна быть целостна. Это достигается создание одного запускаемого файла.

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

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

1.3 Анализ свойств объекта автоматизации

Программа "Учета рабочего времени" имеет такие преимущества:

- Мониторинг персонала в режиме РВ;

- Возможность проводить мониторинг удаленно;

- Генерация отчетов о посещаемости.

- Возможность редактировать данные в БД из самой программы.

Схема взаимодействия элементов показана ниже (рис 1.1.)

Устройство ввода данных или датчик

Сервер

Рисунок 1.1. Схема взаимодействия элементов

1.4. Формулировка задач, подлежащих решению в проекте.

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

1) Добавление в список сотрудников нового сотрудника;

2) Добавление в журнал новых событий;

3) Поиск сотрудников в журнале по конкретным меткам;

4) Удаление элементов из журнала и списка сотрудников;

5) Вывод на экран полного списка или вывод полного журнала;

2 Разработка объектной модели, алгоритмов и структуры базы данных

2.1 Объектная модель системы

На рисунке представлено взаимодействие составляющих с базой данных. Продемонстрировано на (рис.2.1)

Журнал

сотрудников

Должности

Клиент

(postgreSQL)

База данных

Журнал посещений

Помещения

Локация

Рисунок 2.1 - Модель взаимодействия компонентов.

В данной программе с помощью SQL - запросов посылаемых в базу данных, производятся следующие действия:

Создание списка должностей и добавление или удаление из него информации.

Создание журнала сотрудников который на прямую завязан с списком должностей, полное редактирование журнала сотрудник.

Просмотр помещений , в которых работают сотрудники.

Изменение названий и параметров элементов, редактируя записи о них посылая запросы в БД для того что бы получить необходимые нам отчеты.

Отчет предоставляется в виде вывода данных в отдельном окне.

2.2 Алгоритм работы программы.

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

|Главное меню (окно)

-Меню сотрудников (кнопка);

|Меню сотрудников (окно)

-Полный список сотрудников (кнопка);

-Добавить сотрудника (кнопка);

-Удалить сотрудника (кнопка);

-Поиск сотрудника в списке (кнопка);

-Меню журнал (кнопка);

|Журнал посещений(окно)

-Показать весь журнал посещений (кнопка);

-Добавить новое событие в журнал (кнопка);

-Удалить событие из журнала (кнопка);

При нажатии на кнопки в окнах "Меню сотрудников" и "Журнал посещений" открываются окна которые и выполняют все основные поставленные задачи. Выполнение этих задач начинается с подключение программы к базе данных (в программе оно реализовано автоматически). Если подключение прошло не успешно то программа выдаст ошибку.

Завершение программы происходит по закрытию окна текущей операции или при закрытии главного меню.

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

При добавлении записи в тот или иной журнал, активируется SQL -запрос INSERT, и вводимые данные добавляют новую строку таблицу.

При удалении записи из того или иного журнала, активируется SQL -запрос DELETE "назване таблицы" WHERE "конкретный параметр", данный запрос позволяет удалять строку или несколько строк по конкретному параметру.

При поиске записи, в том или ином журнале, активируется SQL - запрос SELECT "название таблицы" WHERE "искомый параметр", данный запрос позволяет искать сроку или несколько строк по конкретном параметру.

Алгоритм работы программы в общем виде представляет из себя запросы (в виде окон и кнопок) согласно которым пользователь выбирает действия которые он хочет сделать. Алгоритм главного окна представлен на (рис 2.2)

Рисунок - 2.2 Алгоритм работы главного окна

Алгоритм работы окон выбора действия идентичен. Поэтому надобности в выводе алгоритмов окон "Меню журнал" и "Меню сотрудников" надобности нет. Куда больший интерес представляют алгоритмы выполняющие поставленные задачи.

Алгоритм вывода полного списка сотрудников (рис 2.3)

Рисунок 2.3 - Алгоритм программы вывода полного списка сотрудников.

После такого запроса на экран выводиться полная таблица содержащая в себе все параметры таблицы которая находиться в БД (рис2.4).

Рисунок - 2.4 Снимок окна работы программы вывода полного списка.

Алгоритм добавления или удаления пользователя из БД (рис 2.5)

Рисунок 2.5 - Алгоритм (добавления/удаления) пользователя из БД

В вод передаваемых параметров в БД осуществляется через окно (рис 2.6)

Рисунок 2.6 - Окно ввода данных для добавление сотрудника

После заполнения полей и нажатия кнопки ОК данные из полей передаются в БД .

2.3 Структура базы данных

Реляционная база данных представляет собой набор таблиц (которые Кодд назвал отношениями), каждая из которых имеет уникальное имя и состоит из строк – записей (кортежей) и столбцов – полей (атрибутов). Каждая запись представляет объект реального мира. Свойства объекта, его характеристики определяются значениями полей. Каждое поле имеет имя, тип и размер данных, хранимых в нем. Имена полей вынесены в шапку таблицы.

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

Структурирование — это введение соглашений о способах представления данных.

Неструктурированными называют данные, записанные, например, в текстовом файле.

Тип данных. Понятие тип данных в реляционной модели данных полностью адекватно понятию типа данных в языках программирования. Обычно в современных реляционных БД допускается хранение символьных, числовых данных, битовых строк, специализированных числовых данных (таких как "деньги"), а также специальных "темпоральных" данных (дата, время, временной интервал).

Наименьшая единица данных реляционной модели – это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой – как три различных значения.

Доменом называется множество значений данного типа (например, множество названий населенных пунктов).

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

База данных (БД) – совокупность специальным образом организованных данных, хранимых в памяти компьютера и отражающих состояние объектов и их отношений в рассматриваемой предметной области. Предметной областью принято называть ту часть реального мира, объекты которой описаны в базе данных. База данных состоит из множества связанных файлов.

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

В данной курсовой работе таблицы доведены до второй нормальной формы.

Вторая нормальная форма – (полное соответствие первой нормальной форме )

Первая нормальная форма (1Нф) - таблица не содержит повторяющихся полей и составных значений полей.(Пример.) Колонки с одинаковым именем или в 1 колонке не может храниться 2 разных значения, а так же

Требования ко второй нормальной форме(2Нф):

– в таблице должны храниться данные об 1 типе объектов.

– таблица должна содержать первичный ключ

–все остальные поля, кроме PK, должны однозначно идентифицироваться им.

Структура таблицы empl приведена на (рис 2.7)

Рисунок -2.7 Структура таблицы empl

Перед тем как создавать таблицы в PostgreSQL нужно составить их предварительный вид (табл 2.1)

Таблица 2.1 - Таблица empl

Name

Type

Size

Key

ID

Serial

PK

Name

Varchar

(16)

O_name

Varchar

(16)

S_name

Varchar

(30)

Notice

Text

Подобным образом создаются и другие таблицы такие как журнал, должность и.п.

Создаем предварительный вид необходимые таблицы для выполнения курсовой работы (табл 2.2, табл 2.3, табл 2.4, табл 2.5,)

Таблица 2.2 - Таблица jrn

Name

Type

Size

Key

ID

Serial

PK

ID_empl

int

FK

Hour

Int

Min

Int

Day

Int

Month

Int

Year

Int

Stat

Text

Таблица 2.3 - Таблица dolz

Name

Type

Size

Key

ID

Serial

PK

Dolznost

Varchar

(30)

Notice

Text

ID_parent

Int

Таблица 2.4 - Таблица room

Name

Type

Size

Key

ID

Serial

PK

Nomer

Text

Notice

Text

Таблица 2.5 - Таблица location

Name

Type

Size

Key

ID

Serial

PK

ID_sotryd

Int

FK

ID_room

Int

FK

2.4 Связь таблиц в базе данных

Отношением является таблица, заголовком которой является схема отношения, а строками - кортежи; имена атрибутов именуют столбцы этой таблицы. Отношения используются для представления объектов окружающего мира и представления связей между объектами.

Реляционная база данных - это конечный набор отношений.

Каждое отношение обладает хотя бы одним потенциальным ключом, поскольку, по меньшей мере комбинация всех его атрибутов удовлетворяет условию уникальности. Один из потенциальных ключей (выбранный произвольным образом) принимается за его первичный ключ. Остальные возможные ключи, если они есть, называются альтернативными ключами.

Отношения, схема базы данных

Схема отношения - это именованное множество пар {имя атрибута, имя домена (или типа)}.

Схемой реляционной базы данных называется набор заголовков отношений, входящих в базу данных.

Ограничение целостности

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

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

В курсовой работе используется связь таблиц один ко многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В, но каждый экземпляр объекта В связан не более чем с 1 экземпляром объекта А. Подобное отношение показано на (рис 2.8)

Рисунок - 2.8 Связи между таблицами

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