Добавил:
Только когда поступишь в технический вуз поймешь на сколько ты гуманитарий Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Готовое_КР_Калькулятор_индекса_массы_тела

.pdf
Скачиваний:
0
Добавлен:
07.06.2025
Размер:
1.59 Mб
Скачать

 

СОДЕРЖАНИЕ

 

СПИСОК СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ ......................................................

6

ВВЕДЕНИЕ..................................................................................................................

7

1 АНАЛИТИЧЕСКИЙ РАЗДЕЛ ................................................................................

9

1.1

Операционная система «Аврора» ........................................................................

9

1.1.1 Архитектура операционной системы.............................................................

14

1.2

Анализ существующих инструментов разработки ..........................................

18

1.2.1 Возможность использования Kotlin Multiplatform .......................................

19

1.2.2 Преимущества и недостатки Аврора SDK ....................................................

20

1.2.3 Преимущества и недостатки Flutter ...............................................................

22

1.3

Теоретические основы расчета индекс массы тела .........................................

27

2 ТЕХНИЧЕСКОЕ ЗАДАНИЕ.................................................................................

29

2.1

Назначение разработки.......................................................................................

29

2.1.1 Наименование приложение .............................................................................

29

2.1.2 Краткая характеристика области применения приложение ........................

29

2.2

Основание для разработки .................................................................................

29

2.3

Назначение разработки.......................................................................................

30

2.4

Требования, предъявляемые к приложению ....................................................

30

2.4.1 Требования к функциональным характеристикам программы ...................

30

2.4.2 Требования к техническим средствам, используемым при

работе

приложение ................................................................................................................

30

2.4.3 Требования к языкам программы и среде разработки приложение ...........

31

2.4.4 Требования к информационным структурам на входе и выходе приложение

.....................................................................................................................................

 

31

2.5

Требования к программной документации ......................................................

31

2.6

Этапы разработки ................................................................................................

32

3 ТЕХНИЧЕСКИЙ РАЗДЕЛ ....................................................................................

33

3.1

Реализация приложения .....................................................................................

33

3.1.1 Исходные данные .............................................................................................

33

4

3.1.2 Пользовательский интерфейс .........................................................................

35

3.2 Тестирование приложения .................................................................................

38

ЗАКЛЮЧЕНИЕ .........................................................................................................

43

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ...............................................

45

ПРИЛОЖЕНИЕ А .....................................................................................................

46

5

СПИСОК СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ

В настоящей курсовой работе применяются следующие сокращения и обозначения:

АСУ ТП – автоматизированная система управления технологическим процессом

ГИС – геоинформационная система ИС – информационная система

ИСПДн – информационная система персональных данных КИИ – критическая информационная инфраструктура ОС – операционная система ПО – программное обеспечение

API – Application Programming Interface

IDE – Integrated Development Environment

KMP – Kotlin Multiplatform

NFC – Near Field Communication

QML – Qt Modeling Language

SDK – Software Development Kit

6

ВВЕДЕНИЕ

На сегодняшний день существует большое количество операционных систем для настольных персональных компьютеров (Windows, Linux, macOS,FreeBSD и т.д.), мобильных устройств (Android, iOS, Salifish OS, «Аврора» и т.д.) и встраиваемых электронных устройств. И несмотря на то, что существуют инструменты, позволяющие разрабатывать программное обеспечение для большинства операционных систем из одного исходного кода, разработчики каждой операционной системы предоставляют собственные инструменты для разработки ПО конкретно под одну целевую операционную систему.

Аналогично приведенным выше примерам существует также ОС, разработанная российской организацией ООО «Открытая мобильная платформа» (ОМП) – «Аврора». Данная операционная система предоставляет свою среду разработки приложений – «Аврора SDK». До недавнего времени «Аврора» использовалась узким кругом потребителей и была не востребована относительно таких популярных мобильных ОС как Android и iOS.

Однако на основании указа президента РФ №166 от 30.03.2022 с 31 марта 2022 года государственные учреждения «не могут осуществлять закупки иностранного ПО, в том числе в составе программно-аппаратных комплексов», в связи с чем в данных учреждениях появляется потребность в разработке собственного ПО. А также в тексте ранее упомянутого указа отмечено, что начиная «с 1 января 2025 года органам государственной власти запрещается использовать иностранное ПО на принадлежащих им значимых объектах КИИ». ОС «Аврора» разработана и помимо собственного инструмента для разработки ПО также предоставляет собственный цифровой каталог приложений, который так же, как и сама операционная система, не зависит от иностранных организаций.

7

Совокупность этих фактов делает данную ОС подходящей платформой для использования внутри государственных учреждений (и не только) на территории РФ.

Однако на данный момент существует несколько различных инструментов для разработки приложений под ОС «Аврора» и работы, опубликованные в российском индексе научного цитирования, на момент написания курсовой работы не предоставляют полноценного сравнительного анализа всех этих инструментов.

Цель работы – разработка мобильного приложения калькулятор для расчета индекса массы тела под операционную систему «Аврора» в соответствии с требуемым функционалом. Для достижения этой цели были поставлены следующие задачи:

1.Провести анализ существующих инструментов для разработки ПО под ОС «Аврора» и определить среди них наиболее подходящий;

2.Спроектировать пользовательский интерфейс приложения в соответствии с принятыми стандартами целевой операционной системы;

3.Реализовать логику расчета массы тела по модифицированной формуле Кетле с учетом пола и индекса Соловьева;

4.Проведение ручного тестирования, разработанного приложение для обеспечения ее корректной работы.

Для написания исходного кода приложения использовались такие языки программирования, как C++, QML, JavaScript. Для разработки, отладки и тестирования приложения были использованы среда разработки «Аврора SDK»

и ПО для виртуализации Oracle VM VirtualBox.

Практическая ценность данной курсовой работы заключается в получение навыков разработки приложение с помощью отечественного инструментария, а

также освоение навыков работы с декларативным языком QML, навыки разработки приложение на C++, навыки программирование логики работы приложение на языке программирование JavaScript.

8

1 АНАЛИТИЧЕСКИЙ РАЗДЕЛ

1.1 Операционная система «Аврора»

«Аврора» – российская операционная система для мобильных устройств,

разработка которой ведётся с 2016 года. Данная ОС построена на базе Salifish OS

– мобильной операционной системы на базе ядра Linux, которая в свою очередь основывается на проекте с открытым исходным кодом MeeGo. Последней актуальной версия операционной системы «Аврора» на момент написания курсовой работы является версия 5.1.3. Однако для разработки приложения в рамках данной работы будет использоваться версия 5.1.2.

31 марта 2022 года ОС «Аврора» в соответствии с указом президента РФ получила шанс стать одной из основных операционных систем для использования в государственных учреждениях, которые согласно упомянутому указу больше не могут осуществлять закупки иностранного ПО. К тому же, в 2021 году операционная система получила заключение ФСБ о соответствии требованиям защиты информации, что позволяет использовать данную ОС и ПО,

разработанное для нее в любых информационных системах: ГИС, ИСПДн, АСУ ТП, КИИ и ИС в Высших органах государственной власти. Однако для государственных учреждений проблема заключается в том, что для ОС «Аврора» в сравнении с такими популярными мобильными операционными системами,

как Android и iOS, существует очень мало наработок и примеров в области разработки ПО. А также данная ОС не поддерживает запуск приложений,

разработанных для ОС Android или iOS, а вместо этого предоставляет совершенно иной способ разработки приложений в отличие от иностранных конкурентов, что означает появление необходимости в дополнительном освоении этого инструмента специалистами в этой области для разработки ПО.

Появление потребности в закупке мобильных устройств с ОС «Аврора» в

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

9

всей страны. Увеличение числа пользователей операционной системы ведет к тому, что процентное соотношение ее пользователей к пользователям конкурентных ОС будет постепенно увеличиваться. На сегодняшний день наибольшая часть рынка мобильных операционных систем (а именно порядка

76%) приходится на долю пользователей Android. Разработка новых операционных систем в условиях такой сильной доминации одного из конкурентов – нелегкая задача. Однако, несмотря на этот факт существует большое количество различных мобильных операционных систем. Развитие российской операционной системы «Аврора» продолжается уже несколько лет и постепенно число пользователей данной ОС только растет. Этому также может способствовать начало розничных продаж устройств с ОС «Аврора» для физических лиц, с момента которого было продано уже около 1000 единиц.

Все эти факторы ведут к тому, что интерес к разработке ПО для российской ОС появляется не только у государственных учреждений, но и у других организаций, которые уже распространяют свое программное обеспечение на территории РФ для устройств на основе Android и iOS и хотят получить новых пользователей в виде пользователей ОС «Аврора». Подкреплением вышесказанного является заявление о планах ОМП к 2030 году продать минимум

1,5 миллиона устройств с предустановленной операционной системой.

Фреймворк Qt, лежащий в основе ОС «Аврора» и позволяющий разрабатывать кроссплатформенные приложения для настольных и мобильных операционных систем, существует уже больше 20 лет, однако ПО для ОС

«Аврора» имеет значительные архитектурные и визуальные отличия от ПО,

разрабатываемого для Android и iOS. Также помимо официального инструмента от разработчика ОС – «Аврора SDK», существуют и другие инструменты,

позволяющие разрабатывать ПО. Это создает еще одну сложность в задаче разработки новых приложений – необходимость сделать выбор наиболее подходящего инструмента в каждом отдельном случае. В рамках этой курсовой работы проводится сравнительный анализ по существующим инструментам,

который может помочь избежать совершения ошибки на этапе проектирования

10

нового продукта – будут разобраны основные преимущества и недостатки каждого из вариантов. Помимо производительности и безопасности самой операционной системы для повышения эффективности ПО важна также и производительность аппаратного обеспечения смартфона. На сегодняшний день существует относительно небольшое количество исследований касательно процесса разработки приложений под операционную систему «Аврора». Однако в одном из таковых автор упоминает, что по результатам проведенных экспериментов смартфон F+ R570 с установленной на нем ОС «Аврора» по производительности не уступает смартфонам на базе ОС Android с аналогичным аппаратным обеспечением. Исходя из этого можно отметить, что операционная система «Аврора» не только безопасна, но также она распространяется на большом спектре мобильных устройств, произведенных на территории РФ,

способных эффективно выполнять многопоточные вычисления. Это позволяет использовать данную ОС для создания приложений, в которых критичными параметрами является производительность и возможность выполнения многопоточных вычислений – например ПО для обработки видеоили аудиофайлов большого объема. На момент написания данной курсовой работы ОС «Аврора» распространяется на следующем списке устройств:

Aqparius NS M11;

Aqparius NS M12;

Aqparius NS M21;

Aquarius NS208RH;

Aquarius NS220RE;

Byterg MVK-T2101;

F+ R570E и др.

Так как ОС «Аврора» основывается на операционной системе Sailfish OS,

а она в свою очередь использует ядро Linux в качестве основы, соответственно и

«Аврора» является операционной системой, построенной на основе ядра Linux.

Все операционные системы, построенные на базе Linux для распространения ПО используют специальный формат передачи скомпилированных программ,

11

называемый бинарным пакетом. Бинарный пакет состоит из программы,

скомпилированной в единый бинарный исполняемый файл, и набора метаданных. Существуют разные форматы таких пакетов: deb, rpm, tgz и т.д. В

ОС «Аврора» же используется пакетный менеджер zypper, основанный на библиотеке libzypp, который распространяет так называемые пакеты с программным обеспечением в формате RPM. С помощью zypper можно выполнять полный спектр управления установленными пакетами в системе:

устанавливать, обновлять, удалять и выполнять поиск по пакетам с ПО.

При разработке операционной системы преследовались следующие цели:

создание собственной экосистемы, независимость от иностранных сервисов;

безопасность;

возможность корпоративного пользования системой.

На данный момент мобильные устройства на основе операционной системы «Аврора» применяются в основном в государственных учреждениях.

Например, компании «Ростелеком», «Почта России», «РЖД» и «Аэрофлот» уже применяют такие устройства в работе сотрудников. Однако данная операционная система имеет потенциал для применения в гораздо более широком спектре. К примеру, с помощью ОС «Аврора» можно использовать возможности технологии Bluetooth для подключения к устройствам умного дома. Также существует пример создания клиента для взаимодействия с облачными хранилищами с помощью протокола WebDav. Данное приложение позволяет просматривать список файлов и каталогов в облачном хранилище,

переходить на разные уровни каталогов, манипулировать файлами и т.д.

Разработчики операционной системы предоставляют довольно большой набор функционала для разработки приложений:

базы данных;

криптографические функции;

работа с XML;

создание эскизов изображений и видео;

12

управление файлами, обмен контентом;

сжатие файлов;

доступ к геолокации;

геокординирование;

NFC;

тактильная обратная связь;

обмен сообщениями между процессами;

работа с уведомлениями;

WebView;

и другие функции.

Важной деталью с точки зрения нового разработчика является то, что разработчики операционной системы предоставляют набор готовых примеров приложений, что сильно упрощает понимание основных принципов взаимодействия с системой:

сканирование Bluetooth-устройств;

сканер документов;

редактор изображений;

блокировка доступа к системным устройствам;

печать документов;

подключение к VPN;

отправка push-уведомлений;

чтение QR-кодов;

просмотр PDF-документов;

управление конфиденциальными данными;

получение доступа к информации об устройстве;

подключение к удаленному рабочему столу;

использование кодека WebRTC;

и множество других.

13