Разработка серверной части АРМ специалиста по работе с персоналом

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

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

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

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

Рисунок 21. Общая последовательность работы в режиме запроса страницы

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

1) шаблоны страниц;

2) содержимое страниц;

3) чанки;

4) сниппеты.

Все компоненты были созданы вручную в интегрированной среде разработки «NetBeans».

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

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

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

7.2 Компонент «application»

Данный компонент представляет собой каркас приложения. Его основными функциями являются:

1) обработка присланных данных;

2) создание и хранение экземпляров других компонентов;

3) последовательный запуск компонентов;

4) обмен информацией между компонентами;

5) отправка пользователю заголовков вместе с содержимым страницы.

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

Рисунок 23. Создание компонентов в «application»

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

В случаях авторизации или запроса от уже авторизованного пользователя следующим шагом идёт создание сессии. После этого происходит заполнение компонента «user» данными о текущем пользователе, основываясь на данных сессии.

Рисунок 24. Получение списка настроек

Новым шагом проверяется тип запроса от пользователя. В случае запроса страницы компонент «router» обрабатывает URL для получения псевдонима страницы и проверки на наличие доступ у текущего пользователя к запрашиваемой страницы. Далее «application» передаёт полученный псевдоним в компонент «parser» для формирования итоговой страницы.

Рисунок 25. Отработка запроса страницы

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

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

Рисунок 26. Отработка асинхронного запроса

7.3 Компонент «database»

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

1) формирование строки запроса;

2) экранирование специальных символов. Производится для того, чтобы оградить систему от несанкционированного доступа путём ввода исполняемого кода в поля, где он может совершить действия, которые необходимы злоумышленнику. Чаще всего от подобных уязвимостей страдают системы, использующие SQL и HTML;

3) подключение к базе данных;

4) получение ошибок от СУБД. Используется для корректного продолжения работы;

5) закрытие соединения.

7.4 Компонент «session»

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

Рисунок 27. Проверка продолжения работы сессии

7.5 Компонент «user»

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

Рисунок 28. Заполнение компонента «user» данными

7.6 Компонент «router»

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

Рисунок 29. Пример запроса страницы

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

Рисунок 30. Работа компонента «router»

7.7 Компонент «parser»

Текущий компонент формирует содержимое страницы. Каждая страница состоит из:

1) шаблона, который представляет собой html разметку страницы со вставленными чанками и сниппетами (рисунке 32);

2) набора чанков, т.е. выделенных блоков разметки;

3) набора сниппетов, скриптов возвращающих текстовый результат;

4) набора плейсхолдеров, т.е. мест для вставки данных самой страницы и системы.

Рисунок 31. Функция обработки плейсхолдеров

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

Рисунок 32. Шаблон страницы специалиста

Полностью сформированное содержимое страницы передаётся в компонент «application» для отправки пользователю.

Рисунок 33. Процесс формирования страницы по шаблону

8. Экспериментальное тестирование и отладка

1. Серверная часть имеет одну точку входа, которая представлена файлом index.php, поэтому прямой доступ к файлам должен быть закрыт. Для этого, в начале выполнения программы, устанавливается флаг (рисунок 34), что запуск произведён корректно.

Рисунок 34. Установка флага

После этого его наличие проверяется в начале каждого вызываемого скрипта (рисунок 35).

Рисунок 35. Проверка флага

Сделав прямой запрос «hrw.demo\application.core.php», выполнение скрипта было прекращено и на экран выведено сообщение о невозможности такого действия.

2. Компонента «router» тестировался, путём запроса страниц, через различные псевдонимы, к ним относились: существующие и не существующие, а так же те, к которым был и не было доступа разным группа пользователей. В результате компонент выдавал правильные данные.

· Не существующий - страница 404 ошибки;

· Существующий с нужным уровнем доступа - запрашиваемая страница;

· Существующий с недостаточным уровнем доступа - страница по умолчанию.

3. При тестировании компонента «parser» было выявлено, что количество проходов по шаблону для некоторых страниц излишне из-за чего в пустую расходуется процессорное время. Для решения была добавлена проверка на изменение содержимого страницы после текущего прохода с результатом предыдущего (рисунок 36).

Рисунок 36. Проверка изменение содержимого страницы

4. При тестировании вывод страницы не содержал изображений. Проверив запросы браузера и их обработку на серверы было выявлено, что из-за перенаправления всех запросов на одну точку входа (рисунок 37), запрос отдельного изображения обрабатывался так же.

Рисунок 37. Перенаправление запросов в одну точку

Для решения было дописаны правила, исключающие такое поведение для каталога «media» и файлов изображений (рисунок 38).

Рисунок 38. Исключения для изображений

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

Эта ошибка была исправлена добавлением в исключения переадресации ещё и расширения файла иконки (рисунок 39).

Рисунок 39. Исключения для изображений

Заключение

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

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

1) поиск и анализ программного обеспечения схожей тематики;

2) изучение взаимодействия между собой большого количества инструментов для web-разработки, таких как: HTML, CSS, JavaScript, PHP, MySQL и др.;

3) разработка серверной части автоматизированной информационной системы;

4) создание документации для ознакомления и работы администраторов с проектом.

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

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

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

Данный проект, на первый взгляд, не приносит значительной экономической выгоды. Много затрат, много работы, однако присутствуют неэкономические эффекты, а именно: оптимизируется работа всего отдела кадров, HR-отдела или человека, который занимается взаимодействием с кандидатами, т.к. объединяет несколько программных продуктов в один.

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

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

Сметная калькуляция затрат на создание ПО учет ресурсов на предприятии

Статья затрат

Всего затрат на проект, руб.

Материалы

670,00

Заработная плата

41400

Отчисления на социальные нужды

12502,80

Расходы на амортизацию

575,01

Накладные расходы

8280

Прочие расходы

1902,83

Всего

65330,64

Итоговая стоимость продукта составит 65330 руб.

Список использованных источников

1. Звонников В.И. Контроль качества обучения при аттестации: компетентностный [Текст]: учеб. Пособие / В.И. Звонников, М.Б. Челышкова - М.: Университетская книга, Логос, 2009. - 72 с.

2. Митросенко С.В. Педагогика среднего профессионального образования [Текст] / С.В. Митросенко. - Красноярск: Сиб. фед. ун-т, 2007. - 250 с.

3. Рябов В.В. Проектирование критериев оценки качества подготовки и переподготовки специалистов [Текст] / В.В. Рябов, Ю.В. Фролов. - М.: Исследовательский центр проблем качества подготовки специалистов, 2006. - 28 с.

4. Определение компетенций [Электронный ресурс]: Ведущий портал о кадровом менеджменте. - URL: http://hrm.ru/opredeleniekompetencijj - 17.06.2012 г.

5. Banham, J. On Professionalism and Professions: The Management Charter Initiative / J. Banham // The Journal of the Operational Research Society. - 1989. - Vol. 40, №4. - С. 315-321.

6. The definition and selection of key competencies (DeSeCo). Executive summary [Электронный ресурс]. - URL: http://www.oecd.org/document/17/0,3746, en_2649_39263238_2669073_1_1_1_1,00.html. - 17.06.2012 г.

7. Ветошкина, Т. Роль компетенции в управлении персоналом [Текст]/ Т. Ветошкина // Кадровик. Кадровый менеджмент. -2008. - №3. - 11-18 с.

8. Емельянова Н.З. Основы построения автоматизированных систем: учеб. пособие / Н.З. Емельянова. - М.: ИНФРА-М, 2009. - 269 с.

9. Фримен Э., Изучаем HTML, XHTML и CSS. - П.: Питер, 2010. - 656 с.

10. Дмитрий К., Алексей К. PHP. В подлиннике. - Спб.: БХВ-Петербург, 2005. - 1120 с.

11. Костарев А.Ф. PHP 5. - Спб.: «БХВ-Петербург», 2008. - 1104 с.

12. Мэтт З. PHP: объекты, шаблоны и методики программирования, 3-е издание. - М.: «Вильямс», 2010. - 560 с.

13. Рэндал Ш. Изучаем Perl. - П.: Символ-Плюс, 2009. - 384 с.

14. Кузнецов М., Симдянов И. MySQL 5. В подлиннике. - Спб.: «БХВ-Петербург», 2006. - 1024 с.

15. Стив С., Тим К., Джойс П. PHP и MySQL. Библия программиста, 2-е издание. - М.: Диалектика, 2010. - 912 с.

16. Одинцов И.О. Профессиональное программирование. Системный подход. - 2-е изд. - СПб.: БХВ-Петербург, 2004. - 624 с.

17. Программа «AllFusion ERwin Data Modeler» [Электронный ресурс]. - URL: http://erwin.com/products/data-modeler/standard-edition

18. 1С: Зарплата и управление персоналом 8 [Электронный ресурс]. - URL: http://www.v8.1 c.ru/hrm/

19. Программа «Кадры SB 2006» [Электронный ресурс]. - URL: http://web.archive.org/web/20111027232558/http://softsb.ru/opisanie-programmy.htm

20. Программы ИНФИН. КАДРЫ [Электронный ресурс]. - URL: http://www.april-v.ru/infinprog.shtml#13

21. Вязигин А.В. Оценка персонала: высшего и среднего звена. - М.: Вершина, 2006. - 256 с.

22. Робертс Г. Рекрутинг и отбор. Подход, основанный на компетенциях. - М.: ГИППО, 2010. - 288 с.

23. Управление персоналом организации: Учебник / под ред. А.Я. Кибанова - 4-е изд., доп. и перераб. - М.: ИНФРА-М, 2010. - 695 с.

24. Фитц-енц Ж., Дэвидсон Б. Как измерить HR-менеджмент. - М.: ГИППО, 2009. - 359 с.

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


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

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