Черновик ПЗ

This commit is contained in:
2026-05-25 19:34:22 +03:00
parent adc3730b8d
commit 2b139a18b3
72 changed files with 3570 additions and 0 deletions

View File

@@ -0,0 +1,79 @@
#import "../includes/common.typ": pz-fig
== Обзор программного продукта Wallenc
Wallenc мобильное приложение для Android, предназначенное для управления vault (хранилищами) с клиентским шифрованием. Продукт не использует собственный сервер; взаимодействие с облаком выполняется через API внешних провайдеров после OAuth.
== Техническое задание (выдержка)
*Наименование:* мобильное приложение Wallenc.
*Основание для разработки:* производственная практика, задание ООО НМФ «Нейротех», направление 09.03.04.
*Назначение:* обеспечение конфиденциального хранения пользовательских данных на недоверенных хранилищах.
*Требования к функциям:* см. табл. @tbl-req (глава 1).
*Требования к надёжности:* устойчивость к прерыванию операций шифрования; восстановление метаданных из Room.
*Стадии разработки:* аналитический этап; реализация ядра; тестирование; оформление документации.
*Порядок контроля:* модульные и ручные испытания по программе (ниже).
== Программа и методика испытаний
Испытания проводятся на устройстве или эмуляторе Android. Матрица сценариев табл. @tbl-testplan. Критерий приёмки: отсутствие блокирующих дефектов по сценариям T-1T-6.
== Отчёт о результатах испытаний
Результаты приведены в табл. @tbl-testres (глава 5). Модульные тесты криптографии пройдены.
== Руководство пользователя
=== Установка
Установите APK сборки debug/release, полученной от разработчика, или соберите проект из репозитория Gitea ЮФУ. Разрешите доступ к файловой системе при запросе системы.
=== Первый запуск и локальные vault
1. Откройте приложение Wallenc.
2. На экране локальных vault нажмите «+» для создания хранилища.
3. Укажите имя vault и подтвердите создание.
#pz-fig("fig_05_local_vaults.jpg", [Экран списка локальных vault], "fig-05-rp")
=== Шифрование vault
1. Выберите vault в списке.
2. Выберите действие «Включить шифрование».
3. Введите пароль (мастер-ключ) и подтвердите. *Важно:* без пароля восстановление невозможно.
#pz-fig("fig_06_encrypt_dialog.jpg", [Диалог включения шифрования], "fig-06-rp")
=== Открытие и закрытие зашифрованного vault
1. Для зашифрованного vault выберите «Открыть».
2. Введите пароль. При успехе содержимое доступно для просмотра.
3. Используйте «Закрыть» для блокировки.
#pz-fig("fig_07_open_close_dialog.jpg", [Диалог открытия и закрытия], "fig-07-rp")
=== Переименование и удаление
Долгое нажатие или меню vault «Переименовать» / «Удалить». Подтвердите действие в диалоге.
#pz-fig("fig_08_rename_delete_dialog.jpg", [Диалог переименования и удаления], "fig-08-rp")
=== Удалённые vault и Яндекс
1. Перейдите на экран удалённых vault.
2. Нажмите «+» выберите авторизацию Яндекс.
3. Пройдите OAuth в браузере/встроенном окне.
4. После успеха добавьте удалённое хранилище.
#pz-fig("fig_09_remote_vaults.jpg", [Экран удалённых vault], "fig-09-rp")
#pz-fig("fig_10_yandex_oauth.jpg", [OAuth Яндекс], "fig-10-rp")
=== Фоновые задачи
На экране задач отображаются операции шифрования и синхронизации. Уведомления информируют о завершении (см. рис. 12 и 13 в гл. 5).