Файл: М инобрнауки россии федеральное государственное бюджетное образовательное учреждение высшего образования Национальный исследовательский университет мэи.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.11.2023

Просмотров: 650

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Рисунок 1.11 – Статистика популярности фреймворков

При выборе инструментальных средств разработки стоит обратить внимание на то, что кроссплатформенная разработка имеет положительную сторону с точки зрения дальнейшего развития данного проекта, ведь именно такие средства разработки позволят в дальнейшем при меньших трудозатратах на разработку распространить данное ПО на другие мобильные и стационарные ОС. Таким образом можно сделать вывод, что наиболее подходящим средством разработки является Xamarin, поскольку он имеет долгую историю, свидетельствующую о существовании большого количества материалов и библиотек, что поспособствует ускорению разработки, так же язык программирования и платформа .NET используемые в фреймворке имеют определённую популярность среди разработчиков, что говорит о том, что данные инструменты поддерживаются сообществом и активно развиваются.

Для осуществления разработки на фреймворке Xamarin необходимо определиться с интегрированной средой разработки. Существует два наиболее продвинутых решения для разработки на базе выбранной платформы: Rider и Visual Studio. Первая среда разработана компанией Jet Brains и является профессиональной интегрированной средой для разработки только мобильных приложений, у данного решение есть один существенный недостаток это платная основа распространения. Вторая среда является разработкой компании Microsoft, которая руководит в том числе и проектом Xamarin, что означает стабильную поддержку среды разработки и получение всех необходимых обновлений библиотек вовремя. По данным индекса популярности PYPL [7] рис. 1.12, Visual Studio является самой часто запрашиваемой в поисковых системах средой разработки. Можно сделать вывод, что среда компании Microsoft является наиболее выгодным решением для разработки с помощью платформы Xamarin.



Рисунок 1.12 – Индекс PYPL

Поскольку данный проект подразумевает работу с большим количеством иерархических данных, то необходимо использовать в разработке СУБД. Учитывая, что разрабатываемое приложение должно обладать возможностью автономной работы необходимо использовать локальную, легковесную реляционную СУБД. По данным опроса Developer Survey Results [5] проводимого StackOverflow за текущий год рис. 1.13, можно определить, что наиболее популярным решением в данной области является SQLite. Альтернативной СУБД выступает ObjectBox которая является не реляционным решением, что не подходит по требуемым критериям. В связи с тем, что СУБД, отвечающих всем описанным
требованиям почти нет то можно сделать вывод, что наиболее подходящим решением будет SQLite.



Рисунок 1.13 – Статистика популярности СУБД

Для отслеживания изменений в проекте и его файлах, для улучшения координации проводимой работы и осуществления контроля версий разрабатываемого ПО, необходимо использовать систему управления версиями. По данным опроса Developer Survey Results [5] проводимого StackOverflow за текущий год можно заметить рис. 1.14, что наибольшую популярность среди разработчиков имеет система Git. Стоит обратить внимание, что данная система встроена в большое количество современных интегрированных сред разработки, в том числе и в Visual Studio, что делает данное решение наиболее подходящим для использования в разработке данной проекта.



Рисунок 1.14 – Опрос Stack Overflow о системах контроля версий

Выводы главы


В данной главе были разобраны все значимые вопросы мобильной разработки: было проведено изучение наиболее популярных мобильных ОС и выбрана система Android в связи с широкой распространённостью среди пользователей, был проведён детальный анализ форматов БД ФИАС и определенно, что наиболее подходящим решением для мобильной разработки является КЛАДР из-за его легковесности, был проведён анализ наиболее развитых и популярных инструментальных средств разработки, среди которых было решено использовать кроссплатформенный фреймворк, поскольку это позволит в будущем развивать проект на других ОС, среди представленных фреймворков был выбран Xamarin как наиболее зрелый и популярный инструмент разработки, в качестве интегрированной среды разработки было принято решение использовать Visual Studio, как наиболее популярное и подходящее средство для работы с инструментарием Microsoft, в качестве СУБД будет использоваться SQLite как наиболее легковесное и производительное решения для мобильных приложений, в качестве системы контроля версий выступит Git как самое развитое и интегрируемое в среды разработки средство.

2. Проектирование информационной системы

2.1 Анализ данных БД ФИАС


Для работы с БД ФИАС необходимо провести анализ имеющихся в ней данных их структуру. Так же стоит разобрать из каких частей состоят файлы адресной системы.

Как упоминалось ранее данные в БД возможно выводить с использованием двух делений: муниципального и административно-территориального, в зависимости этого меняется способ поиска и структура данных. Согласно официальным сведениям о составе ФИАС можно узнать, что иерархия данных выглядит у двух делений следующим образом таблица 2.

Таблица 2

Составляющие элементы делений БД ФИАС

Уровень классификации

Административно-территориальное деление

Муниципальное деление

1

Субъект РФ

Субъект РФ

2

Административный район

Муниципальное образование

3

Город или посёлок городского типа

Населённый пункт

4

Населённый пункт

Не используется

5

Элементы улично-дорожной и планировочной инфраструктуры

Элементы улично-дорожной и планировочной инфраструктуры

6

Здания, сооружения, дома

Здания, сооружения, дома


Поскольку административно-территориальное деление представляется более понятным для неподготовленного пользователя то стоит дать определить, чем именно является каждый из приведённых элементов структуры данного деления. К субъектам РФ относятся:

  1. республики;

  2. края;

  3. области;

  4. города федерального значения;

  5. автономные области;

  6. автономные округа.

К районам относятся административные районы, относящиеся к конкретному субъекту РФ. К городам и посёлкам городского типа относятся:

  1. города и посёлки городского типа регионального или районного подчинения;

  2. сельсоветы (сельские округа, сельские администрации, волости).

К населённым пунктам относятся:

  1. города и посёлки городского типа, подчинённые администрациям городов районного подчинения;

  2. сельские населённые пункты.

К Элемента улично-дорожной и планировочной инфраструктуры относятся улицы, территории, проспекты, проезды и т.д. Последний элемент иерархии говорит сам за себя, это здания, дома и другие подобные объекты.

Каждый объект адресной БД обладает классификационным кодом. Классификационный код адресного объекта отражает иерархию его подчиненности и выделяет его среди объектов данного уровня, подчиненных одному и тому же старшему объекту. Классификационный код любого адресного объекта, начиная от регионов и заканчивая элементом улично-дорожной сети представляется в следующем виде:

СС+РРР+ГГГ+ППП+СССС+УУУУ+ДДДД (или ЗЗЗЗ) +ОООО, где:

СС – код субъекта Российской Федерации – региона

РРР – код района;

ГГГ – код города;

ППП код населенного пункта;

СССС - код элемента планировочной структуры;

УУУУ - код улицы;

ДДДД (или ЗЗЗЗ). ДДДД тип и номер здания, сооружения, объекта незавершенного строительства в случае адресации домов. ЗЗЗЗ - номер земельного участка в случае адресации земельных участков;

Таким образом, каждому уровню классификации соответствует фасет кода. Для объектов классификации верхних уровней фасеты кода объектов нижних уровней будут иметь нулевые значения. В случае подчинённости адресного объекта старшему объекту через несколько уровней иерархии фасеты кода объектов, соответствующих промежуточным уровням, должны быть нулевыми. Например, улица может быть привязана непосредственно к субъекту Российской Федерации (для городов Москва и Санкт-Петербург), при этом фасеты кода, соответствующие уровням округов, районов, городов и населенных пунктов, будут содержать нули.


Поскольку для данного проекта принято использовать БД ФИАС в формате КЛАДР, то необходимо ознакомиться с содержанием файлов данного классификатора, она отражена на таблице 3.

Таблица 3

Структура файлов КЛАДР

Наименование файла

Содержимое

Kladr.dbf

Субъекты РФ, Административные районы, города, посёлки городского типа, сельсоветы, сельские населённые пункты

Street.dbf

Улицы, переулки, проезды и т.д.

Doma.dbf

Дома, здания, сооружения и т.д.

Flat.dbf

Должна содержать номера квартир, но в актуальной версии БД этот файл пуст

Sorcbase.dbf

Таблица сокращений используемых в БД ФИАС

Altnames.dbf

Таблица содержащая историю переподчинения адресных объектов

Структура записи файла Kladr.dbf представлена в таблице 4.
Таблица 4

Структура файла Kladr.dbf

Наименование столбца

Значение столбца

NAME

Наименование адресного объекта

SOCR

Сокращённое название типа объекта

CODE

Классификационный код

INDEX

Почтовый индекс

GNINMB

Код ИФНС

UNO

Код территориального участка ИФНС

OCATD

ОКАТО

STATUS

Статус адресного объекта

Структура записи файла Street.dbf представлена в таблице 5.

Таблица 5

Структура файла Street.dbf

Наименование столбца

Значение столбца

NAME

Наименование улицы, проезда и т.д.

SOCR

Сокращённое название типа объекта

CODE

Классификационный код

INDEX

Почтовый индекс

GNINMB

Код ИФНС

UNO

Код территориального участка ИФНС

OCATD

ОКАТО