Министерство образованиея и науки РФ Федерального государственного автономного образовательного учреждения высшего образования
"Национальный исследовательский технологический университет МИСиС"
Курсовая научно исследовательская работа на тему: разработка приложения онлайн-кассы для мобильных устройств на базе Android
Выполнил: Дырков А.В.
Руководитель: Пантелеев С.В.
Актуальность работы
Поправки в «54-ФЗ» от 03.07.2016 вносят ряд правил, предъявляемых к ККТ при осуществлении расчетов на территории Российской Федерации в целях обеспечения интересов граждан и организаций, защиты прав потребителей
Цели курсовой научно-исследовательской работы
Retail - Торговля
Торговля - обширнейшая область предпринимательской деятельности и сфера приложения труда
Торговля в розницу
Розничная торговля - это завершающая форма продажи товаров конечному потребителю в небольших объемах через различные пункты розничной торговли.
Торговля в розницу
Розничная торговля включает в себя следующие функции:
Поправки в ФЗ-54
С 1 февраля 2017 года контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных
Поправки в ФЗ-54
ЭКЛЗ нужно заменить на фискальный накопитель, подключить кассу к интернету, заключить договор с оператором фискальных данных и отправлять чеки в электронном виде в ФНС через оператора фискальных данных.
Алгоритм взаимодействия с ФНС
Оператор фискальных данных
ОФД - организация, созданная в соответствии с законодательством Российской Федерации, находящаяся на территории Российской Федерации, получившая в соответствии с законодательством Российской Федерации о применении контрольно-кассовой техники разрешение на обработку фискальных данных
Фискальный накопитель
Фискальный накопитель - (криптографическое) средство защиты фискальных данных, является программно-аппаратным средством криптографической защиты фискальных данных (СКЗФД) и предназначен для обеспечения противодействия угрозам безопасности информации (фискальных данных) в составе контрольно-кассовой техники
Фискальный накопитель
Регистрация ККТ
Личный кабинет налогоплательщика
Карточка регистрации ККТ
Основные требования
Архитектура Клиент-Сервер
Веб приложение
Веб-приложение - клиент-серверное приложение, основная часть которой содержится на удаленном сервере, а пользовательский интерфейс отображается в браузере в виде веб-страниц.
MPA
Многостраничные приложения - клиент-серверное приложение работающее в рамках браузера. Каждое значительное изменение данных или выгрузка информации обратно на сервер приводит к рендерингу новой страницы в браузере.
Преимущества MPA
Недостатки MPA
SPA
Одностраничные приложения (SPA - Single Page Application) работают в рамках браузера и не требуют перезагрузки страницы или загрузки дополнительных страниц во время использования
Преимущества SPA
Недостатки SPA
PWA
Прогрессивное веб приложение (PWA - Progressive Web App) - технология в веб-разработке, которая добавляет веб приложениям возможности взаимодействия с устройствами. В частности, PWA могут устанавливаются на смартфоны или планшеты пользователей, работают в режиме офлайн благодаря кэшированию контента, доставляют пользователям всплывающие уведомления.
Преимущества PWA
Недостатки PWA
AMP
Ускоренные мобильные страницы (AMP - Accelerated Mobile Pages) – эта платформа с открытым исходным кодом, позволяющая загружать страницу быстрее чем обычный HTML. Это метод создания веб-страниц для статического контента, что позволяет создавать контент, который быстро загружается на мобильных устройствах.
Преимущества AMP
Преимущества AMP
Мобильное приложение
Мобильное приложение - это компонент, устанавливаемый на мобильное устройство под конкретную мобильную платформу (Android, iOS, Windows Mobile), подключающийся к мобильному серверу и управляющий пользовательским интерфейсом и бизнес-логикой устройства.
Нативное приложение
Нативное приложение - это специально разработанное приложение под конкретную мобильную платформу (iOS, Android, Windows Phone). Такое приложение разрабатывается на языке высокого уровня и компилируется в нативный код выполняемый в ОС, обеспечивающий максимальную производительность.
Преимущества нативного приложения
Недостатки нативного приложения
Гибридное мобильное приложение
Гибридное приложение - приложение, «упакованное» в нативную оболочку. Такое приложение, как и нативное, устанавливается из онлайн-магазина и имеет доступ к тем же возможностям мобильного устройства, но разрабатывается с помощью веб технологий, таких как: HTML5, CSS и JavaScript.
Преимущества гибридных приложений
Недостатки гибридных приложений
Техническое обоснование
Архитектура мобильного приложения удовлетворяет большинству требований, но только при использовании гибридной методологии возможно разработать приложения с общей кодовой базой, в сравнительно небольшие сроки и с наименьшими затратами.
Средства реализации
Система хранения данных
Firebase Storage - система хранения данных разработанная корпорацией Google, которая позволяет производить локальное кэширование ресурсов на устройстве для использования в автономном режиме и обслуживания ресурсов, когда пользователь возвращается в сеть, при этом локальные данные автоматически синхронизируются.
Управления состоянием приложения
Redux - это инструмент позволяющий управлять состоянием данных в приложении. Он подходит для одностраничных приложений, в которых управление состоянием может со временем становиться сложным.
Средство разработки интерфейса приложения
ReactNative - это фреймворк, позволяющая разрабатывать приложения под Android и IOS на языке JavaScript. Его работа заключается в использовании компонентов оболочек над нативными компонентами операционной системы, под которую будет собрано приложение
Взаимодействие между программными модулями
Заключение
В рамках данной научно-исследовательской работы был произведен анализ предметной области, выдвинуты требования, на основе которых, был выдвинут ряд возможных решений, описаны все важные преимущества и недостатки.