3. Функциональные и нефункциональные требования - Angelok325/kredit GitHub Wiki

Функциональные требования

  1. Регистрация пользователей:
    – Система должна предоставлять возможность пользователям регистрироваться, вводя свои данные: имя, логин и пароль;
  2. Авторизация пользователей:
    – Система должна проверять учетные данные (логин и пароль) при входе и предоставлять доступ только авторизованным пользователям;
    – В случае неправильного ввода данных, система должна отображать соответствующее сообщение об ошибке;
  3. Расчет ипотеки:
    – Пользователь должен иметь возможность вводить параметры ипотеки (стоимость покупки, первоначальный взнос, сумма кредита, процентная ставка, срок кредита, вид платежа) для расчета ежемесячного платежа;
    – Система должна отображать результаты расчета, включая общую сумму выплат и сумму процентов;
  4. Сохранение данных:
    – Система должна предоставлять возможность пользователю сохранять результаты расчета ипотеки в формате .csv;
    – Данные, сохраняемые в .csv, должны включать: параметры ипотеки, результаты расчета (ежемесячный платеж, переплата по кредиту, итоговая стоимость);
  5. История расчетов:
    – Пользователь должен иметь возможность просматривать историю своих расчетов ипотеки;

Нефункциональные требования

  1. Удобство использования:
    – Интерфейс приложения должен быть интуитивно понятным и доступным для пользователей с различным уровнем технической подготовки;
  2. Безопасность:
    – Система должна использовать шифрование данных при передаче и хранении (например, для паролей);
  3. Совместимость:
    – Приложение должно быть совместимо с основными операционными системами (Windows, macOS, Linux) и работать в современных браузерах (Chrome, Firefox, Safari, Edge, Yandex);
  4. Производительность:
    – Система должна обеспечивать быстрое выполнение расчетов (не более 2 секунд для стандартных операций);
    – Время загрузки страниц приложения не должно превышать 3 секунд при наличии интернет-соединения;
  5. Надежность:
    – Приложение должно обеспечивать высокую доступность (не менее 99% времени безотказной работы);
    – Данные пользователей должны регулярно резервироваться для предотвращения потерь;
  6. Документация:
    – Должна быть предоставлена полная документация для пользователей, включая руководство пользователя и описание функциональности;