Главная страница
Навигация по странице:

  • 3.6 Разработка архитектуры приложения

  • 4 Руководство пользователя системы и тестирование (анализ безопасности системы)

  • Программное средство Инвентаризация компьютеров. ПЗ_new. Руководство пользователя для разработанной системы. Пятый раздел приводит данные по информационной безопасности приложения


    Скачать 4.8 Mb.
    НазваниеРуководство пользователя для разработанной системы. Пятый раздел приводит данные по информационной безопасности приложения
    АнкорПрограммное средство Инвентаризация компьютеров
    Дата25.05.2023
    Размер4.8 Mb.
    Формат файлаdocx
    Имя файлаПЗ_new.docx
    ТипРуководство пользователя
    #1158409
    страница7 из 9
    1   2   3   4   5   6   7   8   9

    3.5 Описание основных зависимостей проекта

    3.5.1 Пакет Intl


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

    Локализуемые сообщения записываются как функции, которые возвращают результат вызова Intl.message. Функция может быть запущена в программе до того, как будет выполнен какой-либо перевод, и просто вернет строку сообщения. Строка также можно извлечь в файл и затем может быть модифицирована так, чтобы она возвращала переведенную версию без изменения исходной программы [4].

    3.5.2 Пакет Provider


    Зависимость, которая предоставляет ряд возможностей при разработке приложения:

    3.5.3 Пакет Auto Route


    AutoRoute ­ это пакет для генерации маршрутов, в которой автоматически создается все необходимое для навигации.

    В Flutter маршруты используются для перехода между экранами.

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

    3.5.4 Пакет artemis


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

    Плагин использует стандартный механизм Flutter для создания генерированного кода всех запросов, мутаций и объектов доступных внутри GraphQL схемы.

    3.5.5 Пакет storage_repository


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

    Характерной чертой этой зависимости является то, что данные, которые сохраняются туда персистенты и хранятся между запусками приложения в шифрованном виде.

    3.5.6 Пакет flutter_localizations


    Стандартный плагин Flutter для предоставления возможностей интернационализации приложения.

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

    3.5.7 Пакет hive


    Кроссплатформенная библиотека, предоставляющая хранилище по типу «ключ-значение» написанное на чистом Dart.

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

    3.5.8 Пакет Build Runner


    Пакет build_runner предоставляет конкретный способ генерации файлов с использованием кода Dart вне таких инструментов, как pub. В отличие от pub / build, файлы всегда генерируются непосредственно на диске, а перестройки - инкрементные.

    3.6 Разработка архитектуры приложения

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

    • аутентификация;

    • сотрудник.

    По серверной части мы используем IdentityServer для авторизации и клиентов, а HotChocolate для поддержки GraphQL в ASP.NET Core. Таким образом можно выделить такие структурные части как:

    • ASP.NET Core;

    • EntityFramework;

    • PostgreSQL;

    • IdentityServer;

    • HotChocolate.

    Большинство приложений должны распознавать пользователей. Знание личности пользователя позволяет приложению безопасно сохранять пользовательские данные и предоставлять персонализированный опыт работы на любом устройстве. IdentityServer предоставляет основную работу с авторизацией и OAuth.

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

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

    • Flutter – в качестве технологии проектирования кроссплатформенного приложения;

    • PostgreSQL – в качестве базы данных приложения;

    ASP.NET Core – в качестве технологии проектирования серверного приложения.

    3.7 Выводы по разделу

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

    Реализация пользовательского приложения производилась при помощи фреймворка Flutter. Был составлен и реализован набор компонентов для отображения, добавления, удаления и взаимодействия различных сущностей. Также была реализована система разграничения доступа к функционалу приложения для различных групп пользователей. Была внедрена валидация введённых данных перед отправкой формы, а также сообщения об ошибке при отправке данных формы на сервер.

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

    4 Руководство пользователя системы и тестирование (анализ безопасности системы)
    1   2   3   4   5   6   7   8   9


    написать администратору сайта