Файл: Проектирование реализации операций бизнес-процесса «Развитие и подготовка сотрудников» (Контрольный пример реализации проекта и его описание).pdf
Добавлен: 23.04.2023
Просмотров: 394
Скачиваний: 1
СОДЕРЖАНИЕ
1.1 Выбор комплекса задач автоматизации
1.2 Характеристика существующих бизнес – процессов
1.3. Характеристика документооборота, возникающего при решении задачи
1.4. Обоснование проектных решений по информационному обеспечению
1.5 Обоснование проектных решений по программному обеспечению
2.1 Информационная модель и её описание
2.2 Характеристика нормативно-справочной, входной и оперативной информации
2.3 Характеристика результатной информации
2.4 Общие положения (дерево функций и сценарий диалога)
2.5 Характеристика базы данных
2.6 Структурная схема пакета (дерево вызова программных модулей)
2.7 Описание программных модулей
«Информация» - информационные кортежи, являющиеся ответами БД на соответствующие SQL-запросы.
Взаимодействие программной системы с внешней средой (пользователями) описывается диаграммами вариантов использования (прецедентов). В [5, с. 92] диаграмма вариантов использования определена как модель, представляющая разрабатываемую программу как систему в виде совокупности вариантов ее использования пользователем. На этой диаграмме показывается внешняя сторона системы (программы), не учитывая ее внутреннюю структурную и архитектурную составляющую. Диаграмма вариантов использования отображает все предоставляемые программой связи с пользователем. Диаграмма вариантов использования ИСУПРС изображена на рисунке 2.3, ее спецификация приведена в таблице 2.4.
Рисунок 2.3 – Диаграмма вариантов использования ИСУПРС
AddCourse–создание новых/учет учебных курсов.
AddEmployee – создание новых/учет сотрудников.
PlanTraining – планирование/учет обучения сотрудников.
ViewReports – просмотр отчетов по обучению сотрудников.
Таблица 2.4
Спецификация диаграммы вариантов использования
|
№ |
Актор |
Вариант использования |
Описание |
|
1 |
HRadvanceManager – менеджер отдела кадров по учету и развитию персонала. |
Учет сотрудников |
Добавление (редактирование) нового сотрудника / подразделения в БД ИС. |
|
2 |
Учет курсов учебных программ и направлений |
Создание нового учебного курса для подразделения предприятия, ведение справочника учебных курсов. |
|
|
3 |
Планирование обучения |
Назначение сотрудникам подразделений учебных курсов. |
|
|
4 |
Просмотр отчетов |
Создание запросов по обучению сотрудников. |
Сценарий диалога пользователя с ИС может быть описан в рамках спецификаций UML с помощью диаграмм последовательности сообщений и коопераций. Первая служит для визуализации временных аспектов взаимодействия, а диаграмма кооперации предназначена для спецификации структурных аспектов взаимодействия. На рисунке 2.4 приведена диаграмма кооперации (CollaborationDiagram) для всех прецедентов ИСУПРС.
Рисунок 2.4 – Диаграмма коопераций ИСУПРС
На рисунке 2.5 представлена диаграмма последовательности сообщений (SequenceDiagram) ИСУПРС.
Рисунок 2.5 – Диаграмма последовательности сообщений ИСУПРС
Ниже приведена спецификация диаграммы последовательности сообщений и коопераций ИС.
:mainForm – главная форма, отображающая список сотрудников.
:employeeForm – форма диалога ввода данных сотрудника.
:courseForm – форма диалога ввода данных учебного курса.
:trainingForm – форма диалога ввода данных обучения сотрудника.
:trainingProcessForm – форма учета обучений сотрудников.
:reportForm – форма отчетных данных.
EmployeeTable – переключение на отображение таблицы сотрудников.
New – создание новой формы диалога ввода данных сотрудника (курса, обучения).
FillForm – заполнение формы диалога (ввод данных).
AddNewEmployee – добавление в ИС нового сотрудника.
UpdateEmployeeTable – обновление таблицы сотрудников.
CourseTable – переключение на отображение таблицы учебных курсов.
AddNewCourse – добавление в ИС нового учебного курса.
UpdateCourseTable – обновление таблицы учебных курсов.
OpenTrainingForm– переключение на отображение таблицы обучений.
AddNewTraining – добавление в ИС нового обучения.
UpdateTrainingTable – обновление таблицы обучений.
ReportQuery – создание запроса на получение отчета (в соответствии с заданными параметрами фильтра).
__FILTER__ – создание отчета в соответствии с запросом.
Show – отображение составленного отчета об обучениях по запросу.
2.5 Характеристика базы данных
Исходя из специфики поставленных задач определяется необходимый минимальный набор таблиц, которые составят основу будущей БД.
Прежде всего, необходимо иметь информацию о сотрудниках подразделений предприятия. Принимая во внимание правила нормализации баз данных, эту информацию следует представить в виде двух таблиц: СОТРУДНИКИ (employeers) и ПОДРАЗДЕЛЕНИЯ (departments).
Затем определяется таблица для хранения информации об учебных курсах, в которой необходимо размещать данные курса (название, описание, и т. д.), а также длительность (для планирования обучения).
Поскольку также требуется отслеживать процесс обучения сотрудников, то необходимо создать таблицу для учета назначения сотрудникам учебных курсов.
В таблице 2.5 приведена спецификация схемы данных ИСУПРС.
Таблица 2.5
Спецификация схемы данных ИСУПРС
|
Наименование поля |
Тип |
Примечание |
Ключ |
|
Таблица employeers – содержит информацию о сотрудниках |
|||
|
id |
Long Integer |
счетчик (идентификатор сотрудника) |
PK |
|
first_name |
Char [255] |
имя сотрудника |
|
|
surname |
Money |
фамилия сотрудника |
|
|
eposition |
Long Integer |
должность сотрудника |
|
|
department |
Char [255] |
идентификатор отдела, в котором работает сотрудник |
FK |
|
edate |
Date |
дата приема на работу |
|
|
Таблица departments – содержит список подразделений предприятия |
|||
|
id |
Long Integer |
счетчик (идентификатор отдела) |
PK |
|
dname |
Char [255] |
название отдела |
|
|
Таблица courses – содержит информацию об учебных курсах |
|||
|
id |
Long Integer |
счетчик (идентификатор учебного курса) |
PK |
|
cname |
название учебного курса |
||
|
description |
Char [255] |
краткое описание учебного курса |
|
|
duration |
Long Integer |
длительность учебного курса (в месяцах) |
|
|
depart_id |
Long Integer |
идентификатор отдела, для которого создан учебный курс |
FK |
|
Таблица process – содержит информацию об обучении сотрудников |
|||
|
id |
AutoNumber |
счетчик (идентификатор обучения) |
PK |
|
id_employeer |
Long Integer |
идентификатор сотрудника |
FK |
|
id_course |
Long Integer |
идентификатор учебного курса |
FK |
|
sdate |
Date |
дата начала прохождения курса |
|
Учитывая приведенные соображения, можно создать физическую структуру БД. В данной работе для создания физической структуры БД использовано средство автоматизированного моделирования баз данных AllFusionDataModeler. С помощью этой программы была создана физическая схема данных, приведенная на рисунке 2.6, а также выполнено преобразование этой схемы в физический файл базы данных MSAccess.
Рисунок 2.6 – ER-диаграмма данных ИСУПРС
Для обеспечения нормальной работы БД, устранения избыточности и других аномалий необходимо произвести нормализацию БД и привести ее, как минимум, к третьей нормальной форме (Н.Ф.).
Признаки принадлежности к Н.Ф.:
1-Н.Ф.: все атрибуты должны быть атомарными.
2-Н.Ф.: выполнение условий 1-Н.Ф, каждый не ключевой атрибут функционально полно зависит от составного ключа.
2-Н.Ф.: выполнение условий 2-Н.Ф, каждый не ключевой атрибут не транзитивно зависит от первичного ключа.
Проанализировав структуру отношений на предмет выполнения условий нормальных форм, можно сделать вывод, что все таблицы БД приведены к третьей нормальной форме.
2.6 Структурная схема пакета (дерево вызова программных модулей)
Вся структурная основа ИСУПРС реализована в виде информационной подсистемы в виде БД, основанной на СУБД MSAccess, а также исполнительной подсистемы, разработанной и созданной в виде прикладного программного обеспечения, выполненного на основе принципов ООП.
В основу объектного подхода к проектированию ИСУПРС была положена диаграмма классов системы, представленная на рисунке 2.7.
Все представленные классы реализуют непосредственный графический интерфейс ПО ИС с БД и выполняют все заявленные функции.
Рисунок 2.7 – Объектная структурная модель ИСУПРС
2.7 Описание программных модулей
Ниже приведена спецификация диаграммы классов в соответствии со структурной объектной моделью, представленной в п.2.6 (рис 2.7).
Класс frmMain: реализует главное окно программы, из которого осуществляется доступ во все остальные подсистемы.
frmDepartmentsList – экземпляр класса frmDepartments – реализует интерфейс для ведения таблицы «Подразделения» БД ИС.
frmEmployeeAddEdit – экземпляр класса frmEmployee – реализует интерфейс доступа к созданию/изменению кортежа таблицы «Сотрудники».
frmGenerelInfo – экземпляр класса frmInformation – реализует доступ к описательной части ПО.
frmTrainingCourses – экземпляр класса frmTraining – реализует интерфейс доступа к таблице «Учебные курсы» БД ИС.
frmEmployeeProcess – экземпляр класса frmProcess – реализует интерфейс доступа кпланированию обучения сотрудника.
frmShowReports – экземпляр класса frmReports – реализует интерфейс доступа к системе запросов отчетов по обучениям.
frmAboutInformation – экземпляр класса frmAbout – реализует доступ к метаданным ПО.
LoadEmployeersBase() – процедура загрузки таблицы сотрудников из БД.
UpdateEmployee() – обновление в БД записи о сотруднике.
AddNewEmployee() – добавление в БД записи о новом сотруднике.
RemoveEmployee() – удаление из БД записи о сотруднике.
Класс frmInformation: реализует интерфейс к общим сведениям о Компании.
FillInformation() – считывание информации из БД посредством SQL–запросов и отображение ее пользователю – количество сотрудников/подразделений, учебных курсов, обучений.
Класс frmProcess: реализует интерфейс доступа к планированию обучения сотрудника.
frmTProcess – экземпляр класса frmTrainingProcess – реализует интерфейс доступа к созданию/изменению кортежа таблицы «Обучения».
LoadTrainingBase() – процедура загрузки таблицы обучений из БД в программу.
UpdateProcess() – обновление в БД записи об обучениях.
AddNewProcess() – добавление в БД записи о новом обучении.
RemoveProcess() – удаление из БД записи об обучении.
Класс frmTraining: класс реализует интерфейс доступа к таблице «Учебные курсы» БД ИС.
frmCourseAddEdit – экземпляр класса frmTrainingProcess – реализует интерфейс доступа к созданию/изменению кортежа таблицы «Обучения».
LoadCoursesBase() – процедура загрузки таблицы учебных курсов из БД в программу.
UpdateCourse () – обновление в БД записи об учебном курсе.
AddNewCourse () – добавление в БД записи о новом учебном курсе.
RemoveCourse () – удаление из БД записи об учебном курсе.
Класс frmDepartments: реализует интерфейс для ведения таблицы «Подразделения» БД ИС.
LoadDepartamentsBase() – процедура загрузки таблицы подразделений из БД в программу.
ChangeDepartamentBase() – обновление в БД записи о подразделении.
AddDepartament() – добавление в БД записи о новом подразделении.
RemoveDepartament() – удаление из БД записи о подразделении.
Класс frmAbout: реализует доступ к метаданным ПО – окно «О программе».
Класс frmEmployee: реализует интерфейс доступа к созданию/изменению кортежа таблицы «Сотрудники».