Файл: Критерии выбора средств разработки мобильных приложений (Разработка мобильного приложения для курьерской службы доставки «Ptichka»).pdf

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

Категория: Курсовая работа

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

Добавлен: 26.06.2023

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

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

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

Специализированная среда разработки под Android от Intel. Обладает мощными инструментами для создания отличных приложений и игр, содержащие все основные компоненты платформы Intel System Studio. Поддерживает языки C, C ++, C #, Fortran, Java.

Благодаря мощным инструментам для отладки графической составляющей программного продукта, отлично подходит для разработчиков игр, которые в свою очередь положительно отзываются об инструментах MDK for Android. Рассмотрим, какими основными компонентами обладает данная среда:

- Intel VTune Amplifier. Инструмент для оценки системы, обладает расширенным анализом и настройкой производительности ЦП [9].

- Intel Energy Profiler. Средство разностороннего анализа энергопотребления и производительности для разработчиков системного ПО.

- Intel C++ Compiler. Передовой отраслевой компилятор С++ для совершенствования производительности высокооптимизированных систем Android и оригинального кода С++.

- Intel Integrated Performance Primitives. Обширная библиотека высокопроизводительных компонентов для создания программного кода, обработки сигналов, данных и мультимедиа [10].

- Анализатор видеосистем. Оптимизирует производительность видеосистем на базе GPU. Осуществляет анализ системной производительности в режиме реального времени.

- Анализатор платформ. Позволяет выполнять исчерпывающий автономный анализ разрабатываемого приложения.

- Анализатор кадров. Анализирует нагрузку видеосистем с получением подробных данных на уровне схем Open GL ES.

Intel Beacon Mountain

По сравнению с XDK данная среда ориентирована только на Android платформу. Имеет полезную функцию автоматического обновления, что позволяет пользователю не сосредотачиваться на поддержке актуальности своей платформы. Beacon Mountain разработана на базе Eclipse и оптимизирована рядом инструментов произведенных Intel:

- Intel* Threading Building Blocks (Intel* TBB) - очень популярная библиотека шаблонов C++ [12];

- Intel* Integrated Performance Primitives (Intel* IPP) Preview -библиотека адаптированной обработки информаций и графики.

- Intel* Graphics Performance Analyzers (Intel* GPA) System Analyzer - позволяет производить мониторинг загруженности системы при работе с элементами OpenGL в реальном времени [3].

- Процессор ускоряющий работу эмулятора с помощью технологии Intel*VT.

XCode

Среда программирования для платформ IOS, OS X, WatchOS, tvOS разработанная компанией Apple. Поддерживаемые языки программирования: С, C++, Objective-C,Objective-C, Swift, Java, AppleScript, Python, Ruby.

Основные инструменты XCode [4]:

- IOS Simulator. Инструмент для быстро просмотра разрабатываемого приложения.

- Dash. Это менеджер сниппетов и браузер документаций.


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

- TestFlight - отличный сервис для передачи тестовых билдов команде бета-тестеров. Этот сервис собирает отчеты об ошибках, пользовательские отзывы, и позволяет вам отслеживать пользовательские сессии [5].

- GDB. Отладчик кода.

«1С: Предприятие 8. Расширение для КПК».

Нельзя обойти вниманием и российского производителя программных продуктов компанию 1С, которая разработала платформу «1С:Предприятие 8. Расширение для карманных компьютеров». Среда предназначена для работы с базами данных «1С Предприятия 8» на мобильных гаджетах, а так же разработки приложений для них. Обладает хорошим инструментарием для разработки [6]:

- Редактор мобильных приложений;

- Платформа для исполнений мобильных приложений;

- Сервер мобильных приложений;

- Компонента обмена данных.

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

Ниже приведена таблица сравнения сред для разработки мобильных приложений, составленная на основе анализа выше перечисленной информации. Основными критериями, которой являются: многообразность языков программирования, удобство пользовательского интерфейса, разнообразие для разработки мобильных платформ, монетизация среды разработки [7].

Исходя из проведенного сравнения, более рентабельно использовать платформу Android Studio. В первую очередь, потому что у неё самый удобный пользовательский интерфейс, много доступного материала для обучения, вполне достаточный спектр языков программирования, бесплатность пользования и самый большой рейтинг целевой платформы в мире (согласно Kantar Worldpanel Comtech доля пользователей Android в мире составляет 68%. Так же можно отметить, что эта среда постоянно развивается и совершенствуется благодаря компаний Google и за её актуальность можно не переживать [8].

2. Разработка мобильного приложения для курьерской службы доставки «Ptichka»


2.1. Описание предприятия

Курьерская служба доставки «Ptichka» предоставляет услуги по доставке документов и посылок по городу. На данный момент служба представлена в Москве, Санкт-Петербурге, Екатеринбурге и Алмате.

«Ptichka» представляет собой информационную систему подбора курьеров и распределения заказов. Вся работа максимально автоматизирована. Клиент через веб-сайт оставляет заказ на доставку посылок по указанным им адресам. Далее информация по заказу предоставляется курьерам. После ознакомления с ней, первый согласившийся на выполнение курьер назначается на этот заказ.

2.2. Необходимость создания приложения

Поскольку «Ptichka» задумывалась, как полностью автоматизированная информационная система, то она должна функционировать без колл-центра, операторов, которые обрабатывали бы заявки на доставки, назначали курьеров на заказы и взаимодействовали бы с ними в процессе выполнения. Поэтому у курьеров должна быть возможность работать с заказами самостоятельно: знакомиться с условиями выполнения, оповещать клиента о том, в какие время он приедет на адрес или о том, что он не может с ним связаться, при необходимости отказываться от выполнения.

Для этого необходимо предоставить определенное решение, доступное работникам службы. Изначально данное решение было представлено в виде использования мессенджера “Telegram”. Данный мессенджер предоставляет удобное API для создания необходимых команд и вывода информации при получении уведомлений на мобильное устройство. Например, о том, что доступен новый заказ для выполнения. При использовании мессенджера не нужно было проектировать и создавать новое приложение, поэтому для начала работы службы он был отличным решением. Отсутствие необходимости в регистрации – курьер и так уже был идентифицирован по номеру мобильного телефона.

Тем не менее, в перспективе от использования “Telegram” необходимо было отказываться.

У “Telegram” есть ограничение по количеству уведомлений, отправляемых за секунду, поэтому было невозможно отправлять сразу всем курьерам информацию о новом доступном заказе.

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


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

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

2.3. Требования к разработке

Данное приложение должно предоставлять возможность пользователям [11]:

● просматривать ближайшие к ним по геолокации заказы и подробную информацию по каждому. Далее выбирать один из них для выполнения;

● просматривать информацию по выполняемым заказам и проводить операции с ними: отменить заказ или передать заказ другому курьеру, указать время прибытия к клиенту или оповестить клиента, что курьер не может с ним связаться;

● получить оповещение (например, о том, что через 30 минут курьеру нужно быть на указанном адресе, чтобы взять посылку);

● пополнить баланс для работы;

● просмотреть информацию о работе в «Ptichka».

Приложение должно состоять из ряда страниц:

● страница с доступными заказами;

● страница с активными заказами;

● страница с информацией о работе в «Ptichka»;

● страница с уведомлением для пользователя;

● страница с информацией о балансе пользователя.

В верхней части приложение должна быть расположена иконка, при нажатии на которую должно появится меню со списком всех страниц, представленных в приложении. При выборе одной из страниц в списке в меню, пользователь должен перенаправляться на нее [12].

На странице с доступными заказами должен выводится список заказов, которые может взять курьер. По каждому заказу должна предоставляться информация о [7]:

● адресах, по которым нужно доставить посылки;

● промежутках времени, в которые нужно забрать и доставить посылку;

● типе посылки;

● дополнительном поручение, если оно есть у заказа;

● комментарии от клиента, если оно есть у заказа;

● стоимости заказа.

Изначально информация по заказу должна быть представлена в краткой форме, которая должна отображать только первый и последний адрес из указанных в заказе. Также, в ней не должны быть показаны дополнительное поручение и комментарий от клиента.

Для каждого заказа должны быть доступны кнопки для показа подробной информации и убирания заказа из доступных.

В подробной форме заказа должна отображаться вся информация по заказу, кнопки для отказа или согласия на его выполнение и кнопка для открытия карты, на которой будут отображены адреса указанные в заказе [8].


Список заказов должен обновляется через нажатие на соответствующую кнопку, расположенную на страницы или при получении оповещения на мобильное устройство [6].

На странице с активными заказами должен выводиться список всех заказов, исполняемых в данный момент курьером.

При выборе одного из них пользователю должно предоставляться полное описание по заказу [6]:

● адреса, по которым нужно доставить посылки и номер телефона по каждому их них, на который нужно будет позвонить при прибытии;

● промежутки времени, в которые нужно забрать и доставить посылку;

● тип посылки;

● дополнительное поручение, если оно есть у заказа;

● комментарий от клиента, если оно есть у заказа;

● полное описание формирование стоимости заказа: оплата за саму доставку, надбавка за срочность, надбавка за дополнительное поручение, комиссия курьерской службы.

Для пользователя должны быть доступны кнопки, при нажатии на которые:

● пользователю откроется карта с адресами указанными в заказе;

● пользователь сможет уведомить клиента о том, в какое время он прибудет на адрес или о том, что он не может с ним связаться;

● пользователь сможет отказаться от выполнения заказа, если не может с ним справиться или отменить из-за некорректных данных, указанных в заказе.

На странице с информацией для работы должен выводиться список с информационными разделами. При нажатии на один из них пользователю должна предоставляется информация по нему [7].

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

Также на странице должна быть расположена кнопка для выхода из текущей учетной записи.

На странице с уведомлением для пользователя должно отображаться сообщение, отправленное ему с сервера. Сообщение может содержать ссылку на один из информационных разделов, при нажатии на который пользователь должен перейти на страницу с соответствующей информацией по нему [7].

На странице с балансом должен отображаться текущий баланс пользователя и кнопки для его пополнения на разные суммы “50”, “150”, “300” и “500”. Также на странице должна быть кнопка, при нажатии на которую пользователю покажется история операция по его балансу: пополнения баланса и снятие с баланса по комиссии за заказы.

Перед регистраций пользователю должен быть представлен список городов для работы, в которых на данный момент реализована «Ptichka».