УДК 004.416
РАЗРАБОТКА WEB-ПРИЛОЖЕНИЯ
ДЛЯ ОПТИМИЗАЦИИ ОРГАНИЗАЦИОННЫХ ЗАДАЧ
НА ЯЗЫКЕ ПРОГРАММИРОВАНИЯ C# ASP.NETCORE
Владислав Владимирович Родионов
Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, обучающийся, тел. (901)450-83-09, e-mail: rodionov-vv2017@sgugit.ru
Евгений Юрьевич Воронкин
Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, старший преподаватель кафедры прикладной информатики и информационных систем, тел. (923)127-58-86, e-mail: Evgeney.voron@gmail.com
В статье представлены этапы разработки веб-приложения для оптимизации работы компании «ОАО Геостар». Показан этап формирования алгоритма работы приложения, составлена концептуальная схема. Показан результат разработки визуальной части приложения. Определены функциональные части приложения. Произведен этап тестирования.
Ключевые слова: C#, ASP.NET, Web-application, n-layerarchitecture, Rider, .NET
DEVELOPMENT OF A WEB-BASED APPLICATION FOR OPTIMIZATION OF ORGANIZATIONAL TASKS IN PROGRAM LANGUAGE C# ASP.NETCORE
Vladislav V. Rodionov
Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (913)759-91-05, e-mail: Mamaev-DS2017@sgugit.ru
Evgeny Y. Voronkin
Siberian State University of Geosystems and Technologies, 10, Plahotnogo St., Novosibirsk, 630108, Russia, Assistant, Department of Applied Informatics and Information Systems, phone: (923)127-58-86, e-mail: Evgeney.voron@gmail.com
This article presents the stages development of a web-based application to optimize the work of OJSC Geostar. The stage of forming the algorithm of the application operation is shown, a conceptual diagram is compiled. The result of developing the visual part of the application is shown. The functional parts of the application are defined. The test phase was completed.
Keywords: C#, ASP.NET, Web-application, n-layerarchitecture, Rider, .NET
Актуальность данной работы заключается в том, что многие компании в различных сферах, пытаются оптимизировать человеческие ресурсы, время работы и проверки тех или иных заданий, повышении скорости обработки данных, и самое ключевое в способности всех сотрудников выполнять свою работу удаленно, особенно в наше непростое и весьма сумбурное время в период пандемии.
Данная работа особенно актуальна для геодезических компаний и институтов. Ведь эта сфера незаслуженно обошли стороной разработчики многих приложений.
Целью работы, как было представлено выше, является разработка приложения GeoCab, помогающая в такой узкой сфере как геодезия. В настоящее время существует огромное количество сайтов и приложений для оптимизации работы в различных сферах и нишах. Будь то фриланс, сфера доставки, красоты и т. д. Но приложения, помогающего геодезическим компаниям оптимизировать работу, «разложить всё по полочкам», стимулирующих людей работать, развиваться, тем самым повышая свой статус, лояльность и конечно финансовую часть, думаю не много, честно скажу, считаю, что таких еще нет и данное приложение будет пионером в этой области.
В приложении GeoCab работодатель выставляет работу, которую должен выполнить тот или иной сотрудник компании в обязательном порядке, а также дополнительную работу, которую может взять любой сотрудник компании, естественно за дополнительную оплату, в тот момент, когда сотрудник принимает проект, рядом сразу отображается значок, что проект в процессе выполнения. Для менеджера помимо данного значка так же виден и сотрудник, который это выполняет. Таким образом увеличивается объём выполненной работы за счет стимулирования дополнительной оплаты, а также появляется возможность держать все проекты разложенными по полочкам каждая со своим статус Выполнено, в разработке, что является отличным подспорьем менеджерам, и директорам компании в ведении документации. Помогает избегать просрочки дедлай-нов, срока сдачи работы.
В данное приложение можно войти с любого браузера, а также с любого устройства и что самое важное на сегодняшний момент из любой точки мира.
Для достижения поставленной цели решены следующие задачи:
- сформировать алгоритм работы приложения и написать программный код;
- разработать интерфейс приложения;
- реализовать функциональную часть приложения;
- выполнить сборку проекта в исполняемый файл и провести тестирование.
В качестве среды разработки приложения была выбрана программа Rider.
Rider — это кросс-платформенная IDE для .NET-разработчиков, основанная на платформе IntelliJ и ReSharper. Помимо умения запускать и отлаживать разные приложения в разных операционных системах, Rider сам по себе тоже поддерживает кроссплатформенность и работает на Windows, macOS и Linux В качестве языка разработки выбран язык программирования C#. C# Sharp это объектно-ориентированный язык программирования Переняв многое от своих предшественников — языков C++, Delphi, Модула, Smalltalk и, в особенности, Java — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественная реализация интерфейсов).
Для начала разработки приложения необходимо было определиться с алгоритмом работы приложения.
При запуске приложения пользователь должен войти в аккаунт или зарегистрироваться, на сайте работает аутентификация и авторизация, которая автома-
тически определяет какие права имеет пользователь. Обычный пользователь имеет право только создать заявку на работу, Работник может принять работу и просмотреть список работ, которые можно выполнить, Администратор компании распределяет роли, может создавать новые и выставляет дополнительные проекты на выбор, а сотрудники в свою очередь принимают работы и тем самым появляется плашка, показывающая работу в процессе, либо выполненной.
Следующий этап разработки - создание визуальной части приложения. Для приложения был выбран строгий стиль дизайна. Интерфейс программы представлен на рис. 1. Интерфейс включает несколько вкладок: логин, регистрация главная, инструменты, Панель администратора (если человек зашел под логином администратора).
Для того что бы использовать функционал приложения, вам необходимо войти в систему или
Рис. 1. Окно входа
На главной странице отображается простая информация в виде имени пользователя, и предложение о создании работы, в случае если человек не авторизован - ему предложат войти или зарегистрироваться (рис. 2).
Пароль должен иметь длину минимум 8 символов, содержать хотя бы одну заглавную букву,
Рис. 2. Интерфейс регистрации и валидации
На вкладке «проекты» можно создать заявку если простой пользователь и принять ее если работник. Присутствует так же «Панель администратора» где можно менять роли, добавлять новые инструменты, следить за выполнением работ. Для большей безопасности пароль шифруется «Функцией формирования ключа» в случае, если наша база данных уйдет в сеть, злоумышленник все равно не сможет подобрать пароль (рис. 3).
К функциональной части приложения относится:
- шифрование пароля для большей безопасности БД;
- проектирование трехслойной архитектуры;
- проектирование визуальных моделей;
- создание репозиториев под каждую сущность;
- создание моделей БД.
¡15 Id i ¡1 Username : J1 Email î ¡1 Password s
1 1 Rankhu vladislav.rankhu@gmail.com AJu0wxPkNGpK4v6t jy0al5ldJwzdBj9YGH5zB7emIoT...
2 2 Vladislav vlad@mail.ru AAiikEwjiJaGy96Rr9qlqXC2JpKIKW+lsKlFpNEksrS...
3 3 vuradisuravu v@mail.ru AJWLvPYnKIkEAPlKPv/XtigheBLaqWm4P0;jlmi9zwGc...
10002 HollyRoller kek@mail.ru AHgEHBuEpPEQJwxpg3ZoxadIPbrNdU7ybFXvaXR+92G...
5 20002 Vlodik lolkek@mail.ru AJ8In3mpIHrn83SI5tSmnIvdFGXjnLFntlZobiNnnWT...
6 30002 Worker lol.kek@gmail.com AGSn2qAIC+3USdp2S3r5911wqQCe/wR59aE81ASyt6j...
Рис. 3. Пример зашифрованного пароля
Следующий этап разработки - это тестирование. Работает через SWAGGER и Postman. Тестирование приложения один из важных этапов разработки, именно на данном этапе можно выявить основные проблемы и технические неполадки. Первое что нужно проверить - это корректность получения данных. Юнит тест В результате выполнения проекта были решены следующие задачи:
- сформирован алгоритм работы приложения;
- создан интерфейс приложения;
- реализованы функциональные части приложения;
- выполнена сборка проекта в исполняемый файл, реализовано тестирование. Разработано приложение, которое дает возможность человеку не звонить
менеджерам, а просто оставить заявку на сайте и после выполнения задачи оплатить ее. Так же упрощает работу геодезистам, которые в перспективе смогу сами выбирать работу себе из списка, а также возможность создать площадку аутсорс в случае, если задач много, а люди в штате уже заняты.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Фленов М. Е. Библия C#. - Санкт-Петербург : БХВ, 2020. - 512 с.
2. Тепляков С. Паттерны проектирования на платформе.КЕТ. - Санкт-Петербург : Питер, 2018. - 320 с.
3. Мартин Р. Чистая архитектура. Искусство разработки программного обеспечения. -Санкт-Петербург : Питер, 2018. - 352 с.
4. Рихтер. Д. CLR via C# Программирование на платформе Microsoft .Net Framework 4.5. -Москва : Пресс, 2013. - 893 c.
© В. В. Родионов, Е. Ю. Воронкин, 2021