Разработка программного обеспечения для автоматизации работы отдела кадров ЗАО "Арно"

Описание предметной области, обзор программ-аналогов и разработка технического задания для создания программы для отдела кадров ЗАО "Арно". Разработка архитектуры программной системы, структуры данных, конструирование пользовательского интерфейса.

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

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

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

Размещено на http://www.allbest.ru/

СОДЕРЖАНИЕ

  • ВВЕДЕНИЕ
  • ГЛАВА 1 ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБАТЫВАЕМОГО ПРОГРАММНОГО ПРОДУКТА
    • 1.1 Описание предметной области
    • 1.2 Обзор программ-аналогов
    • 1.3 Моделирование проектируемой системы
    • 1.4 Разработка технического задания
  • ГЛАВА 2 РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА
    • 2.1 Разработка архитектуры программной системы
    • 2.2 Разработка структуры данных
    • 2.3 Конструирование пользовательского интерфейса
    • 2.4 Обработка событий и ошибок ввода данных
    • 2.5 Разработка программного алгоритма
    • 2.6 Организация интерфейса хранения данных.
    • 2.7 Тестирование программы
    • 2.8 Экономическое обоснование проекта
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
  • ПРИЛОЖЕНИЯ

ВВЕДЕНИЕ

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

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

Целью дипломного проекта является создание программного обеспечения для автоматизации работы отдела кадров ЗАО «Арно».

Для достижения поставленной цели необходимо решить следующие задачи:

- описать предметную область;

- исследовать программы-аналоги для выявления имеющихся недостатков;

- создать модель проектируемой системы;

- разработать архитектуру программной системы;

- разработать структуру данных;

- разработать пользовательский интерфейс;

- разработать программный продукт на основе созданной модели;

- разработать документацию на программное обеспечение.

Разрабатываемый программный продукт должен удовлетворять следующим требованиям:

- хранить данные о сотрудниках, вакансиях, больничных и отпусках;

- редактировать данные (добавление, изменение, удаление записей) о сотрудниках, вакансиях, больничных и отпусках;

- выполнять фильтрацию данных по таблице пользователи;

- выполнять поиск данных в таблице сотрудники по имени, фамилии и должности;

- выводить информацию на печать;

- иметь журнал операций, выполняемых пользователем над данными;

- иметь сетевой доступ к базе данных;

- иметь разграничение прав доступа к программе.

Для организации базы данных использовано приложение Microsoft SQL Server.

Для написания программного кода использована среда Microsoft Visual Studio.

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

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

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

программа интерфейс отдел кадров

ГЛАВА 1. ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБАТЫВАЕМОГО ПРОГРАММНОГО ПРОДУКТА

1.1 Описание предметной области

Система кадровой документации достаточно специфична. В работе с личным составом создаётся большой объём однотипных документов, легко поддающихся формализации. [3]

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

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

Внедрение компьютерной техники позволяет накапливать массивы информации (базы данных) и документы в электронной форме по всем сотрудникам организации, кадровому резерву, быстро находить и эффективно обрабатывать всю необходимую информацию по личному составу. [6]

Кадровая документация - непременная часть документов любой организации. Она ведётся кадровой службой (отделом, департаментом по работе с персоналом). [7]

Использование автоматизированных технологий позволяет существенно повысить эффективность работы кадровой службы. Документы по личному составу - это специфическая документация, требующая специализированных программ для работы с ней. А для составления списка требований к системе автоматизации службы кадров, выбора в наибольшей степени, подходящей для неё системы программного обеспечения (ПО) необходимы усилия именно специалистов самой кадровой службы. Поэтому работники службы кадров должны хорошо ориентироваться в возможностях современных автоматизированных систем, в первую очередь - для определения потребностей своего подразделения и составлении оптимального задания для IT-служб на приобретение, установку, настройку и последующее обслуживание средств автоматизации, необходимых в работе с документацией по личному составу. [10]

Системы учета кадров были разработаны на основании программ расчета заработной платы. В дальнейшем функционал этих программ значительно расширился. Это было связано с осознанием руководителей предприятий необходимости качественных изменений в работе отдела кадров. [12]

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

Программный продукт позволит:

- оперативно получать аналитическую информацию и принимать обоснованные управленческие решения;

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

- наладить эффективный учет всей информации, относящейся к персоналу компании, создавая тем самым основу для анализа и планирования затрат на персонал;

- вести учет в соответствии с законодательством и минимизировать риск финансовых санкций со стороны фискальных органов.

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

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

1.2 Обзор программ-аналогов

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

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

Достоинства:

- книга учета движения трудовых книжек и вкладышей в них, а также ведение трудовых книжек;

- экспорт любых сведений о сотрудниках в формат Microsoft Excel.

- учет рабочего времени сотрудников;

- общий и личные журналы документов;

- расчет всех видов стажа;

Недостатки:

- сложность в обучении;

- высокая стоимость;

Рисунок 1.1- Окно программы «Кадры плюс»

1С:Зарплата и управление персоналом 8 - эта программа проста и удобна в использовании, имеет красивый интерфейс, полностью подходит под данную организацию, но есть и свои минусы. Достоинства:

- фонд оплаты труда

- кадровый учет

- расчет заработной платы

- отчетность

Недостатки:

- высокая стоимость;

- программа имеет сложный для понимания интерфейс;

Рисунок 1.2 - Окно программы «1С:Зарплата и управление персоналом 8»

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

- Расчёт общего, непрерывного стажа, а также стажа работы на данном предприятии.

- удобная сортировка;

- фильтрация;

- группировка контактов по существенным признакам и категориям;

- экспорт данных в форматы Excel, txt, csv и xml.

- низкая стоимость.

Недостатки:

- не предоставляет информацию о семейном положении;

- отсутствуют сведения о трудовой книжке;

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

Рисунок 1.3 - Окно программы «Отдел кадров 6.0»

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

- составление отчетности;

- электронное согласование;

- удобный поиск;

- возможность работать с социальными и профессиональными сетями.

Недостатки:

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

Рисунок 1.4 - Окно программы «Сomindware»

Сравнительные характеристики программ аналогов приведены в таблице 1.1.

Таблица 1.1 - Сводная таблица программ аналогов

Кадры плюс

1С:Зарплата

и управление

персоналом 8

Отдел кадров 6.0

Experium

Наличие демо-версии

свободный доступ

свободный доступ

по запросу на e-mail

свободный доступ

Сетевая работа

да

да

да

да

Стоимость

20500 руб.

25000 руб.

19300 руб.

22800 руб.

Обновления

платно

платно

платно

платно

Техническая поддержка

платно

платно

платно

бесплатно

Руководство пользователя

нет

да

да

нет

Генератор отчетов

да

да

да

да

Уровень доступа

нет

нет

да

да

Лицензия

платно

платно

платно

платно

Проверка правильности входных данных

нет

да

нет

нет

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

1.3 Моделирование проектируемой системы

Для рассматриваемой предметной области построена функциональная модель нулевого уровня IDEF0 (Рисунок 1.5.). На данной модели показаны входная информация в виде штатного расписания, заявления об увольнении с работы, заявление о приеме на работу и иных заявлений; выходная информация представляет собой сформированный отчет о движении документов сотрудника, новое штатное расписание, отчет по выбранному сотруднику; ограничениями являются трудовой кодекс РФ и распоряжение от выше стоящего руководста; управляют процессами информационная система и сотрудник отдела кадров. На рисунке 1.6. показана функциональная модель первого уровня, представляющая собой декомпозицию процесса «работа отдела кадров» на четыре достаточно крупных функциональных блока:

- формирование штатного расписания;

- укомплектованность штата;

- учет движения кадров;

Рисунок 1.5 - Моделируемая схема данных IDEF0.

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

Функциональный блок «укомплектовать штат» использует заявление о принятии на работу, заявление об увольнении с работы, соответствии с трудовым кодексом РФ, распоряжение от вышестоящего руководства.

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

Рисунок 1.6 - IDEF0 модель - первый уровень

1.4 Разработка технического задания

Основание для разработки:

Разработка программного продукта ведется на основе задания, выданного на дипломную работу приказом по БГТУ №1 от 23.03.2017 г.

Тема разработки: «Программное обеспечение для автоматизации работы отдела кадров ЗАО «Арно».

Назначение разработки:

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

Требования к программному изделию:

К программному продукту предъявляются следующие требования:

Функциональные характеристики программы:

Основными функциями являются:

- хранение данных о сотрудниках, вакансиях, рабочем графике;

- (добавление, изменение, удаление) данных о сотрудниках, вакансиях, рабочем графике;

- возможность фильтрации данных по полям в таблице сотрудники (Имя, Фамилия, Должность), пользователи;

- осуществление поиска данных по фамилии, имени и должности сотрудника;

- возможность сортировки данных по всем столбцам таблиц.

- вывод на печать анкеты, содержащую информацию о выбранном сотруднике (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность, подпись сотрудника)

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

Требования к организации входных и выходных данных.

Входными данными являются:

- данные пользователя (логин, пароль);

- данные о сотрудниках (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность);

- данные о вакансиях (должность, название, дата начала, дата окончания);

- данные о рабочем графике (сотрудник, отпуск/больничный, дата начала, дата окончания);

- параметры фильтрации данных по полям в таблицах сотрудники (Имя, Фамилия, Должность), пользователи;

- параметры сортировки данных по всем столбцам таблиц.

- параметры поиска данных в таблицах по выбранному критерию;

Выходными данными являются:

- данные пользователя (логин, пароль);

- данные о сотрудниках (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность);

- данные о вакансиях (должность, название, дата начала, дата окончания);

- данные о рабочем графике (сотрудник, отпуск/больничный, дата начала, дата окончания);

- результаты фильтрации данных по полям в таблицах сотрудники (Имя, Фамилия, Должность), пользователи;

- результаты сортировки данных по всем столбцам таблиц.

- результаты поиска данных по выбранному критерию;

- вывод на печать анкеты, содержащую информацию о выбранном сотруднике (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность, подпись сотрудника);

Требования к временным характеристикам:

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

- задержка при создании отчетов не должна превышать 30 сек.

- запуск программы должен происходить не более чем за 15 сек.

Требования к пользовательскому интерфейсу:

- быстрая и удобная навигация (главное меню на основной форме, в каждой таблице присутствует полоса прокрутки);

- легкость освоения (наличие справки, разбитой на главы с использованием иллюстраций);

- интерфейс администратора позволяет пользоваться такими вкладками как: пользователи, справка, журналирование;

- интерфейс пользователя позволяет пользоваться такими вкладками как: сотрудники, вакансии, отпуски, больничные, справка;

- поле Телефон содержит маски ввода 00-00-00, 0-000-0000000;

- в числовые поля нельзя вводить знаки, буквы, символы, так же нельзя оставлять поля незаполненными;

- максимальная длина полей совставляет 32 символа.

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

Требования к надежности:

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

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

- Разграничить доступ к данным;

- Запретить ввод некорректных символов в программу (#;$;*;);

- Для поддержания целостности БД необходимо:

- Использование первичного ключа;

- Приведение к 3 нормальной форме;

Условия эксплуатации:

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

Требования к составу и параметрам технических средств: Минимальными системными требованиями для нормальной работы приложения являются:

- операционная система Windows XP/Vista/7/8/10

- процессор 1 GHz и выше;

- оперативная память 512 Мб;

- свободное место на жестком диске: 250 Мб.

Требования к информационной и программной совместимости

Программный продукт должен стабильно работать на операционных системах семейства Windows. Программа должна взаимодействовать с MS SQL Server.

Требования к программной документации

Программная документация должна иметь в наличии:

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

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

Технико-экономические показатели

Анализируя предложенные дипломные проекты выполнение по аналогичной тематике с расчетом экономического эффекта можно получить оценку экономической эффективности от одного экземпляра программы в пределах 10-20 тысяч рублей.

Этапы разработки

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

- сбор информации и анализ литературных источников,

- разработка метода решения задачи и составления алгоритма решения (проектирование),разработка и отладка программы (реализация).

ГЛАВА 2. РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА

2.1 Разработка архитектуры программной системы

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

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

Рисунок 2.1 - Архитектура программной системы

«Модуль управления пользователями». Данный модуль предоставляет возможности создавать группы пользователей, которые, в зависимости от делегированных им прав, могут управлять контентом программного продукта.

«Модуль журналирования». Данный модуль предназначен для контроля всех действий которые совершаются пользователями или скриптами через стандартный функционал.

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

«Модуль справки». Данный модуль предоставляет возможности доступа ко всем доступным справкам.

«Модуль управления работниками». Данный модуль предоставляет данные таблицы «Сотрудники», а также средства их редактирования. Использует данные из таблицы Staff, Position, Education, MilitaryDuty.

«Модуль управления вакансиями». Данный модуль предоставляет данные таблицы «Вакансии», а также средства их редактирования. Использует данные из таблицы Vacancy, Position, Department.

«Модуль управления графиком работы». Данный модуль предоставляет данные таблицы «График работы», а также средства их редактирования. Использует данные из таблицы TypesScheduls, Staff.

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

«Модуль авторизации». Данный модуль представляет возможность определения имени пользователя пользующегося продуктом, а также аутентификации пользователя.

2.2 Разработка структуры данных

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

В процессе моделирования была построена следующая концептуальная модель БД.

При разработке программного продукта выделены сущности:

- Staff (Сотрудники)

- Post (Должность)

- Vacancy (Вакансии)

- StaffsScheduls (График сотрудников)

В выделенных сущностях выявлены следующие связи:

- «Должность» содержит «Вакансии»

- «Должность» содержит «Сотрудников»

- «Сотрудники» имееют «График»

Построим диаграммы ER-типа:

«Должность» содержит «Сотрудников»

Рисунок 2.2 - Диаграмма ER-типа

Связь «один ко многим»: одна запись должности соответствует нескольким записям сотрудников.

Класс принадлежности сущности «Сотрудники» обязательный, т.к. Сотрудник не может не иметь должность.

Класс принадлежности сущности «Должность» необязательный, т.к. может и не быть связанных с должностью сотрудников.

«Должность» содержит «Вакансии»

Рисунок 2.3 - Диаграмма ER-типа

Связь «один ко многим»: одна запись должности соответствует нескольким записям вакансий.

Класс принадлежности сущности «Вакансии» обязательный, т.к. Вакансий не может быть без должностей.

Класс принадлежности сущности «Должность» необязательный, т.к. может и не быть связанных с вакансиями.

«Сотрудники» имееют «График»

Рисунок 2.4 - Диаграмма ER-типа

Связь «один ко многим»: одна запись сотрудника соответствует нескольким записям графика.

Класс принадлежности сущности «Сотрудник» обязательный, т.к. график не может быть без сотрудника.

Класс принадлежности сущности «График» обязательны, т.к. сотрудник не может быть без графика.

Рисунок 2.5 - Структура данных

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

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

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

Таблица 2.1 - Education (Образование)

Имя поля

Тип данных

Значение

Id

Int

Ключевое поле с счетчиком

Name

nvarchar(200)

Содержит строку

Description

nvarchar(MAX)

Содержит строку

Таблица 2.2 - Staff (Сотрудники)

Имя поля

Тип данных

Значение

Id

Int

Ключевое поле с счетчиком

Surname

nvarchar(50)

Содержит строку

Patronymic

nvarchar(50)

Содержит строку

Name

nvarchar(50)

Содержит строку

BirthDay

Date

Содержит дату

IdEducation

Int

Содержит число

IdMilitaryDuty

Int

Содержит число

Address

nvarchar(MAX)

Содержит строку

Phone

nvarchar(MAX)

Содержит строку

IdPosition

Int

Содержит число

Таблица 2.3 - Department (Отдел)

Имя поля

Тип данных

Значение

Id

Int

Ключевое поле с счетчиком

Name

nvarchar(100)

Содержит строку

Description

nvarchar(MAX)

Содержит строку

Таблица 2.4 - Position (Позиция)

Имя поля

Тип данных

Значение

Id

Int

Ключевое поле с счетчиком

Name

nvarchar(200)

Содержит строку

IdDepartment

Int

Содержит число

IdPost

Int

Содержит число

Description

nvarchar(MAX)

Содержит строку

Таблица 2.5 - Post (Должность)

Имя поля

Тип данных

Значение

Id

int

Ключевое поле с счетчиком

Name

nvarchar(100)

Содержит строку

Description

nvarchar(MAX)

Содержит строку

Таблица 2.6 - Vacancy (Вакансии)

Имя поля

Тип данных

Значение

Id

int

Ключевое поле с счетчиком

IdPosition

int

Содержит число

Name

nvarchar(100)

Содержит строку

StartSearchDate

date

Содержит дату

Продолжение таблицы 2.6

EndSearchDate

date

Содержит дату

Таблица 2.7 - MilitaryDuty (Воинская обязанность)

Имя поля

Тип данных

Значение

Id

int

Ключевое поле с счетчиком

Name

nvarchar(100)

Содержит строку

Description

nvarchar(MAX)

Содержит строку

Таблица 2.8 - StaffsScheduls (График работы сотрудников)

Имя поля

Тип данных

Значение

Id

int

Ключевое поле с счетчиком

IdStaff

int

Содержит число

IdTypesScheduls

int

Содержит число

StartSearchDate

date

Содержит дату

EndSearchDate

date

Содержит дату

Description

nvarchar(MAX)

Содержит строку

2.3 Конструирование пользовательского интерфейса

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

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

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

Рассмотрим интерфейс данного программного продукта:

- Button1 - кнопка для авторизации пользователя;

- TextBox1 - компонент для ввода логина;

- PasswordBox - компонент для ввода пароля;

- TextBlock1, TextBlock2 - отображение надписей.

Рисунок 2.6 - Форма «Авторизация»

Форма «Администратора» содержит следующие компоненты:

- MenuItem1, MenuItem2, MenuItem3, MenuItem4 - кнопки управления, предназначены для выполнения конкретных действий;

Рисунок 2.7 - Форма «Администратора»

Форма «Пользователи» содержит следующие компоненты:

- DBGrid-сетка для отображения информации о пользователях из набора данных базы данных;

- TextBlock - отображение надписей;

- Button1, Button2, Button3 - командные кнопки используются для реализации в программе необходимых команд.

Рисунок 2.8 - Форма «Пользователи»

Форма «Добавление пользователя» содержит следующие компоненты:

- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;

- TextBox1, TextBox2, TextBox3 - поля ввода данных;

- PasswordBox1, PasswordBox2 - поля для вводу пароля;

- ComboBox1 - компонент для выбора определенных значений;

- TextBlock1, TextBlock2, TextBlock3, TextBlock4, TextBlock5, TextBlock6 - отображение надписей;

Рисунок 2.9 - Форма «Добавление пользователя»

Форма «Пользователя» содержит следующие компоненты:

- MenuItem1, MenuItem2 - кнопки управления, предназначены для выполнения конкретных действий;

Рисунок 2.10 - Форма пользовательского интерфейса

Форма «Сотрудники» содержит следующие компоненты:

- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;

- Button1, Button2, Button3, Button4 - командные кнопки используются для реализации в программе необходимых команд.

Рисунок 2.11 - Форма «Сотрудники»

Форма «Добавление сотрудника» содержит следующие компоненты:

- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;

- TextBox1, TextBox2, TextBox3, TextBox4, TextBox5 - поля ввода данных;

- DatePicker1 - компонент для установки даты;

- ComboBox1, ComboBox2, ComboBox3 - компонент для выбора определенных значений;

- TextBlock1, TextBlock2, TextBlock3, TextBlock4, TextBlock5, TextBlock6, TextBlock7, TextBlock8, TextBlock9 - отображение надписей;

Рисунок 2.12 - Форма «Добавление сотрудника»

Форма «Вакансии» содержит следующие компоненты:

- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;

- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;

Рисунок 2.13 - Форма «Вакансии»

Форма «Добавление вакансии» содержит следующие компоненты:

- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;

- TextBox1 - поле ввода данных;

- DatePicker1, DataPicker2 - компонент для установки даты;

- TextBlock1, TextBlock2, TextBlock3, TextBlock4 - отображение надписей;

Рисунок 2.14 - Форма «Добавление вакансии»

Форма «Рабочий график» содержит следующие компоненты:

- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;

- Button1, Button2, Button3 - кнопки управления, предназначены для выполнения конкретных действий;

Рисунок 2.15 - Форма «Рабочий график»

Форма «Добавление вакансии» содержит следующие компоненты:

- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;

- TextBox1 - поле ввода данных;

- DatePicker1, DataPicker2 - компонент для установки даты;

- TextBlock1, TextBlock2, TextBlock3, TextBlock4 - отображение надписей;

Рисунок 2.16 - Форма «Добавление отгула»

2.4 Обработка событий и ошибок ввода данных

В разработанном приложении существуют следующие обработчики:

- обработчик, который не позволяет вводить числовые значения в текстовое поле для ФИО и аналогичных полей.

private void tbName_KeyDown(object sender, KeyEventArgs e)

{

if ((e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))

{

e.Handled = true;

CommonMethods.ErrorMessageWindow("Поле Имя поддерживает ввод только букв");

}}

- обработчик, который позволяет вводить только цифры, в поля для ввода телефона.

private void tbPhone_KeyDown(object sender, KeyEventArgs e)

{

if (e.Key == Key.Back || (e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))

{

// The user deleted a character

}

else

{

e.Handled = true;

CommonMethods.ErrorMessageWindow("Поле Телефон поддерживает ввод только цифр");

}

}

- обработчик, выполняющий проверку вводимой информации на её корректность, при вводе неверной информации просит проверить данные или убедиться в их наличии.

{

CommonMethods.ErrorMessageWindow("Указанный логин уже существует");

return false;

}

При вводе пустого поля фамилия, имя, логин, пароля будет отображено соответствующее предупреждение об ошибке.

private bool ValidInfoUser(string name, string surname, string login, string role, string password,string confirmPassword)

{

if (name.Length <= 0)

{

CommonMethods.ErrorMessageWindow("Поле Имя не заполнено");

return false;

}

else if (surname.Length <= 0)

{

CommonMethods.ErrorMessageWindow("Поле Логин не заполнено");

return false;

}

else if (LoginExist(login))

{

CommonMethods.ErrorMessageWindow("Поле Должность не заполнено");

return false;

}

else if (password.Length > 0 && password.Length < 6)

{

CommonMethods.ErrorMessageWindow("Пароль содержит менее 6 символов");

return false;

}

else if (confirmPassword != password)

{

CommonMethods.ErrorMessageWindow("Пароли не совпадают");

return false;

}

else

{

return true;

}

}

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

2.5 Разработка программного алгоритма

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

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

Таблица 2.9 - описание процедур и функций разработки программного алгоритма

Функция/

Процедура

Название процедуры/функции

Функциональное назначение

procedure

private void btLogin_Click(object sender, RoutedEventArgs e)

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

procedure

private void LoadContent()

Загрузка данных в элементы управления

procedure

public static void CurrentUser(string login)

Сохранение логина текущего пользователя для последующего логирования

procedure

public static void ErrorMessageWindow(string message)

Вызов окна с сообщением о ошибке

procedure

public static string EncryptionPassword(string password)

Шифрование пароля пользователя

procedure

public static DataTable sp_valid_credentials(string login, string password)

Проверка наличия введенных данных

procedure

public static void sp_add_auth_log(string login)

Запись об успешной авторизации пользователя

procedure

public static DataTable sp_get_full_logs()

Отображение действий всех пользователей

procedure

public static DataTable sp_valid_login(string login)

Проверка существования логина

procedure

public static DataTable sp_get_role(string login)

Возвращает роль пользователя в программе

procedure

public static DataTable sp_get_logs_user(string)

Отображает действия пользователей в диапозоне

2.6 Организация интерфейса хранения данных

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

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

Таблица 2.10 - Процедуры и функции организации интерфейса хранения данных

Процедура/ функция

Название процедуры/функции

Функциональное назначение процедуры/функции

procedure

public static void sp_add_new_user(string name, string surname, string login, string role, string password)

Добавление нового пользователя в таблице пользователи

procedure

public static void sp_delete_users(int id)

Удаление пользователя из программы

procedure

public static void sp_add_vacancy(string position, string name, string startDate, string endDate)

Добавление вакансии в таблице вакансии

procedure

public static void sp_delete_vacancy(int id)

Удаление выбранной вакансии

procedure

public static void sp_add_staff(string surname, string name)

Добавление сотрудника в таблице сотрудники

procedure

public static void sp_delete_staff(int id)

Удаление выбранного сотрудника

procedure

private void btFilter_Click(object sender, RoutedEventArgs e)

Фильтрация данных в таблице пользователи

procedure

private void btFilter_Click(object sender, RoutedEventArgs e)

Фильтрация данных в таблице сотрудники

procedure

private void btFilter_Click(object sender, RoutedEventArgs e)

Фильтрация данных в таблице вакансии

procedure

private void btFilter_Click(object sender, RoutedEventArgs e)

Фильтрация данных в таблице график сотрудников

procedure

private void btSearch_Click(object sender, RoutedEventArgs e)

Поиск данных в таблице сотрудники

procedure

private void btSearch_Click(object sender, RoutedEventArgs e)

Поиск данных в таблице вакансии

procedure

private void btSearch_Click(object sender, RoutedEventArgs e)

Поиск данных в таблице график сотрудников

procedure

private void btSorted_Column(object sender, RoutedEventArgs

Сортировка данных по всем столбцам в таблице сотрудники

procedure

private void btSorted_Column(object sender, RoutedEventArgs e)

Сортировка данных по всем столбцам в таблице вакансии

procedure

private void btSorted_Column(object sender, RoutedEventArgs e)

Сортировка данных по всем столбцам в таблице график сотрудников

procedure

public static void sp_add_staff_schedul(string staff, string typeSchedul, string startDate, string endDate)

Добавление графика сотрудка в таблицу график сотрудников

procedure

public static void sp_delete_schedul(int id)

Удаление выбранного графика

procedure

public static DataTable sp_get_staff_id(int id)

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

2.7 Тестирование программы

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

Весь процесс тестирования программного продукта разбит на три этапа:

- проверка в нормальных условиях;

- проверка в экстремальных условиях;

- проверка в исключительных ситуациях.

Проверка программы в нормальных условиях:

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

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

Рисунок 2.17 - Главное окно администратора.

Программа надежно защищена от постороннего вмешательства. Для этого в ней реализована обязательная авторизация для входа. (Рисунок 2.18)

Рисунок 2.18 - Окно авторизации.

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

Рисунок 2.19 - Форма добавление пользователя.

Результат добавления пользователя можно увидеть на Рисунке 2.20

Рисунок 2.20 - Результат добавления пользователя.

Проверка программы в экстремальных условиях

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

Не удалось протестировать программу при огромном количестве информации в связи с ограниченным временем тестирования.

При добавлении записи с пустыми полями программа выдает сообщение об ошибке.

Рисунок 2.21 - Сообщение об ошибке

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

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

Проверка программы в исключительных ситуациях

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

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

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

Рисунок 2.22 - Ошибка подключения к БД

2.8 Экономическое обоснование проекта

Организационная часть

Объектом исследования является отдел кадров на предприятии ЗАО «Арно».

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

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

К основным функциям отдела кадров на предприятии относятся:

– определение потребности предприятия в кадрах и подбор персонала совместно с начальниками подразделений;

– анализ текучести кадров, поиск методов борьбы с высоким уровнем текучести;

– подготовка штатного расписания предприятия;

– оформление личных дел сотрудников, выдача по требованию работников справок и копий документов;

– комплекс операций с трудовыми книжками (прием, выдача, заполнение и хранение документов);

– ведение учета отпусков, составление графиков и оформление отпусков в соответствии с действующим трудовым законодательством;

– организация аттестаций сотрудников, составление планов карьерного движения персонала;

– подготовка планов повышения квалификации трудящихся.

Рисунок 2.23 - Организационная структура предприятия ЗАО «Арно»

Для оптимизации деятельности в отделе кадров предприятия ЗАО «Арно» в штатном расписании предусмотрена должность программиста.

Должностные обязанности программиста:

– разработка технологии решения задач по всем этапам обработки информации;

– определение информации, подлежащей обработке средствами вычислительной техники, ее объемы, структуру, макеты и схемы ввода, обработки,хранения и вывода, методы ее контроля;

– выполнение работы по подготовке программ к отладке и их отладке;

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

– осуществление запуска отлаженных программ и ввод исходных данных, определяемых условиями поставленных задач;

– проведение корректировки разработанной программы на основе анализа выходных данных;

– определение возможности использования готовых программных продуктов;

– разработка инструкций по работе с программами, оформление необходимой технической документации;

– осуществление сопровождения внедренных программ и программных средств.

Экономическая часть

Организация плановых работ по созданию программного продукта.

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

- анализ, сбор информации и анализ литературных источников;

- проектирование, разработка метода решения задачи и составление алгоритма решения;

- реализация, разработка и отладка программы;

- тестирование, анализ результатов.

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

Таблица 2.11 - Структура общего времени на создание программного продукта

Обозначение времени данного этапа

Содержание этапа

Тп.о.

Подготовка описания задачи.

То

Описание задачи.

Та

Разработка алгоритма.

Тб.с.

Разработка блок-схемы алгоритма.

Тн

Написание программы на языке Visual Studio.

Тп

Набивка программы.

То.т.

Отладка и тестирование программы.

Тд

Оформление документации, инструкций пользователю, пояснительной записки.

Время рассчитывается в человеко-часах, причем Тп.о. берется по фактически отработанному времени, а время остальных этапов определяется расчетом по условному числу команд Q.

Условное число команд Q определяется по формуле:

, (1)

где q - коэффициент, учитывающий условное число команд в зависимости от типа задачи.

Таблица 2.12 - Значение условного числа команд для различных видов решаемых программных средством задач (значение коэффициента q).

Тип задачи

Пределы изменений коэффициента

Задачи учета

от 1400 до 1500

Задачи оперативного управления

от 1500 до 1700

Задачи планирования

от 3000 до 3500

Многовариантные задачи

от 4500 до 5000

Комплексные задачи

от 5000 до 5500

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

С - коэффициент, учитывающий новизну и сложность программы.

Программные продукты по степени новизны могут быть отнесены к одной из четырёх групп:

- группа А - разработка принципиально новых задач;

- группа Б - разработка оригинальных программ;

- группа В - разработка программ с использованием типовых решений;

- группа Г - разовая типовая задача.

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

По степени сложности программный продукт может быть отнесен к одной из трёх групп:

- алгоритмы оптимизации и моделирования систем;

- задачи учета, отчетности и статистики;

- стандартные алгоритмы.

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

Язык программирования, на котором была разработана программа, является языком программирования высокого уровня.

Данная задача может быть отнесена ко второй группе сложности. Коэффициент С определяется из таблицы 2.13 на пересечении групп сложности и степени новизны.

Таблица 2.13 - Значение коэффициента степени новизны и сложности программы (С).

Язык программирования

Группа сложности

Степень новизны

А

Б

В

Г

Высокого уровня

1

1,38

1,26

1,15

0,69

2

1,30

1,19

1,08

0,65

3

1,20

1,10

1,00

0,60

Низкого уровня

1

1,58

1,45

1,32

0,79

2

1,49

1,37

1,24

0,74

3

1,38

1,26

1,15

0,69

Для данной задачи коэффициент C = 0,60

Исходя из формулы 1, можно определить условное число команд Q.

Q = 1430 * 0,60 = 858

Определяем время, затраченное на кажд...


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

  • Анализ предметной области. Технико-экономическое обоснование разработки программного обеспечения информационной системы отдела кадров. Проектирование пользовательского интерфейса. Оптимизация параметров микроклимата помещений, оборудованных ПЭВМ.

    дипломная работа [6,8 M], добавлен 16.01.2015

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

    курсовая работа [254,7 K], добавлен 25.03.2011

  • Постановка задачи проектирования и описание предметной области. Выбор состава технических и программных средств. Составление физической структуры базы данных отдела кадров предприятия. Экспорт физической структуры в систему управления базой данных.

    курсовая работа [296,6 K], добавлен 07.05.2015

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

    дипломная работа [2,9 M], добавлен 05.12.2011

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

    курсовая работа [1,8 M], добавлен 16.12.2015

  • Создание программного средства для реализации работы отдела кадров, построенное на основах ООП и STL. Доступный и простой интерфейс для занесения данных о рабочих и местах их прошлых работ. Алгоритм функционирования программы, ее характеристика.

    курсовая работа [319,6 K], добавлен 19.06.2012

  • Этапы разработки технического задания. Спецификация программного обеспечения при структурном подходе. Дерево диаграмм, базовые понятия сетевой модели данных. Разработка пользовательского интерфейса. Разработка сценария диалога на основе экранных форм.

    курсовая работа [2,0 M], добавлен 24.06.2012

  • Анализ предметной области. Проектирование структуры базы данных в среде case-средства ERWIN в виде инфологической и даталогической моделей. Общие сведения о AllFusion Process Modeler 7. Требования к надежности, информационной и программной совместимости.

    курсовая работа [3,4 M], добавлен 25.11.2013

  • Анализ и сбор сведений по предметной области. Исследование программ-аналогов для выявления имеющихся недостатков. Создание структуры данных. Разработка пользовательского интерфейса и сопроводительной документации. Отладка и тестирование программы.

    отчет по практике [2,2 M], добавлен 28.04.2015

  • Анализ состояния и способов автоматизации складского хозяйства. Управление и оптимизация материальных запасов. Обзор современного состояния программ для торговли и склада. Разработка структуры базы данных информационной системы. Описание интерфейса.

    дипломная работа [1,2 M], добавлен 16.06.2015

  • Разработка структуры пользовательского интерфейса автоматизированной системы. Концептуальная модель базы данных. Структура экранных форм ввода данных. Индивидуальные процедуры взаимодействия с текстовым редактором "Word" и электронными таблицами "Excel".

    курсовая работа [276,6 K], добавлен 16.02.2016

  • Проектирование многопользовательской информационной системы для автоматизации работы диспетчера отдела грузоперевозок. Выбор среды программирования. Разработка программного обеспечения, таблиц базы данных АСОИ. Построение диаграмм классов и деятельности.

    курсовая работа [298,1 K], добавлен 03.06.2014

  • Разработка концептуальной модели предметной области. Автоматизация справочной системы. Разработка конфигурации в 1С:Предприятии. Создание констант и перечислений. Формирование и проведение документов. Создание пользователя и пользовательского интерфейса.

    курсовая работа [1016,6 K], добавлен 09.03.2015

  • Особенности кадрового дела. Разработка схемы базы данных для отдела кадров. Реализация разработанной схемы в конкретной СУБД (MS Access). Создание экранных форм для ввода данных, отчетов, запросов. Автоматизация работы с созданной базой данных.

    курсовая работа [2,8 M], добавлен 10.05.2011

  • Описание разрабатываемой программы с точки зрения пользователя и программиста. Поэтапная разработка программной системы. Создание базы данных в Access. Разработка структуры классов. Создание структуры для хранения данных. Проектирование интерфейса.

    курсовая работа [1,4 M], добавлен 07.08.2013

  • Создание программы для составления оптимального плана закупки товара у поставщиков, его реализация с помощью простого и модифицированного симплекс-методов. Проектирование математического обеспечения решения задачи. Описание пользовательского интерфейса.

    курсовая работа [1,2 M], добавлен 21.01.2011

  • Исследование технологии проектирования базы данных. Локальные и удаленные базы данных. Архитектуры и типы сетей. Программная разработка информационной структуры предметной области. Обоснование выбора архитектуры "клиент-сервер" и операционной системы.

    дипломная работа [1,1 M], добавлен 15.02.2017

  • Изучение теоретических основ автоматизации документооборота отдела по работе с физическими лицами коммерческого банка. Общая характеристика работы отдела банка. Описание процесса создания базы данных с помощью выбранного программного средства MS Access.

    дипломная работа [5,5 M], добавлен 10.07.2014

  • Разработка программного обеспечения, предназначенного для автоматизации деятельности туристической фирмы. Анализ и проектирование базы данных предметной области. Создание концептуальной, логической и физической моделей данных и программы их обработки.

    курсовая работа [816,5 K], добавлен 05.02.2018

  • Анализ программной и технической архитектуры информационной системы в отделе кадров Омского танкового инженерного института и используемых функциональных возможностей. Исследование этапов жизненного цикла проекта автоматизации, описание ожидаемых рисков.

    дипломная работа [603,2 K], добавлен 12.04.2012

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