Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


Базовой командой без вывода в консоль ✅

Типичная История



Когда:

  • Известна базовая команда программы

Старт:

  • Ввожу в консоль базовую команду и нажимаю Enter

Акцепторы Успеха:

  • Не вижу вывода в консоль после запуска программы

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


Базовой командой с выводом в консоль ✅

Типичная История



Когда:

  • Известна базовая команда программы

Старт:

  • Ввожу в консоль базовую команду и нажимаю Enter

Акцепторы Успеха:

  • Вижу вывод в консоль

  • Вывод в консоль похож на ожидаемый

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С флагом без вывода в консоль ✅

Типичная История



Когда:

  • Известна базовая команда программы

  • Известен флаг и его назначение

Старт:

  • Ввожу в консоль базовую команду с данным флагом и нажимаю Enter

Акцепторы Успеха:

  • Не вижу вывода в консоль после запуска программы

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С флагом и с выводом в консоль ✅

Типичная История



Когда:

  • Известна базовая команда программы

  • Известен флаг и его назначение

Старт:

  • Ввожу в консоль базовую команду с данным флагом и нажимаю Enter

Акцепторы Успеха:

  • Вижу вывод в консоль

  • Вывод в консоль похож на ожидаемый

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


Без обязательного с флага ⚠️

Типичная История



Когда:

  • Известна базовая команда программы

  • Не знаю о том, что флаг необходим

Старт:

  • Ввожу в консоль базовую команду без флага и нажимаю Enter

Акцепторы Отказа:

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

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения отличный от ноля



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С несуществующим флагом ⚠️

Типичная История



Когда:

  • Известна базовая команда программы

  • По ошибке вводится несуществующий флаг

Старт:

  • Ввожу в консоль базовую команду и несуществующий флаг

Акцепторы Отказа:

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

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения отличный от ноля



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С вводом данных вручную после запуска ✅

Типичная История



Когда:

  • Известна команда программы

  • Ввёл в консоль команду и нажал Enter

  • Увидел предложение ввести дополнительные данные

  • Из сообщения ясно, какого рода данные нужно ввести

Старт:

  • Ввожу запрашиваемые данные и нажимаю Enter

Акцепторы Успеха:

  • Результат соответствует ожидаемому

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С аргументами ✅

Типичная История



Когда:

  • Известна базовая команда программы

  • Известны доступные позиционные и именованные аргументы

Старт:

  • Ввожу в консоль базовую команду с верными аргументами и нажимаю Enter

Акцепторы Успеха:

  • Результат соответствует ожидаемому

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С автоматически переданными данными ✅

Типичная История



Когда:

  • Известна базовая команда программы

  • Известна команда, которая должна передать выходные данные с помощью конвейера |

Старт:

  • Ввожу в консоль команду сторонней программы и конвейер | , затем базовую команду, и нажимаю Enter

Акцепторы Успеха:

  • Результат соответствует ожидаемому

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу вручную

Ключевая Функция


С неверным форматом переданных данных ⚠️

Типичная История



Когда:

  • Известна команда программы

  • Не знаю, какой тип данных требуется

Старт:

  • Ввожу в консоль команду, следом неверные аргументы, например, текст вместо числа, и нажимаю Enter

Акцепторы Отказа:

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

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения отличный от ноля



Конечный пользователь программного продукта

Роль Пользователя


Получить справочную информацию

Ключевая Функция


Базовой командой без флагов ⚠️

Типичная История



Когда:

  • Известна базовая команда программы

  • Не известны доступные флаги

Старт:

  • Ввожу в консоль базовую команду и нажимаю Enter

Акцепторы Отказа:

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

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения отличный от ноля



Конечный пользователь программного продукта

Роль Пользователя


Получить справочную информацию

Ключевая Функция


C флагом -h или --help ✅

Типичная История



Когда:

  • Известна базовая команда программы

  • Известен флаг -h и его назначение

Старт:

  • Ввожу в консоль базовую команду с флагом -h и нажимаю Enter

Акцепторы Успеха:

  • Вижу вывод в консоль

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

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status) и нажимаю Enter

  • Вижу статус завершения 0



Конечный пользователь программного продукта

Роль Пользователя


Запустить программу автоматически

Ключевая Функция


Когда потоки stdout и stderr разделены ✅

Типичная История



Когда:

  • Известна команда нашей программы

  • Известна команда сторонней программы, готовой принять на вход только поток stdout нашей программы

  • Известно, что можно передать stdout в stdin с помощью конвейера |

Старт:

  • Ввожу в консоль составную команду и нажимаю Enter

Акцепторы Успеха:

  • Результат соответсвует ожидаемому

  • Вижу приглашение командной строки

  • Ввожу команду для вывода статуса завершения (exit status)

  • Вижу статус завершения 0