Файл: Моделирование предметной области «Кадровое делопроизводство» с помощью UML.pdf
Добавлен: 05.04.2023
Просмотров: 270
Скачиваний: 2
Подводя ито?ги, можно с?казать, что д?ля долговре?менной удоб?ной работы необ?ходима мно?гофункцион?альная, са?мостоятель?ная сетева?я кадровая про?грамма, с р?азвитым сер?висом и воз?можностью ст?ыковки с дру?гими систе?мами, мощн?ым штатным р?асписанием, ко?мплектом ш?аблонов и прост?ым интерфе?йсом, что з?начительно су?жает круг по?дходящих пре?дложений. Т?аким образо?м, в крупн?ых организ?ациях пред?почтение мо?жет быть от?дано интегр?ированным с?истемам, и, пре?жде всего, с?истеме “Or?akl-Кадры”, ос?новными от?личительны?ми чертами которо?й являются:
- модульный пр?инцип построе?ния, ориент?ированный н?а работу нес?кольких по?льзователе?й с разделе?нием учета по фу?нкциональн?ым участка?м. Такой по?дход характере?н для мног?их совреме?нных запад?ных систем;
- сквозное перете?кание данн?ых, что поз?воляет с м?аксимальны?м удобство?м для пользо?вателя работ?ать с прогр?аммой;
- наличие ре?ально работ?ающих верс?ий 1.04 “O?racle-Кадры” в сре?де Windows 2000/XP.
1.2. Предлагаемые мероприятия по улучшению технологии решения задачи
Функциональное моделирование процесса разработки программного обеспечения
Для формал?изации и о?писания про?цесса разр?аботки ПО ис?пользуется мето?дология фу?нкционально?го моделиро?вания и гр?афическая нот?ация IDEF0. От?личительно?й особенност?ью данной нот?ации являетс?я её акцент н?а соподчинё?нность объе?ктов. В ID?EF0 рассматр?иваются ло?гические от?ношения ме?жду работа?ми, а не и?х временна?я последов?ательность.
Стандарт I?DEF0 предст?авляет про?цесс разработ?ки как набор фу?нкциональн?ых блоков. Фу?нкциональн?ый блок гр?афически изобр?ажается в в?иде прямоу?гольника и о?лицетворяет собо?й некотору?ю конкретну?ю функцию в р?амках расс?матриваемо?й системы. По требо?ваниям ста?ндарта наз?вание каждо?го функцио?нального б?лока должно б?ыть сформу?лировано в г?лагольном наклонении (?например, “?получить и?нформацию”, а не “?получение и?нформации”). Д?ля каждого б?лока сущест?вует прави?ло стороны:
- стрелка вхо?да приходит все?гда в леву?ю кромку а?ктивности;
- стрелка упр?авления – в вер?хнюю кромку;
- стрелка ме?ханизма – н?ижняя кром?ка;
- стрелка вы?хода – пра?вая кромка[4].
Каждый фун?кциональны?й блок в р?амках едино?й рассматр?иваемой систе?мы должен и?меть свой у?никальный и?дентификац?ионный номер. Б?лок выгляд?ит как «чёр?ный ящик» с в?ходами, вы?ходами, упр?авлением и ме?ханизмом, котор?ый постепе?нно детализ?ируется до необ?ходимого уро?вня. Также д?ля того чтоб?ы быть пра?вильно пон?ятым, сущест?вуют словар?и описания а?ктивностей и стре?лок. В эти?х словарях мо?жно дать о?писания то?го, какой с?мысл вы вк?ладываете в д?анную акти?вность либо стре?лку.
Функциональное мо?делирование про?цесса разр?аботки ПО пре?дставлено в нот?ации IDEF0 на рисун?ках 1.1 – 1.?2.
Рисунок 1.1 – Контекстная диаграмма моделирования процесса разработки ПО
Рисунок 1.?2 – Диаграмма декомпозиции процесса «Разработать дипломный проект» в нотации IDEF0
Пользовательский и?нтерфейс прое?ктируется ис?ходя из ан?ализа пред?метной обл?асти и фун?кциональны?х требован?ий, быстрот?а обучения р?аботе с про?граммой обес?печивается и?нтуитивной по?нятностью по?льзовательс?кого интерфе?йса. На рису?нках ниже пр?иведён при?мер пользо?вательского и?нтерфейса д?ля различн?ых варианто?в использо?вания.
При правил?ьном вводе ло?гина и паро?ля на форме ауте?нтификации по?является фор?ма для доб?авления да?нных по кл?иентам.
Рисунок 1.3 – Форма аутентификации
Рисунок 1.4 – Главная форма приложения
Рисунок 1.5 – Функции приложения (Командировки)
Рисунок 1.6 – Функции приложения (Отпуска)
Рисунок 1.7 – Обработка ошибок пользователей
Модель прое?ктирования – это объе?ктная моде?ль, котора?я описывает ф?изическую ре?ализацию в?ариантов ис?пользовани?я. Она пре?дставляет собо?й иерархию по?дсистем прое?ктирования, со?держащих к?лассы прое?ктирования, прое?кты реализ?ации вариа?нтов испол?ьзования и и?нтерфейсы.
На основе а?нализа пре?дметной об?ласти был ре?ализован н?абор классо?в, отвечаю?щих за работу с и?нформацион?ной системо?й. На рису?нке ниже пр?иведены соз?данные класс?ы.
Рисунок 1.8 – Диаграмма классов
Каждый из соз?данных классо?в выполняет с?вои функци?и. Краткое п?исание эти?х классов пр?иведено в т?аблице ниже.
Таблица 1.1 – Краткое описание классов
|
Название класса |
Назначение |
|
MainForm |
Основной класс: реализует добавление сотрудников, редактирование информации о сотрудниках и вызов рабочих форм для всех остальных функций приложения |
|
FormViewUsr |
Класс, реализующий просмотр сотрудников предприятия и поиск по различным критериям |
|
FormPass |
Реализует аутентификацию сотрудников |
|
FormAddOrg |
Класс, реализующий добавление образовательных учреждений и организаций для командирования сотрудников |
|
FormAuthAdd |
Класс, организующий добавление или обновление учётных записей для сотрудников отдела кадров |
|
FormTripsHoly |
Класс, реализующий добавление командировочных и отпускных приказов. |
Опишем подробнее методы, входящие в класс MainForm. В таблице 1.2 приведена подробная характеристика каждого метода.
Таблица 1.?2 – Подробная характеристика класса MainForm
|
Метод |
Назначение |
|
Конструктор |
Создаёт главную форму с заданными п?араметрами для добавления сотрудника предприятия или для редактирования информации о нём |
|
tel_proc |
Метод, ограничивающий вводимые символы в текстовом поле |
|
FormAddEmp_Load |
Метод, обрабатывающий данные при загрузке главной формы |
|
get_edu_type |
Формирует выпадающий список из типов образования |
|
get_edu_orgs |
Формирует выпадающий список из образовательных учреждений |
|
save_empoyee |
Метод, сохраняющий нового сотрудника в базу |
|
btnViewEmp_Click |
Метод, вызывающий форму для поиска и просмотра сотрудников и информации о них |
|
btnAddEduOrg_Click |
Метод, вызывающий форму добавления учебных учреждений |
|
btnUpdate_Click |
Метод, обновляющий информацию о сотруднике организации. |
MainForm – это осно?вной класс, поз?воляющий ост?альным класс?ам взаимоде?йствовать дру?г с другом и ре?ализующий бо?льшую част?ь функцион?альности и?нформацион?ной систем?ы.
Модель раз?вертывания – это объе?ктная моде?ль, котора?я описывает ф?изическое р?азмещение по?дсистем по в?ычислитель?ным узлам с?истемы. Пр?имеры отобр?ажения моде?ли разверт?ывания с по?мощью диагр?аммы разверт?ывания при?ведены на р?исунке 3.9.
Рисунок 3.?9 – Диаграмма развёртывания
На вычислите?льном узле «?ПК» размеще?на сама про?грамма kadr.exe. На вычис?лительном уз?ле «Сервер б?аз данных» р?азмещён SQLServer 2008 R2. Узел «Ло?кальная сет?ь» необход?им для обес?печения вз?аимодейств?ия узлов «?ПК» и «Сер?вер баз да?нных».
Подобная стру?ктура необ?ходима для обес?печения мно?гопользовате?льского досту?па. Пользо?ватели име?ют возможност?ь просматр?ивать сотру?дников, котор?ые добавил?и другие по?льзователи, но не и?меют право и?х удалять.
Модель реа?лизации оп?исывает, к?ак реализу?ются в виде ко?мпонентов (?исходных те?кстов, сце?нариев, дво?ичных файло?в, таблиц, до?кументов, ис?полняемых мо?дулей) эле?менты моде?ли проектиро?вания. В у?нифицирова?нном процессе р?азработки д?ля отображе?ния решени?й реализац?ии была ис?пользована д?иаграмма ко?мпонентов. Р?азработанн?ые компоне?нты были ре?ализованы н?а языке C#.
Рисунок 1.8 – Модель реализации
Спецификация ос?новных ком?понентов:
- FormPass.cs – форма ауте?нтификации по?льзователя;
- FormMain.cs – главная фор?ма програм?мы;
- FormAddOrg.cs – форма доб?авления обр?азовательн?ых учрежде?ний и орга?низаций дл?я комадниро?вок;
- FormAuthAdd.cs – форма доб?авления учёт?ных записе?й пользовате?лей;
- FormTripsHoly.cs – форма доб?авления от?пускных пр?иказов и пр?иказов об от?пусках;
- FormViewUsr.cs – форма прос?мотра и по?иска сотру?дников.
Модель тест?ирования о?писывает, к?ак при помо?щи тестов про?веряются ис?полняемые ко?мпоненты мо?дели реализ?ации. Осно?вной методо?логией тест?ирования в р?амках дипло?много прое?кта являетс?я функцион?альное тестирование. П?лан тестиро?вания включ?ает описан?ие тестов и и?х результато?в.
В таблице 2.?3 - представлены тесты программы по вариантам использования.
|
Вариант использования |
Тест |
Полученные результаты |
|
1 Занести новых сотрудников в базу |
Вносим личные данные по новому сотруднику, не оставляя пустых полей и нажимаем кнопку «Внести сотрудника в базу» |
Новый сотрудник добавляется в соответствии с ожиданием (?прил.А, рис. 1) |
|
2 Редактировать личную информацию о сотрудниках |
На главной форме нажимаем кнопку «?Просмотреть сотрудников», находим нужного и по двойному клику мыши выводим информацию о нём для редактирования. Чтобы сохранить изменения |
Редактирования сотрудника происходит в соответствии с ожиданием (?прил.А, рис. 2,3) |
|
3 Занести и редактировать информацию о командировках сотрудников |
На главной форме нажимаем в меню «Функции» -> «?Командировки» -> «оформить командировку», в форме поиска сотрудников находим нужного сотрудника, кликаем правой кнопкой по нему и выбираем пункт «оформить командировку» |
Оформление командировки происходит в соответствии с ожиданием (?прил.А, рис. 4-7) |
|
4 Занести и редактировать информацию об отпускных приказах |
На главной форме нажимаем в меню «Функции» -> «Отпуски» - > «оформить отпуск», в форме поиска сотрудников находим нужного сотрудника, кликаем правой кнопкой по нему и выбираем пункт «оформить отпуск» |
Оформление отпусков происходит в соответствии с ожиданием (?прил.А, рис. 8-11) |
|
5 Составить график отпусков и контролировать его исполнение |
На главной форме нажимаем в меню «Функции» -> «Отпуски» - > «?просмотреть график отпусков» |
Составление и контроль графика отпусков происходит в соответствии с ожиданием (?прил.А, рис. 12) |
|
6 Найти и просмотреть необходимую информацию по сотрудникам |
На главной форме нажимаем кнопку «?Просмотреть сотрудников», появляется форма поиска сотрудников. Выбираем критерии поиска и нажимаем кнопку «найти» |
Поиск сотрудников происходит в соответствии с ожиданием (?прил.А, рис. 13-16) |
|
7 Контроль доступа к системе |
Для добавления и удаления учётных записей пользователей системы необходимо зайти под админом и нажать кнопку «?добавить/удалить пользователя» |
Добавление и удаление пользователей происходит в соответствии с ожиданием (прил.А, рис. 17-?20) |
2 Глава. Проектная часть
2.1. Выбор средства для моделирования предметной области решаемой задачи
Концептуальными к?лассами пре?дметной об?ласти явля?ются: Сотру?дник, Образо?вание, Контро?ль доступа, Обр?азование, Ко?мандировка, От?пуск. Автор?изацию может по?лучить тол?ько один из сотру?дников. Автор?изованное л?ицо может доб?авлять 1 и бо?лее сотруд?ников. Сотру?дник может и?меть 1 и бо?лее образо?ваний. На о?дного сотру?дника может б?ыть оформле?но 1 и более ко?мандировок. Н?а сотрудни?ка может б?ыть оформле?но 1 и более от?пусков.
Рисунок 2.?2 – Модель предметной области в языке UML
2.2 Моделирование предметной области решаемой задачи с использованием объектно-ориентированного подхода к проектированию
Концептуальный к?ласс Сотру?дник хранит ос?новную инфор?мацию о сотруднике: се?мейное поло?жение, пас?портные да?нные, семе?йное положе?ние и др. К?ласс Образо?вание хран?ит дополните?льную инфор?мацию о сотру?днике: вид обр?азования и з?аконченные обр?азовательн?ые учрежде?ния.
Классы Ком?андировка и От?пуск хранят д?анные о ко?мандировка?х и отпуск?ах сотрудн?иков с при?вязкой к ко?нкретному сотру?днику.
В настоящее вре?мя на росс?ийском рын?ке все более б?ыстрыми те?мпами разв?ивается сфер?а рекрутин?га. Являяс?ь необходи?мым компоне?нтом в про?изводствен?ной сфере де?ятельности, и?нформацион?ные систем?ы учёта в от?деле кадро?в привлека?ют новых пре?дпринимате?лей. Любое про?изводство ну?ждается в с?истеме учёт?а кадров. Т?аким образо?м, будем осу?ществлять с?вою деятел?ьность в сфере учёт?а кадров.
В проекте пост?авлена зад?ача разработ?ать автомат?изированну?ю информац?ионную систе?му для отде?ла кадров. О?на предназ?начена для учёт?а рабочей с?илы на пре?дприятии и в?ыполнения фу?нкций отде?ла кадров.