Известия Кабардино-Балкарского научного центра РАН № 6(110) 2022
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ И ТЕЛЕКОММУНИКАЦИИ
УДК 519.7 Научная статья
DOI: 10.35330/1991-6639-2022-6-110-39-47
Технология разработки клиентского приложения для информационной системы электронного кампуса под iOS-устройства
З. М. Альбекова, А. Д. Свидницкий, М. М. Лазарева, С. А. Богатырев, А. В. Калюкарин, О. И. Маслова
Институт цифрового развития, Северо-Кавказский федеральный университет 350029, Россия, г. Ставрополь, пр-т Кулакова, 2
Аннотация. В данной работе описаны особенности разработки клиентского приложения для информационной системы электронного кампуса «СКФУ» под устройства, использующие операционную систему iOS. Проведен анализ аналогов, в результате которого выявлены основные недостатки схожих систем, и на его основании предложена технология разработки клиентского приложения для электронного кампуса.
Ключевые слова: iOS-разработка, клиентское мобильное приложение, нативная работка, User Interface, операционная система, User eXperience, HyperText Transfer Protocol Secure, объектно-ориентированное программирование, прототип
Поступила 29.11.2022, одобрена после рецензирования 07.12.2022, принята к публикации 14.12.2022
Для цитирования. Альбекова З. М., Свидницкий А. Д., Лазарева М. М., Богатырев С. А., Калюкарин А. В., Маслова О. И. Технология разработки клиентского приложения для информационной системы электронного кампуса под iOS-устройства // Известия Кабардино-Балкарского научного центра РАН. 2022. № 6(110). С. 39-47. DOI: 10.35330/1991-6639-2022-6-110-39-47
MSC 68T42 Original article
Technology of developing a client application for e-campus information
system using iOS-devices
Z.M. Albekova, A.D. Svidnitskiy, M.M. Lazareva, S.A. Bogatyrev, A.V. Kalukarin, O.I. Maslova
Institute of Digital Development, North Caucasian Federal University 350029, Russia, Stavropol, 2 Kulakov avenue
Abstract. This paper describes the features of developing a client application for the NCFU electronic campus information system for devices using the iOS operating system. An analysis of analogues was carried out, as a result of which the main shortcomings of similar systems were identified, and on the basis of which a technology for developing a client application for an electronic campus was proposed.
Keywords: iOS-development, mobile client application, native work, User Interface, operating system, User eXperience, HyperText Transfer Protocol Secure, Object-oriented programing, prototyping
Submitted 29.11.2022, approved after reviewing 07.12.2022, accepted for publication 14.12.2022
For citation. Albekova Z.M., Svidnitskiy A.D., Lazareva M.M., Bogatyrev S.A., Kalukarin A.V., Maslova O.I. Technology of developing a client application for e-campus information system using iOS-devices. News of the Kabardino-Balkarian Scientific Center of RAS. 2022. No. 6(110). Pp. 39-47. DOI: 10.35330/1991-6639-2022-6-110-39-47
© Альбекова З. М., Свидницкий А. Д., Лазарева М. М. и др., 2022
Введение
В современном мире одним из важнейших показателей является скорость доступа к различным информационным ресурсам, в частности к веб-ресурсам; появляются новые решения, разрабатываются новые системы и способы взаимодействия с ними в области цифрового образования. Одним из таких решений является клиентское мобильное приложение для информационной системы электронного кампуса «СКФУ», позволяющее сократить время доступа к базе данных системы университета, своевременно обновлять сведения, информировать студентов и преподавателей о вносящихся в ходе обучения изменениях и т.д. Подобные аспекты должны положительно сказаться на учебном процессе и на всех его составляющих: выставлении оценок, проверке посещаемости, удобном просмотре расписания, доступе к объявлениям и изменениям в учебном процессе, к университетской библиотеке и пр.
В рамках данной работы предложена технология разработки клиентского приложения для электронного кампуса «СКФУ» под мобильные устройства, использующие операционную систему iOS, на основе проведенного сравнительного анализа нативных подходов к разработке мобильных приложений, в ходе которого были определены преимущества и недостатки каждого из них [1, а 114].
Анализ аналогичных приложений
У многих образовательных учреждений уже есть свое веб-приложение или веб-сайт для отслеживания учебной деятельности как со стороны учеников, так и со стороны преподавателей. Тем не менее разработки аналогичных продуктов не прекращаются. Это происходит из-за спроса, который порождает предложения, который в свою очередь возникает из-за присутствия значительных недостатков в уже существующих системах.
На данный момент Северо-Кавказский федеральный университет на официальном уровне имеет лишь веб-сайт и электронный кампус, представленный также в виде веб-ресурса. В качестве аналогичных решений, сильные и слабые стороны которых можно проанализировать, были определены некоторые приложения образовательных учреждений, признанные официально. Все рассматриваемые аналоги имеют ряд недостатков, которые отражены в таблице 1.
Таблица 1. Недостатки аналогичных систем Table 1. Disadvantages of similar systems
Информационная система Недостатки
Информационный портал ecampus.ncfu.ru Длительная загрузка при переключении между семестрами. Необходимость постоянного обновления страницы после каждой загрузки лабораторной работы.
Приложение СтГАУ Возникают проблемы с авторизацией. Плохо развитый интерфейс. Периодически появляются ошибки, ведущие к сворачиванию приложения.
Приложение ЛКС МИРЭА Частые ошибки приложения при поиске расписания через фамилию преподавателя. Устаревший интерфейс. Некорректное обновление расписания, а также его отсутствие для многих групп.
Приложение МГИМО Отсутствие регулярной поддержки работоспособности приложения. Возникают трудности с получением доступа к ключевой функции -расписанию, которые заключаются в регулярных ошибках приложения, ведущих к его закрытию, а также в отсутствии возможности снятия отметки «избранное расписание», которое исправляется исключительно полной переустановкой приложения.
Преимущества разработанного клиентского приложения для электронного кампуса «СКФУ» под устройства, работающие на платформе iOS, перед другими аналогичными решениями заключаются в следующем: приложение имеет обширный функционал, доступ ко всем возможностям университетского кампуса, а именно: просмотр расписания предметов, учебного рейтинга, зачетной книжки, электронного пропуска. Также разработанное приложение имеет прямой доступ ко всем сервисам электронного кампуса: сброс пароля от университетского Wi-Fi, сброс пароля от образовательного портала, оплата финансовых задолженностей, карта корпусов, подача заявления для перевода/ восстановления, погашение задолженностей и другие. Для абитуриентов есть возможность подачи заявления онлайн. Ко всему прочему рассматриваемое приложение является официально признанным, не имеет рекламы, имеет удобный интерфейс. Данное приложение постоянно поддерживается и обновляется для исправления ошибок.
Создание прототипа приложения
Прототип - это концепт, прообраз окончательного приложения, в котором определен дизайн приложения, интерфейс каждого экрана и функционал каждого объекта. Попытки начать создание проекта без предварительно созданного прототипа приводят к потере большого количества времени в связи с отсутствием плана действия, что приводит к внесению значительных правок по ходу работы или даже в уже созданные части разработки. В настоящее время существует множество известных способов создания концепта приложения, начиная от простого рисунка и описания на бумаге, заканчивая специальными инструментами на компьютерных устройствах1. Для создания макетов интерфейса разработки в частности были использованы следующие графические редакторы, сервисы: «Figma», «Sketch» и «Adobe XD» [6, c. 389].
Figma - это графический онлайн-редактор для совместной работы: в нем можно создать прототип сайта, интерфейс приложения и обсуждать правки с коллегами в реальном времени.
Sketch - векторный графический редактор для macOS, который используется для проектирования интерфейсов мобильных приложений и веб-сайтов. Поддерживает возможность создания интерактивных прототипов [4, c. 416].
Adobe Experience Design - программа для разработки интерфейсов от Adobe Systems. Поддерживает векторную графику и веб-верстку и создает небольшие активные прототипы.
Для создания прототипа интерфейса сначала необходимо определить количество экранов в приложении в соответствии с основными принципами UI/UX-дизайна [1, c. 98]. Для клиентского приложения электронного кампуса «СКФУ» главным образом были определены несколько основных блоков, влияющих на интерфейс и его инструменты, среди которых: «Абитуриенты», «Студенты» и «Сотрудники».
В блоке «Абитуриенты» представлены следующие экраны: просмотр заявлений на поступление в университет, результаты экзаменов или вступительных испытаний, просмотр профиля и достижений.
В блоке «Студенты» представлены вкладки: профиль, позволяющий просматривать статистику посещаемости, оценок, контрольных точек, задолженностей, просмотр расписания, просмотр предметов дисциплин.
В блоке «Сотрудники» - экраны журналов, просмотр расписания и уведомлений.
Выбор языка программирования и особенности разработки приложения
на устройствах iOS
Для разработки рассматриваемого клиентского приложения были выбраны два языка программирования - Objective-C и Swift [5].
1 How to Design UI for Cross Platform Devices [Электронный ресурс]. URL: https:// medium.com/hitech-nudge-rewards/how-to-design-ui-for-cross-platform-devices-5809e008935d (Дата обращения 04.11.2022).
Swift - это открытый мультипарадигмальный компилируемый язык программирования общего назначения, разработанный и поддерживаемый известной компанией «Apple» [3, c. 86]. Язык программирования Swift интегрирован с языком программирования Objective-C - этот язык программирования имеет определенные преимущества перед последним: по заявлениям компании «Apple», Swift быстрее в 2,5 раза, чем Objective-C, и в 8,5 раза быстрее другого языка программирования - Python. Однако он также имеет свои недостатки: Swift был представлен миру лишь в 2014 году, что делает его довольно молодым языком программирования, в связи с чем работа над его оптимизацией продолжается и по сей день. Помимо этого, в Swift все еще довольно мало встроенных функций, которые работали бы одинаково хорошо во всех версиях - большинство библиотек и фреймворков были разработаны для более ранних версий языка и совершенно бесполезны в новых [2, с. 76].
Objective-C представляет собой компилируемый объектно-ориентированный язык программирования, также используемый корпорацией «Apple»; он построен на основе языка С и парадигм Smalltalk. В частности, объектная модель построена в стиле Smalltalk, то есть объектам посылаются сообщения. Язык Objective-C является надмножеством языка С, поэтому С-код полностью понятен компилятору Objective-C [7, c. 155]. Этот язык программирования является практичным, так как доступен на всех фреймворках начиная с 2000-х годов и на всех версиях операционной системы. К значительным недостаткам этого языка программирования можно отнести тот факт, что его скорость работы существенно ниже, чем у других языков, а также то, что он имеет довольно низкую читабельность кода,
2 3
что затрудняет его изучение новичками2 3.
Для разработки клиентского приложения электронного кампуса «СКФУ» за основу выбран ранее упомянутый язык программирования Swift; были использованы следующие его возможности:
- построение дизайна ко всем функциям;
- вычисления данных для показа всего контента;
- логические построения данных;
- запись и вывод информации из базы данных.
В процессе разработки клиентского приложения необходимо сохранять все его версии, чтобы в случае появления необъяснимой ошибки была возможность осуществить откат на предыдущую версию. Для хранения всех версий в связи с его удобством используется сервис совместной разработки GitHub - его возможности позволяют работать над кодом проекта неограниченному числу программистов из любых точек мира. В GitHub также есть система контроля версий Git: сервис позволяет просматривать и контролировать любые изменения кода любым разработчиком и возвращаться к состоянию до изменений4.
Одной из важнейших частей разработки любого приложения является этап тестирования. В интегрированной среде разработки Xcode имеются виртуальные машины для всех операционных систем: iOS, macOS, watchOS и tvOS - они позволяют запускать собственное приложение5. Во время тестирования имеется возможность подключить не более 10000 пользователей, при этом они могут помочь разработчику выявлять и исправлять недочеты в программном коде.
При запуске разработки даже на этапе тестирования отображается заранее обдуманный и созданный изначально в виде макета интерфейс приложения, что также помогает определить его качество и удобство на основе чужого пользовательского опыта (рис. 1).
2 Xcode 12 [Электронный ресурс]. URL: https://developer.apple.com/xcode/ (Дата обращения 04.11.2022).
3 Swift - Apple [Электронный ресурс]. URL: https://www.apple.com/ru/swift/ (Дата обращения 04.11.2022).
4 Human Interface Guidelines [Электронный ресурс]. URL: https://developer.apple.com/design/human-interface-guidelines/ (Дата обращения 04.11.2022).
5 Cross-platform app design: 3 ways to build React Native UI/UX [Электронный ресурс]. URL: https://www.purrweb.com/blog/cross-platform-design/ (Дата обращения 04.11.2022).
Рис. 1. Интерфейс приложения; блоки: «Начальный экран», «Студенты», «Абитуриенты», «Сотрудники»
Fig. 1. Application interface; blocks: "Home screen", "Students", "Applicants", "Employees"
Релиз приложения
Публикация клиентского мобильного приложения для электронного кампуса «СКФУ» осуществляется на платформе магазина приложений для iOS-устройств «AppStore». Выход приложения был запланирован на 16 июля 2022 года. За время, прошедшее с момента публикации разработки, были получены аналитические данные по загрузке приложения, отображающие его популярность и дальнейшие тенденции его использования; при установке приложения пользователем впервые составлялся отчет ошибок и способов их решения.
Разрабатываемое клиентское приложение изначально было выпущено в демоверсии на короткий срок - для возможности оценки динамики его установки, выстраивания общего рейтинга, корректировки визуальной составляющей, а также для устранения программных ошибок, выявленных в ходе тестирования на основе отзывов. На рисунке 2 представлен график, показывающий количество показов в App Store.
ПОКАЗЫ '
21,3 тыс. .
4 тыс.
Июнь 6 Июнь 13 Июч. 20 Июнь 27 Июль 4 Июль tl Июль IS Июль 26 Aar 1 Авг 8 Aw 16 АW 22 Аи 29 5 Свит 12 Свнт 19 Свнт 26 От 3 Окт 10 Chn 17 Огт 24 От 31 НояИАб 14
Рис. 2. Количество показов в период с 01.05.2022 по 14.11.2022 Fig. 2. Number of impressions in the period from 05/01/2022 to 11/14/2022
Для определения целесообразности выпуска приложения необходимо провести оценку объема рынка в год. На графике, приведенном на рисунке 3, представлена примерная диаграмма расчета количества установок за год.
Рис. 3. Графическое представление объема рынка Fig. 3. Graphical representation of market volume
Во время запуска приложения в тестовом режиме было проведено исследование следующих показателей: количество просмотров страницы продукта, коэффициент конверсии, количество сеансов на одно активное устройство, сбои и общее количество загрузок. На основе анализа данных всех показателей были сделаны выводы о востребованности приложения. Текущий анализ показал положительные результаты. Графики соответствующих показателей приведены на рисунке 4.
Рис. 4. Статистические графики Fig. 4. Statistical Graphs
На основании представленных ниже показателей был сделан вывод, что созданное клиентское приложение для информационной системы электронного кампуса «СКФУ» действительно пользуется определенной популярностью у пользователей и как следствие способствует применению и развитию новых технологий как со стороны самого веб-сайта, так и со стороны будущих реализаций на других платформах (табл. 2).
Таблица 2. Статистика показателя мобильного приложения «СКФУ» в период с 01.05.2022 по 14.11.2022
Table 2. Statistics of the indicator of the NCFU mobile application in the period from 05/01/2022 to 11/14/2022
Показатели Периоды Результаты (14.11.2022)
05.2022 06.2022 07.2022 08.2022 09.2022 10.2022
Показы 64 28 397 4136 8069 5186 20420
\ / / / \ (2293 \)
Просмотры страниц продукта 10 2 \ 170 / 1680 / 1722 / 1212 \ 5343 (547 \)
Коэффициент 0% 4,76% 54,09% 77,25% 45,03% 31,77% 41,48%
конверсии / / / \ \ (21,7% \)
Первые загрузки 0 1 / 91 / 1439 / 1776 / 530 \ 3955 (158 \)
Все загрузки 0 1 / 93 / 1568 / 2121 / 859 \ 4940 (298 \)
Сеансы на одно активное устройство 0 0 4,32 17,14 100,86 90,02 5,56
/ / / \ (4,74 \)
Сбои 0 0 10 438 2714 728 4035
/ / / \ (145 \)
Заключение
Таким образом, были изложены основные особенности технологии, применяемой для разработки клиентского мобильного приложения для устройств на базе iOS; проведен анализ приложения, созданного для информационной системы электронного кампуса «СКФУ», написанного на языке программирования Swift. Рассматриваемая разработка способствует автоматизации и цифровизации учебных и технических процессов, а также обеспечивает повышенную скорость обращения к базе данных системы, что положительно сказывается на ходе обучения в целом. Подводя итог, можно сказать, что данное мобильное клиентское приложение имеет следующие достоинства и функционал в целом, достигнутые благодаря применению приведенной технологии и передовых подходов к разработке:
- высокая скорость работы приложения в целом;
- высокая скорость обращения к базе данных информационной системы университета;
- обеспечение частичной разгрузки веб-серверов университета;
- отсутствие встроенной рекламы, затрудняющей восприятие пользователей;
- возможность просматривать статистику обучающихся (средний балл и посещаемость, контрольные точки, зачетную книжку, задолженности);
- возможность выставлять оценки и посещаемость для студентов;
- возможность просмотра расписания.
В будущем также планируется последовательное расширение функционала приложения, что позволит сделать его еще более удобным, востребованным и полезным в процессе образования.
СПИСОК ЛИТЕРАТУРЫ
1. Усов В. Swift. Основы разработки приложений под iOS, iPadOS и macOS. 6-е изд., дополненное и переработанное. СПб.: Питер, 2021. 544 с.
2. Брендан Тирни, Джон Келлехер. Наука о данных: базовый курс. Москва: Альпина Паблишер, 2020. 222 с.
3. Бушев Ю. В. Интеграция платформы Node.js в мобильное приложение iOS // Технические науки в России и за рубежом: материалы VII международной научной конференции. Москва, 2017.
4. Марк Д., Наттинг Дж., Олссон Ф.Т. Разработка приложений в среде Xcode для iPhone и iPad с использованием iOS SDK. Москва: И.Д. Вильямс, 2015. 816 с.
5. Гниденко И. Г., Павлов Ф. Ф., Федоров Д. Ю. Технология разработки программного обеспечения: учеб. пособие для СПО. Москва: Юрайт, 2017. 235 с.
6. Горвиц Ю. М. IDUP - опыт и перспективы обучения студентов разработке мобильных приложений для iOS // Новые информационные технологии в образовании: материалы IX международной научно-практической конференции, 15-18 марта 2016 г., Екатеринбург. С.389-390.
7. Кутлуев Т. В., Васильев В. И. Разработка программного средства защиты информации в операционной системе APPLE iOS // Информационные технологии и системы: труды VI международной научной конференции. Челябинск, 2017. С. 155-156.
Информация об авторах
Альбекова Замира Мухамедалиевна, канд. пед. наук, доцент кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0002-7214-8114
Свидницкий Алексей Дмитриевич, магистр кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0002-4075-2341
Лазарева Мария Максимовна, магистр кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0003-3429-2235
Богатырев Святослав Александрович, магистр кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0003-1899-5635
Калюкарин Алексей Викторович, магистр кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0001-8385-7162
Маслова Оксана Игоревна, ассистент кафедры информационных систем и технологий, Институт цифрового развития, Северо-Кавказский федеральный университет;
350029, Россия, г. Ставрополь, пр-т Кулакова, 2;
[email protected]; ORCID: https://orcid.org/0000-0002-9972-5735
REFERENCES
1. Usov V. Swift. Osnovy razrabotki prilozheniy pod iOS, iPadOS i macOS [Fundamentals of application development for iOS, iPadOS and macOS]. Sbp: Piter, 2021. 544 p. (In Russian)
2. Brendan Tierney, John Kelleher. Nauka o dannykh: Bazovyy kurs [Data Science: Basic Course]. Moscow: Alpina Pablisher, 2020. 222 p.
3. Bushev Yu.V. Integration of the Node.js platform into the iOS mobile application. Tekhnicheskie nauki vRossii izarubezhom [Engineering sciences in Russia and abroad]: materialy VII mezhdunarodnoj nauchnoj konferencii. Moscow, 2017. (In Russian)
4. Mark D., Nutting J., Olsson F.T. Developing Xcode apps for iPhone and iPad using iOS SDK Swift 3. Developing Xcode apps for iPhone and iPad using iOS SDK. Moscow: Williams, 2015. 816 p. (In Russian)
5. Gnidenko I.G., Pavlov F.F., Fedorov D.Yu. Tekhnologiya razrabotki programmnogo obespecheniya [Technology of software development]: textbook. Moscow: Yurayt, 2017. 235 p. (In Russian)
6. Gorvits Yu.M. IDUP - experience and prospects for teaching students to develop mobile applications for IOS. Novye informacionnye tekhnologii v obrazovanii [New information technologies in education]: materialy IX mezhdunarodnoj nauchno-prakticheskoj konferencii. Yekaterinburg, 15-18 March, 2016. Pp. 389-390. (In Russian)
7. Kutluev T.V., Vasiliev V.I. Development of a software tool for protecting information in the APPLE IOS operating system. Informacionnye tekhnologii i sistemy [Information technology and systems]: trudy VI mezhdunarodnoj nauchnoj konferencii. Chelyabinsk, 2017. Pp. 155-156. (In Russian)
Information about the authors
Albekova Zamira Mukhamedalievna, Candidate of Pedagogical Sciences, Associate Professor, Department of Information Systems and Technologies, Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected], ORCID: https://orcid.org/0000-0002-7214-8114
Svidnitsky Aleksey Dmitrievich, Master of the Department of Information Systems and Technologies of the Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected], ORCID: https://orcid.org/0000-0002-4075-2341
Lazareva Maria Maksimovna, Master of the Department of Information Systems and Technologies of the Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected], ORCID: https://orcid.org/0000-0003-3429-2235
Bogatyrev Svyatoslav Aleksandrovich, Master of the Department of Information Systems and Technologies of the Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected], ORCID: https://orcid.org/0000-0003-1899-5635
Kalyukarin Aleksey Viktorovich, Master of the Department of Information Systems and Technologies of the Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected], ORCID: https://orcid.org/0000-0001-8385-7162
Maslova Oksana Igorevna, Assistant of the Department of Information Systems and Technologies of the Institute of Digital Development, North Caucasus Federal University;
350029, Russia, Stavropol, 2 Kulakov avenue;
[email protected]; ORCID: https://orcid.org/0000-0002-9972-5735