Общие сведения
Обозначение и наименование

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

Программное обеспечение

Облачное программное обеспечение не требует какой-либо установки на носители. Доступ осуществляется через интернет браузер по HTTP протоклу.

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

Языки программирования

Облачное программное обеспечение разрабатывается на языках программирования, предназначенных для разработки серверной части и веб-интерфейса сайтов внутри браузера.

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

Подробнее о технологиях разработки продуктов на платформе Appocore.io смотрите раздел «Стек технологий Appocore».

Процесс разработки

Разработка программных решений на базе программного кода и сервисов Appocore ведется на основании договора подряда через согласование технического задания, в котором описываются требования к модулям заказчика и графическому интерфейсу клиентской части. Подробнее о предоставлении услуг смотрите раздел «Публичная оферта».

Функциональное назначение
Серверное назначение (облачное обеспечение)

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

Клиентское назначение (облачное обеспечение)

Это публичная часть веб-приложений (сайт), с которой клиент или заказчик может взаимодействовать. Сюда входит отображение функциональных задач пользовательского интерфейса, выполняемые на стороне клиента, а также обработка пользовательских запросов с использованием веб-интерфейса бразуера по заранее проработанным сценариям и ограничениям в рамках того бизнеса, для которого был разработан отображаемый пользовательский интерфейс.

Клиентское назначение (программное обеспечение)

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

Функциональные ограничения

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

Описание логической структуры
Ядро платформы

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

  • Система аутентификации;
  • Базовые UI компоненты интерфейса;
  • Функциональные сервисы для работы с оповещениями;
  • Набор функциональных систем техподдержки для общения пользователей в рамках платформы и бизнеса;
  • Базовая система для внедрения и подключения платежного шлюза с банком Tinkoff через терминал.
Модульная архитектура

Это абстрагирование определенной бизнес-логики в отдельный блок обработки данных. Они могут быть как и полностью изолированы от ядра плафтормы системы, так и могут быть зависимы друг от друга, в случаях, если один модуль обязательно должен включать функционал из другого модуля. Каждый модуль системы занимает уникальный уровень вложенности по URL маршруту, по которому будет происходить общение с ним с использованием HTTP протокола и Socket-канала связи.

Расширение профилей пользователей

При регистрации пользователей в бизнес-проекте (если это требуется) - пользователю создается базовый профиль на уровне ядра платформы и основной профиль на уровне модуля, где обрабатывается бизнес-информация по профилю. Если тот же пользователь регистрируется в другом целевом бизнес проекте платформы (по тем же данным входа), то ему не создается еще один профиль на уровне ядра, а создается лишь профиль на уровне второго модуля. Тем самым сохраняется целостность данных и исключаются дубли конфиденциальной информации пользователей.

Правовая система доступа для администрирования

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

Веб-интерфейс для администратора платформы

Управление API сервером и его реализуемыми сервисами выполняется через отдельный выделенный сервер, отвечающий за SPA приложение. Это, также, и единая точка входа системы для всех заказчиков или пользователей бизнеса. Через нее администраторы и техподдержка платформы Appocore управляют доступностью модулей для заказчиков, управляют пользователями системы, анализируют полученные данные и общаются с заказчиками и пользователями системы.

Веб-интерфейс для заказчика

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

Программный интерфейс для клиента бизнеса

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

Используемые технические средства
Серверные средства

Для работы серверной и клиентской части веб-интерфейса используется Unix-подобная операционная система. Взаимодействие с сервером происходит через HTTP/2 (SSL), с использованием веб-сервера NGINX, и WS (WSS) протоколы.

Формат данных

Данные, при передаче между субъектами платформы, обрабатываются в формате JSON. Альтернативным типом передачи данных является XML-подобный синтаксис.

Хранение данных

Хранение постоянных данных выполяется выделенными и защищенным базами данных. Хранение медиа-файлов обрабатывается локально, внутри файловой системы сервера, либо через выделенный файловый контейнер. Хранение временых данных обрабатывается локально, внутри файловой системы сервера, либо через базу данных, либо через выделенный файловый контейнер.

Вызов и загрузка
Взаимодействие с веб-интерфейсом

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

Взаимодействие с программным решением

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

Входные данные
Серверная обработка

Серверная часть обрабатывает данные, получая их в JSON или XML, в зависимости от API-метода или иного канала связи, который используется для отправки. Формат обработки данных согласовывается с заказчиком.

Клиенсткая обработка

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

Выходные данные
Серверная обработка

Серверная часть, после обработки данных, выдает их в JSON или XML формате, в зависимости от API-метода или иного канала связи, который используется для получения. Формат обработки данных согласовывается с заказчиком.

Клиенсткая обработка

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