Разработка клиентского модуля автоматизированного рабочего места специалиста по работе с персоналом

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,07 Мб
  • Опубликовано:
    2017-01-19
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка клиентского модуля автоматизированного рабочего места специалиста по работе с персоналом

Введение

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

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

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

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

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

В данный момент широко распространены Web-ресурсы, подобные Headhunter.ru и Job.ru, которые позволяют организациям и соискателям взаимодействовать друг с другом, вся работа будет производиться через телефоны, почту и другие средства связи, что отнимает много времени у сотрудников организации.

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

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

1.   анализ программных средств для решения задач по управлению персоналом;

2.   анализ и выбор средств автоматизации проекта;

.     разработка технических требований и архитектуры клиентской части;

.     формализация бизнес-процессов автоматизированного рабочего места специалиста по работе с персоналом;

5.   разработка модели базы данных;

6.   разработка алгоритмов;

.     разработка и реализация программных модулей;

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

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

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

Основные понятия, использующиеся в работе:(Computer-Aided Software Engineering) - набор инструментов и методов программной инженерии для проектирования программного обеспечения;(Component Library for Cross Platform) - библиотека компонентов для различных платформ;(Entity Relationship for Windows) - отношения сущностей для операционной системы Windows;

IDE (Integrated Development Environment) - интегрированная среда разработки;

MDA (Model Driven Architecture) - концепция модельно-ориентированного подхода к разработке программного обеспечения;- свободная система управления базами данных;

PHP (Hypertext Preprocessor) - препроцессор гипертекста;(Rapid Application Development) - быстрая разработка приложений;- (Visual Component Library) - библиотека визуальных компонентов;

АИС - автоматизированная информационная система;

АРК - автоматизированный рабочий комплекс;

БД - база данных;

ЖЦ ИС - жизненный цикл информационных систем.

ЖЦ ПО - жизненный цикл программного обеспечения;

ИС - информационная система;

ПО - программное обеспечение;

САПР - система автоматизированного проектирования;

СУБД - система управления базами данных;

ЭВМ - электронная вычислительная машина;- интерфейс программирования приложений.

1. Анализ программных средств для решения задач по управлению персоналом

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

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

.1 Программный модуль «1С: Зарплата и Управление Персоналом 8.0»

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

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

.     планирование потребностей в персонале;

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

.     управление компетенциями, обучением, аттестациями работников;

.     управление финансовой мотивацией персонала;

.     эффективное планирование занятости персонала;

.     учет кадров и анализ кадрового состава;

.     начисление и выплата заработной платы;

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

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

Программа позволяет вести учет в единой информационной базе от имени нескольких организаций - юридических лиц, а также индивидуальных предпринимателей, которые с точки зрения организации бизнеса составляют единое предприятие. Ее возможности позволяют параллельно вести два вида учета: управленческий (ведется по предприятию в целом) и регламентированный (ведется отдельно для каждой организации) [1].

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

.2 Автоматизированная система «Управление кадрами»

В числе пакетов прикладных программ, разработанных компанией «INFIN» можно выделить: «Бухгалтерия», «Зарплата», «Кадры», «Склад», «Торговля», «Книга покупок и продаж», «Квартплата», «Офис-менеджер» и др. Все они могут сочетать в себе разные возможности, так как сформированы по оригинальной блочной структуре. Так, например, модуль «Бухгалтерия» имеет модификации «Мини», «Миди», «Макси», «Супер», «Элит», «Идеал», каждая из которых включает в себя определенный комплекс задач и расширяется соответственно от «Мини» до «Идеал».

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

.     «Мини» - до 30 человек с возможностью привязки к программам «Бухгалтерия», «Торговля» или «Зарплата»;

.     «Макси» - до 100 человек;

.     «Супер» - без ограничения численности.

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

Анализ системы для организации

Каждая новая версия данного программного продукта выпускается за отдельную плату, что является невыгодным решением для развивающейся фирмы. Цены взяты с официального сайта: покупка текущей версии - 5 250 рублей, покупка новой версии программы - 3 150 рублей. Также отсутствует полноценная работа с персоналом на этапе подбора. Положительной стороной продукта является гибкость тарифов для организаций различных размеров.

.3 Автоматизированное рабочее место «Учет личного состава»

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

.     ввод основных сведений о сотруднике при приеме его на работу. (объем этой информации определяется руководством);

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

.     создание штатного расписания;

.     создание классификаторов, списков, словарей;

.     формирование, просмотр и печать штатных выходных документов, в том числе списков и количества сотрудников, принятых или уволенных в заданном отрезке времени [3].

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

.4 Программа «Сотрудники предприятия»

Программа, разработанная компанией «AraXGroup», позволяет выполнять следующие операции:

.     вести базу данных о персонале предприятия;

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

.     оформлять личные карточки сотрудников с расширенным личностным и профессиональным учетом;

.     печатать личные карточки и дополнительные журналы, экспортируя в MS Word;

.     оформлять приказы, трудовые договора;

.     создавать собственные шаблоны договоров;

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

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

.     оформлять документы по увольнениям;

.     вести расчет отпусков и стажа в организации;

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

.     напоминать о днях рождения работников;

.     автоматически вести поиск по журналу сотрудников;

.     печатать журнал сотрудников (выборка) [4].

Анализ системы для организации:

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

.5 Автоматизированная система подбора персонала «Рекрутер»

Автоматизированная система «Рекрутер», разработанная компанией «Центр кадровых технологий», - это компьютерная программа для кадровых агентств и отделов кадров, полностью автоматизирующая процесс подбора персонала.

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

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

По результатам проделанной работы «Рекрутер» может построить более 300 отчетов [5].

Анализ системы для организации:

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

.     высокая цена (от 25 000 рублей);

.     работает только на ПК под управлением операционной системы Windows;

.     устаревший интерфейс;

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

.6 Автоматизированная система управления персоналом «Фараон»

Автоматизированная система управления персоналом «Фараон», разработанная «Центр кадровых технологий», - это компьютерная программа для отделов кадров и менеджеров по персоналу, которая позволяет вести учет любых кадровых операций, автоматизирует делопроизводство, кадровый учет, а также предлагает удобные инструменты для планирования и анализа управления персоналом. Главными особенностями «Фараона» являются его наглядность и гибкость.

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

.     построение организационной структуры компании;

.     учет личных дел (кандидаты на работу, работающие сотрудники, уволенные сотрудники);

.     учет контрактов и трудовых книжек;

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

.     вывод в Word унифицированных форм документов по учету кадров и личного состава;

.     вывод в Word и учет дополнительных кадровых документов: контракты, распоряжения, положения, должностные инструкции;

.     построение графика отпусков;

.     расчет остатков отпусков;

.     учет рабочего времени; построение различных кадровых отчетов [6].

.     анализ системы для организации:

.     из минусов стоит отметить:

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

.     устаревший интерфейс;

.     высокая цена (от 25 000 рублей);

.     работа только на ПК под управлением операционной системы Windows.

Плюсы:

16. возможность выбора СУБД (Firebird, MS SQL);

1.7 Интернет-ресурсы для взаимодействия соискателей и работодателей

Стоит обратить внимание на два самых популярных ресурса «Headhunter» и «Job.ru».

Headhunter

Группа компаний HeadHunter работает на рынке интернет-рекрутмента с 2000 года. На данный момент сайт hh.ru является одним из лучших онлайновых ресурсов для поиска работы и найма персонала. Бизнес-модель HeadHunter построена на продаже информации из базы данных резюме. Стратегия компании - инвестиции в новые технологии и постоянное совершенствование сервиса.

Основной миссией компании является:

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

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

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

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

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

Также производится удаление дублирующих друг друга вакансий.предоставляет удобные инструменты для работы как работодателям, так и соискателям. Например, чтобы отправить кандидату шаблонное письмо приглашения на собеседование или отказа, рекрутеру достаточно один раз кликнуть мышью. Конкурентным преимуществом hh.ru является уникальная гибкая система настройки конфиденциальности резюме. Эти и другие функции позволяют сайту привлекать лучших кандидатов, а работодателям - быстро и качественно осуществлять поиск персонала [7].

Job.ru

JOB.RU - старейший российский интернет-ресурс по поиску работы и подбору персонала. Он известен в Сети с 1996 года, с 2000 развивается в рамках холдинга «Пронто-Москва». В 2012 году проект выделен в отдельное предприятие ООО «Джоб.ру».

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

Это становится возможным благодаря широкой аудитории сайта - ежедневно к услугам JOB.RU прибегают более 450 000 соискателей и более 6,5 миллионов - ежемесячно. Свои резюме на сайте уже разместили 3,6 миллиона человек. Более 400 000 работодателей уже зарегистрированы на JOB.RU, размещая более 100 000 вакансий в месяц..RU работает по всей России и объединяет в единую сеть сайты в странах СНГ: myJOB.BY и goJOB.KZ.

Основной упор сделан на высокий уровень обслуживания посетителей, как Соискателей, так и Работодателей. Одна из самых больших в Рунете база вакансий и резюме тщательно обрабатывается модераторами сайта вручную [8].

Анализ системы для организации:

Плюсами данных ресурсов являются:

.     бесплатность базовых функций;

.     большое количество предлагаемых кандидатов;

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

Минусы:

.     весь поиск сотрудников производится вручную, что затрачивает большое количество времени;

.     обработка данных кандидатов производится вручную;

.     взаимодействие с сотрудников через почтовые системы;

.     нет группировки кандидатов.

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

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

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

.8 Система «Галактика. Управление персоналом»

Данные программный продукт принадлежит к классу HRM (Human Recourse Management) решений и поддерживает управленческую концепцию HCM (Human Capital Management), в соответствии с которой персонал организации рассматривается как актив, эффективно используемый компанией для достижения своих стратегических задач.

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

.     управление персоналом;

.     табельный учет;

.     заработная плата.

Программный продукт выполняет следующие функции:

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

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

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

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

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

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

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

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

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

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

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

.     формирование статистики, унифицированных форм и разнообразных отчетов для внешних и внутренних нужд;

.     организация Е-mail рассылки информации через электронную почту.[9]

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

.9 Система «Босс»

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

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

Выполняемые функции:

.     планирование и учет персонала;

.     эффективная система обучения;

.     расчет заработной платы и отчетность;

.     реальная оценка сотрудников;

.     подбор персонала;

.     комплексная система мотивации;

.     управление кадровым резервом;

.     оптимизация затрат на персонал;

.     анализ состояния трудовых ресурсов.

Остановимся подробнее на функциях подбора персонала:

.     Управление заявками на подбор и вакансиями организации;

.     управление профилями должностей и требованиями к кандидатам;

.     интеграция с автоматизированными Интернет-ресурсами;

.     планирование и управление мероприятиями по отбору кандидатов;

.     обеспечение взаимодействия с внешними контрагентами по поиску кандидатов;

.     обеспечение взаимодействия всех участников процесса подбора и отбора кандидатов в рамках документооборота системы;

.     вовлечение соискателей и кандидатов в процесс через функции «самообслуживания»;

.     тестирование и анкетирование кандидатов;

.     обеспечение ранжирования и отбора кандидатов;

.     принятие решения по выбору и приему на работу;

.     создание и поддержание базы «талантов», как внутренних работников, так и внешних соискателей. [10]

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

.     Платформозависимость - приложение работает только под управлением MSSql или Oracle Database 11g. В случае с MSSql пользователь привязан к платформе Microsoft Windows, в случае с Oracle - пользователь вынужден дополнительно покупать дорогостоящие лицензии на использование СУБД;

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

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

2. Анализ и выбор средств автоматизации проекта

.1 Автоматизированные информационные системы и их классификация

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

Так как классификация систем по сфере функционирования объекта управления очевидна, рассмотрим следующие признаки. По видам процессов управления АИС подразделяются на несколько классов.

АИС управления технологическими процессами - это человеко-машинные системы, обеспечивающие управление технологическими устройствами, станками, автоматическими линиями.

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

Для АИС организационного управления объектом служат производственно-хозяйственные, социально-экономические функциональные процессы, реализуемые на всех уровнях управления экономикой, в частности: банковские АИС; АИС фондового рынка; финансовые АИС; страховые АИС; налоговые АИС; АИС таможенной службы; статистические АИС.

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

АИС научных исследований обеспечивают высокое качество и эффективность межотраслевых расчетов и научных опытов. Методической базой таких систем служат экономико-математические методы, технической базой - самая разнообразная вычислительная техника и технические средства для проведения экспериментальных работ моделирования. Как организационно-технологические системы, так и системы научных исследований могут включать в свой контур системы автоматизированного проектирования работ (САПР).

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

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

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

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

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

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

1.   активное участие человека - специалиста в системе автоматизации обработки информации и принятия управленческих решений;

.     интерпретация информационной деятельности как одного из видов бизнеса;

.     наличие научно обоснованной программно-технической, технологической платформы, реализуемой на конкретном экономическом объекте;

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

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

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

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

Предметная область. Моделирование предметной области

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

Предметной областью называются элементы материальной системы, информация о которых хранится и обрабатывается в АИС.

Информационным отображением всей предметной области экономического объекта служит информационная база АИС. Информационная база состоит из одной или нескольких баз данных. Для описания предметной области необходимы такие термины, как объект, свойство объекта, взаимодействие (связь) объектов, свойство взаимодействия [13].

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

Объекты делятся на простые и сложные. Сложные объекты: составные, обобщенные, агрегированные.

Свойствами объектов являются:

1.   единичные и множественные;

.     статические, неизменяемые со временем и динамические, то есть изменяемые во времени;

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

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

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

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

Проблема полноты отображения объектов и процессов предметной области в хранимые данные решается в АИС следующим образом. Предполагается, что представление объекта или процесса сводится к указанию его свойств; информационным отображением свойств служат атрибуты и, следовательно, экземпляр объекта или экземпляр процесса представлен в базе данных как набор пар <Имя атрибута>, <3начение атрибута>, где имена атрибутов различны и соответствуют названиям свойств объекта или процесса. Вопрос о выражении сущности объектов с помощью того или иного набора свойств решается путем расширения набора свойств, описывающих объект, чем достигается более полное представление о его сущности. Количество свойств должно быть таково, чтобы всегда можно было отличить объект одного класса от объекта другого класса, а также любые два объекта из одного и того же класса. Среди свойств, описывающих объект, необходимо выделить идентифицирующие свойства, то есть свойства, по значению которых можно однозначно отличить данный экземпляр объекта от любого другого (в том числе и в пределах класса объектов, содержащего этот экземпляр) [14].

В ряде случаев установление идентифицирующего свойства не является простой задачей.

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

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

1.   иметь уникальное имя; к одному и тому же имени всегда должна применяться одна и та же интерпретация;

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

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

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

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

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

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

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

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

1.   должен иметь уникальные значения;

.     не должен содержать пустых (неопределенных) значений:

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

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

Внешний ключ - существует только для дочерней сущности и является ссылкой на значение ключа родительской сущности. При создании связей (отношений) между сущностями в дочернюю сущность передаются атрибуты, составляющие первичный ключ родительской сущности. Эти атрибуты и составляют внешний ключ [15].

Функциональные и обеспечивающие подсистемы АИС

Функциональная часть АИС фактически является моделью системы управления объектом.

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

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

1.   уровень управления (высший, средний, оперативный);

.     вид управляемого ресурса (основные фонды, материальные, трудовые, финансовые и информационные ресурсы);

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

.     функции управления и период управления.

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

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

1.   важностью той или иной функции управления;

.     возможностью формализации управленческих процедур;

.     уровнем подготовки персонала управления к использованию компьютеров;

.     наличием информационной базы и технических средств [16].

Обеспечивающие подсистемы АИС состоят из нескольких частей:

.     информационное обеспечение представляет собой хранимые на предприятии потоки информации. Информация формируется в результате обработки данных. Любая система имеет дело с двумя видами информации: внешней и внутренней. Для внешней информации характерны неточность, обрывистость, противоречивость. Она в основном касается состояния рынка и конкурентов, прогнозов, цен, политической ситуации. Так как такая информация носит вероятностный характер, то для ее обработки создаются экспертные системы;

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

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

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

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

.     лингвистическое обеспечение - это система искусственных языков, терминов и определений, используемых в процессе разработки и функционирования АИС. Оно включает: языки описания структурных единиц информации (реквизитов, показателей, документов); управления (манипулирования) данными информационной базы; описания алгоритмов решения задач бухгалтерского учета; информационно-поисковых систем специального назначения;

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

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

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

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

1.   операционную систему, поддерживающую работу персонального компьютера (ПК);

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

3.   аппаратные средства и программное обеспечение машинной графики;

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

.     библиотеку оцифрованных полиграфических шрифтов;

.     систему управления базами данных;

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

.     выводные секции для экспонирования информации на фотоматериал [18].

.2 Краткая характеристика web-технологий

:(от англ. HyperText Markup Language - «язык гипертекстовой разметки») - стандартный язык разметки документов в глобальных и локальных сетях. Большинство веб-страниц содержат описание разметки на языке HTML (или XHTML). Язык HTML интерпретируется браузерами, полученный в результате интерпретации форматированный текст отображается на экране монитора компьютера или мобильного устройства.

Язык HTML является приложением SGML (стандартного обобщённого языка разметки) и соответствует международному стандарту ISO 8879.

Язык XHTML является более строгим вариантом HTML, он следует всем ограничениям XML и, фактически, XHTML можно воспринимать как приложение языка XML к области разметки гипертекста.

В глобальных и локальных сетях HTML-страницы, как правило, передаются браузерам от сервера по протоколам HTTP или HTTPS, в виде простого текста или с использованием шифрования.

Язык HTML был разработан британским учёным Тимом Бернерсом-Ли приблизительно в 1986-1991 годах в стенах ЦЕРНа в Женеве в Швейцарии. HTML создавался как язык для обмена научной и технической документацией, пригодный для использования людьми, не являющимися специалистами в области вёрстки. HTML успешно справлялся с проблемой сложности SGML путём определения небольшого набора структурных и семантических элементов - дескрипторов. Дескрипторы также часто называют «тегами». С помощью HTML можно легко создать относительно простой, но красиво оформленный документ. Помимо упрощения структуры документа, в HTML внесена поддержка гипертекста. Мультимедийные возможности были добавлены позже.

Изначально язык HTML был задуман и создан как средство структурирования и форматирования документов без их привязки к средствам воспроизведения (отображения). В идеале, текст с разметкой HTML должен был без стилистических и структурных искажений воспроизводиться на оборудовании с различной технической оснащённостью (цветной экран современного компьютера, монохромный экран органайзера, ограниченный по размерам экран мобильного телефона или устройства и программы голосового воспроизведения текстов). Однако, современное применение HTML очень далеко от его изначальной задачи. С течением времени основная идея платформонезависимости языка HTML была принесена в жертву современным потребностям в мультимедийном и графическом оформлении.- теговый язык разметки документов. Любой документ на языке HTML представляет собой набор элементов, причём, начало и конец каждого элемента обозначается специальными пометками - тегами. Элементы могут быть пустыми, то есть не содержащими никакого текста и других данных (например, тег перевода строки <br>). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметь атрибуты, определяющие какие-либо их свойства. Описание атрибутов элементов происходит в открывающем теге [19].

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

PHP (англ. PHP: Hypertext Preprocessor - «PHP: препроцессор гипертекста»; первоначально Personal Home Page Tools - «Инструменты для создания персональных веб-страниц»; произносится пи-эйч-пи) - скриптовый язык общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков, применяющихся для создания динамических веб-сайтов.

Язык и его интерпретатор разрабатываются группой энтузиастов в рамках проекта с открытым кодом. Проект распространяется под собственной лицензией, несовместимой с GNU GPL.

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

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

­   автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;

­   взаимодействие с большим количеством различных систем управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);

­   автоматизированная отправка HTTP-заголовков;

­   работа с HTTP-авторизацией;

­   работа с cookies и сессиями;

­   работа с локальными и удалёнными файлами, сокетами;

­   обработка файлов, загружаемых на сервер;

­   работа с XForms.

В настоящее время PHP используется сотнями тысяч разработчиков. Согласно рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в июне 2013 года PHP находился на 5 месте среди языков программирования. К крупнейшим сайтам, использующим PHP, относятся Facebook, Wikipedia и др.

Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл «foreach», заимствованы из Perl.

Для работы программы не требуется описывать какие-либо переменные, используемые модули и т.п. Любая программа может начинаться непосредственно с оператора PHP [20].

PHP был выбран из-за его удобства в разработке и поддержки всеми необходимыми платформами. :

MySQL - свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB. Продукт распространяется как под GNU General Public License, так и под собственной коммерческой лицензией. Помимо этого, разработчики создают функциональность по заказу лицензионных пользователей. Именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP, VertrigoServ. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

февраля 2008 года Sun Microsystems приобрела MySQL AB за $1 млрд, 27 января 2010 года Oracle приобрела Sun Microsystems за $7,4 млрд и включила MySQL в свою линейку СУБД.

Сообществом разработчиков MySQL созданы различные ответвления кода, такие, как Drizzle (англ.), OurDelta, Percona Server и MariaDB. Все эти ответвления уже существовали на момент поглощения компании Sun корпорацией Oracle.

MySQL имеет двойное лицензирование. MySQL может распространяться в соответствии с условиями лицензии GPL. Однако по условиям GPL, если какая-либо программа включает исходные коды MySQL, то она тоже должна распространяться по лицензии GPL. Это может расходиться с планами разработчиков, не желающих открывать исходные тексты своих программ. Для таких случаев предусмотрена коммерческая лицензия, которая также обеспечивает качественную сервисную поддержку.портирована на большое количество платформ: AIX, BSDi, FreeBSD, HP-UX, Linux, Mac OS X, NetBSD, OpenBSD, OS/2 Warp, SGI IRIX, Solaris, SunOS, SCO OpenServer, UnixWare, Tru64, Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Server 2003, WinCE, Windows Vista и Windows 7. Существует также порт MySQL к OpenVMS. Важно отметить, что на официальном сайте СУБД для свободной загрузки предоставляются не только исходные коды, но и откомпилированные и оптимизированные под конкретные операционные системы готовые исполняемые модули СУБД MySQL.

MySQL имеет API для языков Delphi, C, C++, Эйфель, Java, Лисп, Perl, PHP, Python, Ruby, Smalltalk, Компонентный Паскаль и Tcl, библиотеки для языков платформы.NET, а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.представляет собой драйвер ODBC (2.50) уровня 0 (с некоторыми возможностями уровней 1 и 2) для подсоединения совместимого с ODBC приложения к MySQL. MyODBC работает на всех системах Microsoft Windows и на большинстве платформ Unix.

Но, не смотря на все преимущества MySQL, существуют и недостатки, например, MySQL не позволяет корректно применять регулярные выражения (операторы REGEXP и RLIKE) на строках в многобайтовых кодировках, например, для Юникода (UTF-8). При необходимости таких операций приходится переходить на однобайтовые кодировки, например русскую Win-1251 или KOI-8 [21].

СУБД MySQL была выбрана по причине бесплатного распространения и удобства настройки.:(англ. Cascading Style Sheets - каскадные таблицы стилей) - формальный язык описания внешнего вида документа, написанного с использованием языка разметки.

Преимущественно используется как средство описания, оформления внешнего вида веб-страниц, написанных с помощью языков разметки HTML и XHTML, но может также применяться к любым XML-документам, например, к SVG или XUL.используется создателями веб-страниц для задания цветов, шрифтов, расположения отдельных блоков и других аспектов представления внешнего вида этих веб-страниц. Основной целью разработки CSS являлось разделение описания логической структуры веб-страницы (которое производится с помощью HTML или других языков разметки) от описания внешнего вида этой веб-страницы (которое теперь производится с помощью формального языка CSS). Такое разделение может увеличить доступность документа, предоставить большую гибкость и возможность управления его представлением, а также уменьшить сложность и повторяемость в структурном содержимом. Кроме того, CSS позволяет представлять один и тот же документ в различных стилях или методах вывода, таких как экранное представление, печатное представление, чтение голосом (специальным голосовым браузером или программой чтения с экрана), или при выводе устройствами, использующими шрифт Брайля.

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

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

.     когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством тега <link>, располагающегося в этом документе между тегами <head> и </head>. (Тег <link> будет иметь атрибут href, имеющий значением адрес этой таблицы стилей). Все правила этой таблицы действуют на протяжении всего документа;

.     когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством директивы @import, располагающейся в этом документе между тегами <style> и </style> (которые, в свою очередь, располагаются в этом документе между тегами <head> и </head>) сразу после тега <style>, которая также указывает (в своих скобках, после слова url) на адрес этой таблицы стилей. Все правила этой таблицы действуют на протяжении всего документа;

.     когда таблица стилей описана в самом документе, она может располагаться в нём между тегами <style> и </style> (которые, в свою очередь, располагаются в этом документе между тегами <head> и </head>). Все правила этой таблицы действуют на протяжении всего документа;

.     когда таблица стилей описана в самом документе, она может располагаться в нём в теле какого-то отдельного тега (посредством его атрибута style) этого документа. Все правила этой таблицы действуют только на содержимое этого тега.

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

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

Преимущества:

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

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

.     простота последующего изменения дизайна. Не нужно править каждую страницу, а лишь изменить CSS-файл;

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

Недостатки:

.     различное отображение вёрстки в различных браузерах (особенно устаревших), которые по-разному интерпретируют одни и те же данные CSS;

.     часто встречающаяся необходимость на практике исправлять не только один CSS-файл, но и теги HTML, которые сложным и ненаглядным способом связаны с селекторами CSS, что иногда сводит на нет простоту применения единых файлов стилей и значительно удлиняет время редактирования и тестирования.- одна из широкого спектра технологий, одобренных консорциумом W3C и получивших общее название «стандарты Web». В 1990-х годах стала ясна необходимость стандартизировать Web, создать какие-то единые правила, по которым программисты и веб-дизайнеры проектировали бы сайты. Так появились языки HTML 4.01 и XHTML, и стандарт CSS.

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

Термин «каскадные таблицы стилей» был предложен Хокон Виум Ли в 1994 году. Совместно с Бертом Босом он стал развивать CSS.

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

В середине 1990-х Консорциум Всемирной паутины (W3C) стал проявлять интерес к CSS, и в декабре 1996 года была издана рекомендация CSS1 [22].

Выбор CSS был обусловлен необходимостью настраивать страницы сервиса под единый стиль и поддержкой большинством популярных платформ.:- прототипно-ориентированный сценарный язык программирования. Является диалектом языка ECMAScript.обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.

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

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

Название «JavaScript» является зарегистрированным товарным знаком компании Oracle Corporation.является объектно-ориентированным языком, но используемое в языке прототипирование обуславливает отличия в работе с объектами по сравнению с традиционными класс-ориентированными языками. Кроме того, JavaScript имеет ряд свойств, присущих функциональным языкам - функции как объекты первого класса, объекты как списки, карринг, анонимные функции, замыкания - что придаёт языку дополнительную гибкость.

Несмотря на схожий с Си синтаксис, JavaScript по сравнению с языком Си имеет коренные отличия:

.     объекты, с возможностью интроспекции;

.     функции как объекты первого класса;

.     автоматическое приведение типов;

.     автоматическая Сборка мусора;

.     анонимные функции.

.1.  В языке отсутствуют такие полезные вещи, как:

.     модульная система: JavaScript не предоставляет возможности управлять зависимостями и изоляцией областей видимости;

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

.     стандартные интерфейсы к веб-серверам и базам данных;

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

В JavaScript:

.     все идентификаторы регистрозависимы;

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

.     названия переменных не могут начинаться с цифры;

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

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

.     ядро (ECMAScript);

.     объектная модель браузера (Browser Object Model или BOM (en));

.     объектная модель документа (Document Object Model или DOM).

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

Объектную модель документа иногда рассматривают как отдельную от JavaScript сущность, что согласуется с определением DOM как независимого от языка интерфейса документ. В противоположность этому ряд авторов находят BOM и DOM тесно взаимосвязанными.не является браузерным языком и в нём не определяются методы ввода и вывода информации. Это, скорее, основа для построения скриптовых языков. Спецификация ECMAScript описывает типы данных, инструкции, ключевые и зарезервированные слова, операторы, объекты, регулярные выражения, не ограничивая авторов производных языков в расширении их новыми составляющими.

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

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

.     управление фреймами;

.     поддержка задержки в исполнении кода и зацикливания с задержкой;

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

.     управление адресом открытой страницы;

.     управление информацией о браузере;

.     управление информацией о параметрах монитора;

.     ограниченное управление историей просмотра страниц;

.     поддержка работы с HTTP cookie.

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

.     генерация и добавление узлов;

.     получение узлов;

.     изменение узлов;

.     изменение связей между узлами;

.     удаление узлов.

Существует три способа подключения javascript:

.     расположение внутри страницы. Для добавления JavaScript-кода на страницу, можно использовать теги <script></script>, которые рекомендуется, но не обязательно, помещать внутри контейнера <head>. Контейнеров <script> в одном документе может быть сколько угодно. Атрибут «type='text/javascript'» указывать необязательно, так как по умолчанию стоит javascript;

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

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

Элемент script, широко используемый для подключения к странице JavaScript, имеет несколько атрибутов:

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

В запросе комментариев RFC-4329, определяющем MIME-тип, соответствующий JavaScript, указано:

Известно, что использование «text» в качестве типа верхнего уровня данного типа содержимого проблематично. Поэтому данный документ определяет text/javascript и text/ecmascript, отмечая их «устаревшими». Использование экспериментальных и незарегистрированных медиатипов, таких как перечисленные в части выше, не приветствуется.

Медиатипы:

1.   application/javascript;

.     application/ecmascript,

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

Однако, согласно спецификации HTML 4.01 в качестве значения type должно быть указано устаревшее "text/javascript". Так как JavaScript является языком программирования по умолчанию во всех браузерах, начиная с Netscape 2, Дуглас Крокфорд придерживается мнения о нецелесообразности использования атрибута type, рекомендуя указывать его в XHTML, так как, хотя он, по мнению Крокфорда, и не нужен, но обязателен, и не указывать в HTML.

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

.     необязательный атрибут «charset», используемый вместе с src для указания используемой кодировки внешнего файла;

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

.     необязательный атрибут «async» указывает, что получение скрипта происходит асинхронно, а выполнение будет произведено сразу по завершению скачивания. Очередность выполнения скриптов не гарантируется.

При этом атрибут language (language="JavaScript"), несмотря на его активное использование (в 2008 году этот атрибут был наиболее часто используемым у тега <script>), относится к устаревшим (deprecated), отсутствует в DTD, поэтому считается некорректным.используется в клиентской части веб-приложений: клиент-серверных программ, в котором клиентом является браузер, а сервером - веб-сервер, имеющих распределённую между сервером и клиентом логику. Обмен информацией в веб-приложениях происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб-приложения являются кроссплатформенными сервисами.

Также, JavaScript используется в AjAX, Comet, браузерных операционных системах, букмарклеты, пользовательских скриптах в браузере, серверных приложениях, мобильных приложениях, виджетах, прикладном ПО, манипуляциях объектами приложений, офисных приложениях (например, Microsoft Office, OpenOffice).обладает пропедевтической ценностью, позволяя сочетать при обучении информатике интенсивную практику программирования и широту используемых технологий. Преподавание данного языка в школе позволяет создать базу для изучения веб-программирования, использовать на уроках творческие проекты. Соответствующий курс позволяет обеспечить углубленный уровень изучения информатики и его имеет смысл включать в элективные курсы углубленного уровня подготовки.- подходящий язык для обучения программированию игр. По сравнению с альтернативами, он функционально достаточен, прост в изучении и в применении, снижает сложность для обучения, мотивирует обучаемых делиться своими играми с другими [23].

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

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

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

СУБД MySQL была выбрана по причине бесплатного распространения и удобства настройки.

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

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

3. Разработка технических требований и архитектуры клиентской части

3.1 Технические требования клиентской части

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

Браузер: Любой, с поддержкой JavaScript, CSS 3;

Операционная система: Windows, Linux, Mac OS, OS X, *nix-системы;

Оперативная память: от 1 GB и выше;

Процессор: Intel Pentium 4 или более новый;

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

Операционная система: Linux, Mac OS X, Solaris, Free BSD, Windows;

Оперативная память: от 2 GB;

Процессор: Intel Pentium 4 Core 2 Duo;

Памяти на жёстком диске: от 2 GB;

Дополнительное программное обеспечение: MySQL, Nginx (или любой другой HTTP-сервер с поддержкой MySQL);

.2 Архитектура клиентской части

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

.     Модуль «Логин» является общедоступным и отвечает за авторизацию пользователей в системе;

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

Рисунок 1 - Информационная архитектура клиентской части

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

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

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

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

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

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

.     модуль «Заметки» доступен только специалистам и администратору системы. В данном модуле размещаются все заметки, которые специалисты оставляют о выбранном кандидате. По одному кандидату может быть создано несколько заметок. Также доступно редактирование заметок, созданных ранее.

4. Формализация бизнес-процессов автоматизированного рабочего места специалиста по работе с персоналом

.1 Характеристика средств проектирования

.1.1 CASE-средства

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

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

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

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

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

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

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

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

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

.     средства конфигурационного управления;

.     средства документирования;

.     средства тестирования;

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

.     средства реинжиниринга.

Все современные CASE-средства могут быть классифицированы в основном по типам и категориям. Классификация по типам отражает функциональную ориентацию CASE-средств на те или иные процессы ЖЦ. Классификация по категориям определяет степень интегрированности по выполняемым функциям и включает отдельные локальные средства, решающие небольшие автономные задачи, набор частично интегрированных средств, охватывающих большинство этапов жизненного цикла ИС и полностью интегрированные средства, поддерживающие весь ЖЦ ИС и связанные общим репозиторием. Помимо этого, CASE-средства можно классифицировать по следующим признакам:

1.   применяемым методологиям и моделям систем и БД;

.     степени интегрированности с СУБД;

.     доступным платформам.

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

1.   средства анализа (Upper CASE), предназначенные для построения и анализа моделей предметной области;

.     средства анализа и проектирования (Middle CASE), поддерживающие наиболее распространенные методологии проектирования и использующиеся для создания проектных спецификаций. Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитектуры системы, алгоритмов и структур данных;

.     средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз для наиболее распространенных СУБД. К ним относятся ERwin, S-Designor и DataBase Designer;

.     средства разработки приложений;

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

Вспомогательные типы включают:

1.   средства планирования и управления;

.     средства конфигурационного управления;

.     средства тестирования;

4.   средства документирования.

На сегодняшний день Российский рынок программного обеспечения располагает следующими наиболее развитыми CASE-средствами: Vantage Team Builder (Westmount I-CASE); Designer/2000; Silverrun; ERwin+BPwin; S-Designor; CASE.Аналитик; ArgoUML и др.[24]

4.1.2 AllFusion ERwin Data Modelerсредство для проектирования и документирования баз данных, которое позволяет создавать, документировать и сопровождать базы данных, хранилища и витрины данных. Модели данных помогают визуализировать структуру данных, обеспечивая эффективный процесс организации, управления и администрирования таких аспектов деятельности предприятия, как уровень сложности данных, технологий баз данных и среды развертыванияпредназначен для всех компаний, разрабатывающих и использующих базы данных, для администраторов баз данных, системных аналитиков, проектировщиков баз данных, разработчиков, руководителей проектов. AllFusion ERwin Data Modeler позволяет управлять данными в процессе корпоративных изменений, а также в условиях стремительно изменяющихся технологий. позволяет наглядно отображать сложные структуры данных. Удобная в использовании графическая среда AllFusion ERwin Data Modeler упрощает разработку базы данных и автоматизирует множество трудоемких задач, уменьшая сроки создания высококачественных и высокопроизводительных транзакционных баз данных и хранилищ данных.

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

Ключевые характеристики AllFusion ERwin Data Modeler 7:

1.   синхронизация моделей/баз данных;

.     автоматизированное создание структуры базы данных и обратное проектирование;

.     публикация моделей;

.     поддержка нотаций: IDEF1x, IE, Dimensional;

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

.     документирование структур баз данных;

.     перенос структур баз данных (но не самих данных) из одного типа СУБД в другой. [25]

Функциональные возможности ERwin:

Архитектура уровня проектирования. AllFusion ERwin Data Modeler (ERwin) имеет достаточную гибкость для разработки архитектуры связанных моделей данных, полностью удовлетворяющей потребностям организации. Наряду с комбинированной логической/физической моделью поддерживаются раздельные логические и физические модели. Благодаря накоплению знаний об отношениях между компонентами связанных моделей и ведению журнала проектных решений пользователи могут быстро определять влияние изменений одного уровня проектирования на другой.

Технология трансформации:

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

Определение стандартов:

Определение и поддержка стандартов обеспечивается с помощью словаря доменов Domain Dictionary, редактора стандартов именования Naming Standards Editor и редактора стандартов типов данных Datatype Standards Editor. Словарь доменов содержит многократно используемые атрибуты и обеспечивает непротиворечивость имен и определений в рамках модели. Редактор стандартов именования позволяет пользователям создавать словари разрешенных терминов, аббревиатур и правил именования, которые могут использоваться повторно в рамках модели. Редактор стандартов типов данных позволяет определять собственные правила соответствия между типами данных разных СУБД.

Поддержка нескольких нотаций моделирования. Для визуального проектирования систем обработки транзакций, витрин и хранилищ данных в единой интегрированной среде ERwin поддерживает три популярные нотации моделирования данных: Integration DEFinition for Information Modeling (IDEF1X), Information Engineering (IE), Dimensional Modeling (DM).

Управление большими моделями:облегчает управление большими корпоративными моделями за счет использования предметных областей (Subject Areas) и хранимых отображений (Stored Displays). Предметные области позволяют конкретным проектировщикам фокусировать внимание, разделяя модель на более мелкие, и за счет этого легче управляемые подмодели. Хранимые отображения предоставляют разные варианты графического представления модели или ее предметных областей, облегчая обмен информацией между специализированными группами пользователей.

Полное сравнение/синхронизация (Complete Compare):

Эта мощная технология автоматизирует полную двунаправленную синхронизацию модели, скриптов и баз данных. При синхронизации для выбранных пользователем объектов отображаются отличия, и пользователю предлагается выбрать, какие из обнаруженных отличий и в каком направлении необходимо внести. При этом AllFusion ERwin Data Modeler (ERwin) может автоматически сгенерировать ALTER-скрипт на изменение.

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

Проектирование хранилищ и витрин данных:

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

Обратное проектирование:позволяет провести автоматическую обратную генерацию структуры базы данных в модель для ее изучения и документирования и/или для последующей миграции на платформу другой СУБД.

Графические объекты:

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

Навигатор модели (Model Explorer):Explorer - это удобный в использовании инструмент, обеспечивающий навигацию по модели, а также выбор объектов для их анализа или редактирования. Помимо традиционного изображения модели в виде диаграммы, Model Explorer обеспечивает компактное упорядоченное представление модели и ее содержимого.

Полный набор возможностей Undo/Redo. AllFusion ERwin Data Modeler (ERwin) предоставляет полный комплект возможностей «отменить/вернуть изменения» в пределах сессии моделирования. Возможности Undo/Redo могут быть применимы ко всем задачам моделирования, включая изменения размещения и создание/обновление/удаление объектов. Отменяя конкретные изменения модели, пользователи могут полностью понимать влияния этих действий.

Создание и печать отчетов:

Ключевым элементом, обеспечивающим коммуникацию и совместную работу пользователей в процессе моделирования, является способность визуализации и публикации данных. ERwin предоставляет гибкие, настраиваемые возможности создания отчетов и печати. Два встроенных построителя шаблонов отчетов: ERwin Data Browser и Report Template Builder - позволяют однократно разработать шаблон отчета, который впоследствии будет доступен для использования в любых моделях для генерации отчетов в любом из форматов: HTML, RTF, TXT, PDF.

Встроенная технология обмена метаданными:

Встроенная передовая технология предоставляет возможность обмена метаданными между ERwin и другими средствами, такими как MS Excel, XSD, XMI, CWM, ведущими ETL/EII-инструментами, многочисленными средствами BI/Reporting, а также с широким спектром сред моделирования такими, как: Rational Data Architect, Oracle Designer, Sybase Power Designer и другими - всего порядка 100 популярных продуктов. Данная технология позволяет сэкономить временные и материальные ресурсы благодаря устранению необходимости перепроектировать модели.

Поддерживаемые СУБД: Oracle; DB2/UDB (включая iSeries); SQL Server; Teradata; ODBC; Sybase; Informix; Ingres; Progress; Access.

Поддерживаемые ОС: Windows 2000; Windows XP; Windows 2003 Server.

Интеграция с другими продуктами:ERwin Data Modeler интегрирован с широким спектром сред моделирования, такими как Rational Data Architect, Oracle Designer, Sybase Power Designer и др.

ERWin был выбран, так как он предоставляет возможности создания диаграмм баз данных, необходимых при разработке АИС и наличия всех необходимых компонентов для выполнения указанных целей;

Выбор BPWin основан на необходимости определения бизнес-процессов исследуемой области. Данный инструмент предоставляет все нужные возможности и удобен в использовании.

Также оба инструмента достаточно просты в освоении, что позволило выделить больше времени на саму разработку [26].

.2 Определение бизнес-процессов

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

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

На верхнем уровне представлена система АРМ специалиста по работе с персоналом (рис. 2).

К входным данным относятся:

1.   персональные данные соискателя такие, как ФИО, адрес электронной почты и пароль для входа в систему;

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

Рисунок 2 - Контекстная диаграмма верхнего уровня бизнес-процессов

К блоку управления относятся:

3.   должностная инструкция специалиста отдела кадров и руководителя направления (данный документ также определяет рамки и правила общения с соискателем);

.     условия приёма, на основе которых будет происходить принятие решения о приёме на работу;

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

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

К выходным данным относится только решение о статусе соискателя, то есть будет ли он принят или же нет.

На втором уровне происходит разделение системы на три процесса (рис. 3).

Рисунок 3 - Схема декомпозиции второго уровня бизнес-процессов

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

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

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

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

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

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

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

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

Рисунок 4 - Схема декомпозиции блока «Регистрация»

Регистрация также разбита на три процесса.

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

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

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

Рисунок 5 - Схема декомпозиции блока «Подтверждение регистрации»

Подтверждение регистрации делится на следующие процессы: Формирование письма-запроса для подтверждения регистрации, подтверждение регистрации пользователем и регистрация пользователя в системе.

Входными данными для первого процесса выступает запрос подтверждения регистрации, выходными - письмо-запрос подтверждения регистрации.

Для процесса «Подтверждение регистрации пользователем» входными данными является письмо-запрос подтверждения регистрации, а выходными - ответ пользователя на запрос о регистрации.

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

Рисунок 6 - Схема декомпозиции блока «Работа с соискателем»

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

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

Процесс «Проведение интервью с кандидатом» имеет в виде входящих данных результат выполнения тестового задания, выходящих - результаты интервью. Блоком управления выступает должностная инструкции специалиста по работе с персоналом, а блоком механизма являются руководитель отдела и специалист по работе с персоналом.

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

5. Разработка модели БД

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

Таблица hrw_page отражает основные страницы системы, такие как страница регистрации, авторизации и другие. Данная таблица состоит из 6 полей:

1.   id - уникальный идентификатор страницы, для обращения к ней при необходимости;

2.   title - поле, хранящее заголовок страницы;

3.   alias - поле, в котором хранится псевдоним страницы, отображаемый в адресной строке браузера;

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

5.   group_id - данное поле определяет к какому типу относится страница;

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

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

1.   id - уникальный идентификатор группы, для обращения к ней при необходимости;

2.   user_id - в данном поле хранится информация о создателе-владельце группы в виде его уникального идентификатора;

3.   title - хранит название группы;

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

В таблице hrw_user хранятся данные о пользователях, зарегистрированных в системе. В данной таблице 17 полей:

1.   id - уникальный идентификатор пользователя, по которому в любой момент можно обратиться конкретно к этому пользователю;

2.   login - уникальное имя на латинице, которое пользователь использует для входа в систему;

3.   password - данное поле хранит пароль пользователя в зашифрованном виде, шифрование происходит по алгоритму хэш SHA-512. Текущий алгоритм выбран из-за высокой степени защиты, которая дополнительно усиливается использованием модификатора, так называемой, «соли».

4.   salt - в этом поле хранится модификатор пароля, который повышает стойкость пароля к дешифровке;

5.   email - данное поле хранит адрес электронной почты специалистов и кандидатов;

6.   first_name, middle_name, last_name - в этих полях хранятся соответственно имя, фамилия и отчество пользователя;

7.   direction_id - поле хранит уникальный идентификатор направления, на которое претендует кандидат, у специалистов в данном поле всегда 0;

8.   group_id - в это поле хранится уникальный идентификатор типа пользователя. Пользователь может быть одного из трёх типов: специалист, администратор, кандидат;

9.   is_active - поле, показывающее статус регистрации пользователя. «1» - если пользователь подтвердил регистрацию переходом по ссылке в письме, «0» - если пользователь не закончил регистрацию, такие пользователи через некоторое время удаляются;

10. last_login - данное поле показывает, когда пользователь заходил в систему последний раз;

11. failed_login_count - поле является счётчиком, который регистрирует количество ошибочных вводов логина и/или пароля. Если значение этого поля больше или равно значению поля max_failed_login, то пользователь блокируется до разблокировки администратором. В чате пользователь также помечается заблокированным, чтобы специалист мог быстро среагировать на проблему. Такая схема сделана для защиты аккаунтов пользователей от взлома перебором паролей.

12. is_banned - поле показывает заблокирован ли пользователь;

13. reg_date - в этом поле хранится дата регистрации пользователя в системе;

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

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

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

2.   title - данное поле хранит в себе наименование направления;

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

1.   id - в поле хранится уникальный идентификатор группы, по которому можно напрямую обратиться к необходимой;

2.   title - поле хранит в себе заголовок группы;

В таблице hrw_page_template хранятся шаблоны оформления, которые используются при формировании страницы. Таблица из трёх полей:

1.   id - в поле хранится уникальный идентификатор шаблона, по которому можно напрямую обратиться к нужному;

2.   title - поле хранит заголовок шаблона;

3.   filename - в данном поле находится имя файла, в котором находится шаблон.

В таблице hrw_page_user_connections хранятся права доступа групп пользователей, к определённым группам страниц. Таблица состоит из 3 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   page_group_id - в данном поле хранится идентификатор группы страниц, к которым имеют доступ пользователи по идентификатору из поля user_group_id;

В таблице hrw_settings хранятся клиент-серверные настройки, которые определяют поведение всего сервиса. Таблица состоит из 4 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   name - поле хранит имена настроек, по которым можно получать или изменять необходимые значения;

3.   title - в данном поле находится заголовки настроек;

4.   value - это поле хранит значения настроек;

В таблице hrw_user_direction_connections хранится информация о том, в каких направлениях может работать специалист. Таблица состоит из 3 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   spec_id - поле хранит идентификатор пользователя, который является специалистом;

3.   direction_id - в этом поле хранится идентификатор, который определяет, по каким направлениям может работать специалист.

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

1.   id - в поле хранится уникальный идентификатор группы, по которому можно напрямую обратиться к необходимой группе;

2.   title - поле хранит в себе заголовок группы;

Таблица hrw_cand_file хранит в себе данные о файлах, которые заливал кандидат и состоит из 5 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   cand_id - данное поле содержит уникальный идентификатор кандидата, которому принадлежит файл;

3.   name - в этом поле находится имя файла;

4.   type - это поле хранит тип файла, например, текстовый или графический;

5.   filename - в этом поле хранится физическое имя файла, под которым он хранится на жёстком диске.

В таблице hrw_spec_file хранятся записи о файлах, принадлежащих специалистам. Таблица состоит из 6 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   parent_id - поле хранит идентификатор каталога, которому принадлежит файл;

3.   is_dir - в данном поле хранится информация, которая определяет каталог или файл выбранный объект;

4.   name - в этом поле хранится имя файла;

5.   type - это поле хранит тип загруженного файла, например, текстовый или изображение;

6.   filename - в этом поле хранится физическое имя файла, под которым он хранится на жёстком диске.

В таблице hrw_message хранятся все сообщения, которыми обмениваются специалисты и кандидаты. Таблица состоит из 5 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   sender_id - поле хранит в себе идентификатор отправителя сообщения;

3.   receiver_id - в этом поле хранится идентификатор получателя;

4.   text - в данном поле находится, непосредственно, текст сообщения;

5.   date - хранит в себе дату и время отправления.

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

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   user_id - поле хранит идентификатор пользователя, который подключается к определённой группе;

3.   cgroup_id - в данном поле хранится идентификатор группы, к которой подключается кандидат при входе в систему.

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

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

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

3.   age - поле хранит возраст кандидата;

4.   education - в этом поле хранится информация об образовании кандидата;

5.   tel - в данном поле находится номер телефона кандидата;

6.   direction_id - это поле хранит уникальный идентификатор, который показывает, к какому направлению принадлежит кандидат.

В таблице hrw_user_note хранятся заметки специалистов о кандидатах. Таблица состоит из 6 полей:

1.   id - в поле хранится уникальный идентификатор записи, по которому можно напрямую обратиться к нужной записи;

2.   author_id - в этом поле хранится идентификатор создателя заметки;

3.   cand_id - данное поле хранит идентификатор кандидата, о котором создана заметка;

4.   title - поле хранит заголовок заметки;

5.   text - в это поле хранится содержимое заметки;

6.   date - в данное поле записывается дата создания заметки.

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

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

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

Основным способом диалога между специалистом и соискателем является обмен сообщениями. Все сообщения добавляются в таблицу hrw_message.

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

АРМ является распределённой клиент-серверной системой, поэтому алгоритм работы построен на обмене данными, путём запроса-ответа (рис. 7).

Рисунок 7 - Взаимодействие модулей системы в общем виде

Также рассмотрим use case разработанной системы.

Рисунок 8 - Диаграмма использования разработанного программного продукта

На рисунках 9 и 10 представлена блок-схема алгоритма работы клиентского модуля. Как со стороны кандидата, так и специалиста кадров первое обращение к АРМ вызовет запрос клиентом страницы у сервера. В начале работы такой страницей станет форма авторизации пользователя в системе. Отдельно для кандидата существует страница с формой регистрации, заполнив которую он получает доступ к системе. Так же после регистрации на указанную почту кандидата придёт письмо с просьбой подтверждения регистрации и лишь после подтверждения кандидат будет окончательно зарегистрирован.

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

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

Рисунок 9, А - Блок-схема алгоритма работы клиентского модуля

Рисунок 9, Б - Блок-схема алгоритма работы клиентского модуля

Рисунок 10 - Блок-схема процесса инициализации

7. Разработка и реализация программных модулей

Опишем работу программы, представив ее формы и основные функции.

.1 Регистрация в системе

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

Рисунок 11 - страница регистрации и входа в сервис

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

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

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

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

Если пользователь ещё не зарегистрирован в системе, то ему необходимо зарегистрироваться. Для этого необходимо нажать на кнопку «Регистрация» (рис. 12), после чего пользователь попадёт на страницу регистрации (рис. 13), где кандидат может ввести всю необходимую информацию, такую, как: фамилия, имя, отчество, фотография и другое.

Рисунок 12 - страница регистрации пользователя

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

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

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

Рисунок 13 - основной интерфейс пользователя «Специалист»

Рассмотрим каждый элемент интерфейса специалиста более подробно.

.2 Модуль «Группы»

Данный элемент представлен на рис. 14.

Рисунок 14 - Модуль «Группы»

В данном модуле изначально есть три предустановленные группы, которые специалист не сможет изменить или удалить:

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

.     нераспределённые - здесь находятся все кандидаты, которых специалист ещё не успел распределить по группам;

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

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

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

При создании или изменении группы есть возможность выбрать цвет её метки (рис. 15). Цветовые метки слева от названия группы сделаны для того, чтобы специалист мог быстро визуально ориентироваться по этим меткам, даже не читая названия групп.

Рисунок 15 - Интерфейс создания и изменения группы

Перемещение в группу осуществляется с помощью кнопки в правом нижнем углу панели кандидата в элементе «Список кандидатов» (рис. 16).

Рисунок 16 - Кнопка перемещения кандидатов в группу

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

.3 Модуль «Файлы»

В данном модуле (рис. 17) расположены файлы, которые являются общими для всех специалистов, работающих с кандидатами.

Рисунок 17 - Модуль «Файлы»

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

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

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

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

Рисунок 18 - Окно создания и изменения каталогов

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

Рисунок 19 - Окно загрузки файлов

Рисунок 20 - Окно изменения файлов

При удалении файла появляется окно подтверждения, чтобы исключить случайное удаление нужного файла. Загруженные файлы можно передавать кандидатам через окно чата, этот момент будет рассмотрен далее, в описании модуля «Чат».

.4 Модуль «Список кандидатов»

В этом модуле расположен список кандидатов (рис. 21), которые находятся в выбранном списке и соответствуют направлению, в котором работает специалист.

Рисунок 21 - Элемент «Список кандидатов»

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

.5 Модуль «Чат»

В данном модуле системы (рис. 22) происходит непосредственное общение кандидатов со специалистами.

Рисунок 22 - Модуль «Чат»

Данный модуль состоит из области сообщений и области ввода текста.

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

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

Данный элемент автоматически обновляется при выборе кандидата, а история сообщений хранится на сервере.

Рисунок 23 - Окно выбора файла

программный управление автоматизированный алгоритм

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

Также предусмотрен поиск по сообщениям в окне чата. Панель поиска вызывается нажатием на кнопку с изображением лупы в правом верхнем углу элемента «Чат», после чего появляется поле ввода вводимого текста (рис. 24).

Рисунок 24 - Пример поиска текста в сообщении

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

Если пользователь ведёт себя в разговоре некорректно, то есть два способа запретить ему доступ к чату специалиста:

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

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

Рисунок 25 - Кнопка отправки жалобы на кандидата

.6 Модуль «Информация о кандидате»

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

Рисунок 26 - Модуль «Информация о кандидате»

Полную информацию о кандидате специалист получает уже из резюме.

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

Данный элемент автоматически обновляется при выборе кандидата.

7.7 Модуль «Файлы кандидата»

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

Рисунок 27 - Модуль «Файлы кандидата»

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

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

У кандидата, в этом элементе, управление происходит аналогично управлению файлами у специалиста, но за исключением действий с каталогами. Кандидат может загрузить, скачать, изменить и удалить файл.

.8 Модуль «Заметки»

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

Рисунок 28 - элемент «Заметки»

Заметка состоит из заголовка, основного текста, даты создания и автора заметки.

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

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

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

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

Рисунок 29 - Выбор направления и выход из системы

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

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

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

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

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

В ходе тестирования приложения были выявлены следующие ошибки, которые требовали исправления:

.     Создание идентичных учётных записей пользователей;

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

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

.     Кириллические пароли после регистрации не позволяли пользователям входить в систему;

Ошибка проявлялась из-за хранения кириллических символов в неправильной кодировке.

Было исправлено путём запрета ввода кириллических символов, после правки пароль можно вводить только с использованием латиницы и специальных символов.

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

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

Ошибка была исправлена введение экранирующего символа.

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

Ошибка проявилась из-за особенности движка, которая не позволяет отображать файлы больше 5 MB в качестве аватаров для учётных записей.

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

5.   Зависало окно выбора цвета для группы кандидатов;

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

Ошибка была исправлена путём присвоения клику мимо окна функции, используемой в кнопке «Отмена».

.     Вместо файла в окне чата прикреплялось только его имя;

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

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

.     Некорректное отображение вёрстки системы в браузере IE (от версии не зависит).

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

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

.     Не отображался текст в *nix подобных операционных системах.

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

Было исправлено использованием “безопасных” шрифтов, то есть общих для систем, указанных в системных требованиях программного продукта.

Заключение

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

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

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

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

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

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

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

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

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

Рассмотрим экономическую целесообразность проекта.

Таким образом, сметная стоимость продукта составит 65330,64 руб.

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

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

Необходимость в создании программного обеспечения:

1.   оптимизация работы с соискателями;

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

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

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

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

Для сравнения можно взять «1С: Зарплата и управление персоналом». Комплект прикладных решений на 5 пользователейимеет стоимость 35 000 р., помимо стоимости покупки обязательной также является подписка, без которой пользователи не смогут получить актуальную версию программного продукта.

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

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

Тем самым, можно избежать запланированного найма дополнительного сотрудника, с зарплатой в размере 15 000 рублей, что позволит окупить затраты на продукт:

Время окупаемости = 5 месяцев.

Список используемых источников

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

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

.       КИС «Флагман». Персонал [Электронный ресурс]. - URL: http://www.infosoft.ru/index.php/flagman/item/10-personal.

4.     AraXGroup. Программы для бизнеса [Электронный ресурс]. - URL: http://araxgroup.ru/content/view/30/48/.

5.     HRsoft. Каталог программ для управления персоналом [Электронный ресурс]. - URL: http://www.hrsoft.ru/software/detail.php?ID=22078.

6.     HRsoft. Каталог программ для управления персоналом [Электронный ресурс]. - URL: http://www.hrsoft.ru/software/detail.php?ID=22077&sphrase_id=791717.

7.     Headhunter [Электронный ресурс]. - URL: http://www.hrsoft.ru/software/detail.php?ID=22077&sphrase_id=791717.

8.     Job.ru [Электронный ресурс].-URL:http://vologda.job.ru/aboutsite/aboutcompany/.

.       Всероссийский союз кадровиков. [Электронный ресурс]. - URL: http://www.kadrovik.ru/modules.php?op=modload&name=News&file=article&sid=846.

.       Студопедия [Электронный ресурс]. - URL:http://studopedia.org/6-40562.html.

.       Корнеев И.К., Машурцов В.А. Информационные технологии в управлении. - М.: ИНФРА-М, 2001. - 158 с.

12.   Novainfo [Электронный ресурс]. - URL: http://novainfo.ru/archive/13/ informaciya-v-ekonomike.

.       Студопедия [Электронный ресурс]. - URL: http://studopedia.ru/ 5_130924_lektsiya-osnovnie-komponenti-eis.html.

14.   CITForum [Электронный ресурс]. - URL: http://citforum.ru/database/ case/glava2_4_1.shtml.

.       Студопедия [Электронный ресурс]. - URL: http://studopedia.org/4-112613.html.

.       Лекции.Нет [Электронный ресурс]. - URL: http://lektsii.net/2-39794.html.

17.  Годин В.В., Корнеев И.К. Информационное обеспечение управленческой деятельности Издательства, - М: Высшая школа; Мастерство, 2001 г. 240 с.

18.   Титтел Э., Ноубл Дж. HTML, XHTML и CSS для чайников, 7-е издание = HTML, XHTML & CSS For Dummies, 7th Edition - М.: «Диалектика» <http://ru.wikipedia.org/w/index.php?title=%D0%94%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2011. - 400 с.

.       Зандстра М., PHP: объекты, шаблоны и методики программирования, 3-е издание = PHP Objects, Patterns and Practice, Third Edition - М.: «Вильямс» <http://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2010. - 560 с.

.       Суэринг С., Конверс Т., Джойс П. PHP и MySQL. Библия программиста, 2-е издание = PHP 6 and MySQL 6 Bible - М.: «Диалектика» <http://ru.wikipedia.org/w/index.php?title=%D0%94%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2010. - 912 с.

.       Кристофер Шмитт. CSS. Рецепты программирования = CSS. - СПб.: БХВ-Петербург, 2007. - 592 с.

.       Мориссон М. Изучаем JavaScript /М. Мориссон - Спб.: Питер, 2011.- 608с.

23.   CITForum [Электронный ресурс]. - URL: http://citforum.ru/database/ case/glava3_2.shtml.

.       Александров Д. В. Инструментальные средства информационного менеджмента. CASE-технологии и распределенные информационные системы: Учебное пособие. - М.: Финансы и статистика, 2011. - 224 с.

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!