Intro

Спецификации прецедентов

Прецедент “создать заказ”:

Предусловие:

Система находится в состоянии ожидания. Система в состоянии исправности. Официант верифицирован через систему. Терминал для оплаты готов к использованию. Касса в состоянии исправности.

Постусловие:

Запись в базу данных заказов с метаданными (сумма, список блюд, официант, успешность/неуспешность, чек, при наличии).

Основной поток:

  1. Официант нажимает кнопку “создать заказ”.
  2. Система посылает запрос в БД для получения информации об имеющихся продуктах;
  3. Ответом на запрос БД возвращает информацию в систему;
  4. Системы возвращает интерфейс с доступными для добавления (на основе полученной информации об имеющихся продуктах) блюдами в заказ.
  5. Официант добавляет блюда;
  6. Система отображает их в созданном заказе с количеством;
  7. Официант нажимает “принять оплату”;
  8. Система отображает собранный заказ с итоговой суммой;
  9. Система отображает выбор между “оплатой картой” и “оплата наличными”;
  10. Официант нажимает “оплата картой”;
  11. Система передает в терминал для оплаты сумму платежа;
  12. Терминал оплаты переводится в режим ожидания оплаты по заданной сумме;
  13. Клиент оплачивает картой через терминал оплаты;
  14. Терминал отправляет запрос с информацией о проведенном платеже в систему;
  15. Система отображает сообщение об успешной оплате;
  16. Система печатает чек по проведенному платежу;
  17. Система отправляет запрос в БД об успешном заказе с метаданными;

Альтернативные потоки:

Альтернативный поток 1 (шаг 2):

Альтернативный поток 2 (шаг 9):

  1. Официант нажимает “оплата наличными”;
  2. Система открывает ящик кассы с наличностью;
  3. Система ожидает подтверждения о получении денег в кассу;
  4. Официант подтверждает оплату через систему;
  5. Система ожидает закрытия ящика кассы;
  6. Официант закрывает ящик;
  7. см. Шаг 15;

Альтернативный поток 3 (шаг потока 2.3):

  1. Официант нажимает “оплаты нет”;
  2. Система отображает ошибку “Ошибка оплаты”;
  3. см. Шаг 9;

Альтернативный поток 4 (шаг 13):

  1. Терминал отправляет запрос с информацией о не проведённом платеже в систему;
  2. Система отображает ошибку “Ошибка оплаты”;
  3. см. Шаг 9;

Атрибуты качества и архитектура

image.png

1.

Значимые атрибуты качества

Сценарии для АК

  1. Отказоустойчивость
  2. Работоспособность
    1. Источник: пользователь
    2. Стимул: команда “оформить заказ”;
    3. Артефакт: терминал;
    4. Среда: готовность системы, нормальное функционирование, связь с базой;
    5. Ответ: возврат диалогового окна для создания заказа из функциональных требований;
    6. Метрика качества: скорость загрузки экрана < 2с, отсутствие аварийных сообщений.
  3. Соответствие полноте функциональных требований
    1. Источник: пользователь
    2. Стимул: запрос в систему выгрузить отчеты в файл;
    3. Артефакт: терминал;
    4. Среда: готовность системы, нормальное функционирование, связь с базой;
    5. Ответ: выгруженный отчет, содержащих все данные из функциональных требований;
    6. Метрика качества: скорость загрузки отчета, отсутствие аварийных сообщений, полнота отчета в соответствии с требованиями.
  4. Предотвращение пользовательских ошибок
    1. Источник: пользователь;
    2. Стимул: запрос оплаты пустого заказа;
    3. Артефакт: Терминал;
    4. Среда: готовность системы, нормальное функционирование, связь с базой;
    5. Ответ: диалоговое сообщение о пустом заказе, возврат на этап добавления блюд в заказ;
    6. Метрика качества: отсутствие лишних действий, скорость работы, отсутствие ошибок.