Файл: Проектирование реализации бизнес-процесса «Управление персоналом».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.06.2023

Просмотров: 143

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

2.4. Общие положения (дерево функций и сценарий диалога)

Рисунок 11- Дерево функций

Сценарий диалога сотрудника службы сопровождения АСУД при работе с информационной системой представлен на рисунке 10

Рисунок 12-Сценарий диалога работы специалиста с ИС

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

2.5. Характеристика базы данных

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

Логическая модель данных данной информационной системы состоит из 10 таблиц.

Рисунок 13 – Логическая модель базы данных

В таблице «Филиалы» хранится список филиалов и отделений компании ООО «Люксофт», а именно идентификатор, наименование филиала, ИНН, КПП, ОГРН и адрес местонахождения филиала.

Таблица «Подразделения» хранится информация о подразделениях: идентификатор, наименование и филиал, которому принадлежит подразделение.

Таблица «Должности» содержит информацию о должностях компании (идентификатор и наименование).

В таблице «Кандидаты» содержится список кандидатов на должность, а именно идентификатор, ФИО кандидата, источник информации (откуда была получена информация о вакансии), комментарий и конечный результат, который может иметь варианты: работает, наш отказ, отказ кандидата.


Таблица «Этапы работы» содержит информацию о возможных этапах работ (идентификатор и наименование).

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

Таблица «Кадровый план» содержится информация о кадровых данных компании: идентификатор подразделения, идентификатор должности, идентификатор филиала, количество плановых ставок, количество занятых ставок.

В таблице «Вакансии» содержится идентификатор вакансии, идентификатор подразделения, идентификатор должности, идентификатор филиала, дата открытия, дата закрытия, требования, обязанности. Условия.

А таблице «Резюме» содержится список резюме кандидатов, а именно идентификатор резюме, идентификатор филиала, идентификатор вакансии, дата.

В таблице «Прием кандидата» содержится информация о всех принятых на работу кандидатов: идентификатор кандидата, идентификатор кадрового

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

Теперь рассмотрим физическую реализацию базы данных, она приведена на рисунке 12. Данная модель представлена для СУБД MySQL, все названия написаны английскими буквами, все атрибуты указаны со своими типами. Данная модель является реляционной моделью. Эта модель построена с помощью ERWIN.

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

Таблица 10

Техническая спецификация Candidate (Кандидаты)

Имя поля

Тип, размер

Описание

id_ Candidate

INT, счетчик

Уникальный идентификатор

кандидата, первичный ключ

FIO

Varchar, 250

Фамилия, имя, отчество кандидата

Source

Varchar, 50

Источник информации (сайт

кадровой службы, рассылка)

Totals

Varchar, 20

Итоговый результат

Comment

Varchar, 100

Рабочий комментарий

Таблица 11

Техническая спецификация StaffingPlan (Кадровый план)

Имя поля

Тип, размер

Описание

id_ StaffingPlan

INT, счетчик

Уникальный идентификатор строки

кадрового плана, первичный ключ

id_ unit

FK, INT

Уникальный идентификатор

подразделения, внешний ключ

id_ branch

FK, INT

Уникальный идентификатор

филиала, внешний ключ

id_position

FK, INT

Уникальный идентификатор

должности, внешний ключ

NumberBets

Float

Количество ставок

NumberClosed

Float

Количество занятых ставок


Таблица 12

Техническая спецификация Branch (Филиал)

Имя поля

Тип, размер

Описание

id_ branch

INT, счетчик

Уникальный идентификатор

филиала, первичный ключ

Name

Varchar, 50

Наименование филиала

INN

Char, 12

ИНН филиала

KPP

Char, 10

КПП филиала

OGRN

Char, 10

ОГРН филиала

Adress

Varchar, 150

Адрес филиала

Остальные спецификации будет приведены в приложении А.

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

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

Model-view-controller (MVC) - разделение прикладную логику и данные от представления. Model-view-controller (MVC, «Модель-представление- поведение», «Модель-представление-контроллер») — схема использования нескольких шаблонов проектирования, с помощью которых модель данных приложения, пользовательский интерфейс и взаимодействие с пользователем разделены на три отдельных компонента так, что модификация одного из компонентов оказывает минимальное воздействие на остальные. Данная схема проектирования часто используется для построения архитектурного каркаса, когда переходят от теории к реализации в конкретной предметной области.

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

Модель (англ. Model). Модель предоставляет знания: данные и методы работы с этими данными, реагирует на запросы, изменяя своё состояние. Не содержит информации, как эти знания можно визуализировать.

Представление, вид (англ. View). Отвечает за отображение информации (визуализация). Часто в качестве представления выступает форма (окно) с графическими элементами.

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


Важно отметить, что как представление, так и контроллер зависят от модели. Однако модель не зависит ни от представления, ни от контроллера. Тем самым достигается назначение такого разделения: оно позволяет строить модель независимо от визуального представления, а также создавать несколько различных представлений для одной модели. На рисунке 15 представлена схема MVC.

Рисунок 15 – Модель MVC

Такая же структура будет характерна структуры разрабатываемой информационной системы. На рисунке 14 представлена структурная схема пакета документов. Узловой узел HR (управление персоналом) состоит из подкаталогов: controller, model, service, дополнительно каталог mapper, в котором содержаться запросы к базе данных.

Опишем более подробно состав пакета модулей. Каталог «service»:

  • CandidateManager – класс обработки данных кандидата, полученных из запроса.
  • HhResumeFetcher – класс загрузки резюме из сайтов кадровых служб.
  • HttpService – класс обработки полученных данных из класса HhResumeFetcher.
  • ResumeFetcher – класс отправки данных для сохраения резюме в базу.

отправления данных resumeMapper для

класс

- ResumeManager –

обработки.

Каталог model и mapper имеют аналогичную структуру, назначение

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

Поэтому приведен содержание каталога model, аналогичный ему файл есть в каталоге mapper, только с добавлением слова mapper.

В таблице 13 приведено соответствие файлов каталогов. Таблица 13

Соответствие файлов каталогов

Каталог

model

Аналогичный файл в

каталоге mapper

Назначение файлов

Mapper

BranchMapper

Обработка филиалов компании

(добавление, удаление, вывод списка)

Candidate

CandidateMapper

Обработка кандидатов (добавление,

удаление, вывод списка)

Department

DepartmentMapper

Обработка подразделений компании

(добавление, удаление, вывод списка)

Onboarding

OnboardingMapper

Прием кандидатов на работу

Position

PositionMapper

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

(добавление, удаление, вывод списка)

Resume

ResumeMapper

Обработка резюме (добавление,

удаление, вывод списка)

Stage

StageMapper

Обработка этапов работы (добавление,

удаление, вывод списка)

Vacancy

VacancyMapper

Обработка вакансий компании

(добавление, удаление, вывод списка)

WorkforcePlan

WorkforcePlanMapper

Работа с кадровым планом (добавление,

удаление строк, вывод отчета)


HR

controller model service mapper

ControllerException

Handler

Branch

CandidateManager

BranchMapper

MainController

Candidate

HhResumeFetcher

CandidateMapper

Department

HttpService

DepartmentMapper

Onboarding

ResumeFetcher

OnboardingMapper

OnboardingStage

ResumeManager

OnboardingStageM

Position PositionMapper

Resume

ResumeMapper

Stage

StageMapper

Vacancy VacancyMapper

WorkforcePlan WorkforcePlanMap

Рисунок 16 – Структурная схема пакетов документов

Каталог «controller»:

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

Так как контроллер MainController является основным связующим звеном между логикой приложения и отображением, приведен некоторые программные его коды и их взаимодействия с model и mapper

Приведем фрагмент кода для демонстрации работы моделей для филиалов. Попробуем это сделать согласно ГОСТу 19.401-78 ЕСПД. «Текст программы».

//класс объявления филиала @GetMapping("/branches")

public List<Branch> getBranches() {

return branchMapper.getBranches();

}

// добавления филиала