Как применять ЦС?

Демонстрационный скрипт

Рассмотрим в качестве примера простой консольный скрипт:

echo.py

#!/usr/bin/env python3

import argparse


def create_parser():
    parser = argparse.ArgumentParser(
        description='''
            Программа имитирует эхо,
            выводя в консоль введённый текст
            заданное количество раз.
        '''
    )
    parser.add_argument(
        '-t', '--text', type=str, default='Ауу',
        help='Текст для повторения'
    )
    parser.add_argument(
        '-r', '--repeat', type=int, default=10,
        help='Количество повторений'
    )
    return parser


def main():
    parser = create_parser()
    args = parser.parse_args()

    text = args.text
    repeat = args.repeat

    if not text:
        print('Ошибка: необходимо указать текст.')
        return

    if repeat <= 0:
        print('Ошибка: количество повторений должно быть больше 0.')
        return

    echo = ''
    pause = '...'
    for repeat_num in range(1, repeat + 1):
        echo += text + (pause * repeat_num)

    print(echo)


if __name__ == '__main__':
    main()

Выбор Интерфейсов

Первое, что нужно сделать при проверке - подобрать подходящий Интерфейс.

Предполагается, что Пользователь данного скрипта будет запускать его с помощью командной строки, следовательно, Интерфейс CLI - Командная строка, подходит.

Выбор Функций

После перехода на страницу конкретного Интерфейса можно определиться с Функциями и Историями.

В Интерфейсе Командная строка представлено несколько ключевых Функций. Для большей наглядности можно подставить слово "хочет" между Пользователем выбранного Интерфейса и названием желаемой Функции.

Первая из Функций - "Запустить программу вручную", подходит, так как фраза "Пользователь Интерфейса 'Командная строка' хочет запустить программу вручную" верно описывает то, как предполагается пользоваться данным скриптом.

Выбор Историй

Затем нужно ознакомиться с Историями, которые относятся к выбранной Функции. Для оценки актуальности типичной Истории можно добавить её название в конец полученной ранее фразы:

"Пользователь Интерфейса 'Командная строка' хочет запустить программу вручную базовой командой без вывода в консоль".

Из кода скрипта следует, что при любом варианте предполагается вывод в консоль, следовательно, данная История не актуальна.

Переходим к следующей типичной Истории:

"Пользователь Интерфейса 'Командная строка' хочет запустить программу вручную базовой командой с выводом в консоль".

Эта типичная История явно отражает сценарий, который должен разворачиваться при запуске скрипта, следовательно, она подходит, и можно переходить к проверке.

Проверка Истории

Каждая История содержит свой набор описаний, по которым можно узнать, как добиться наилучшей реализации Интерфейса, как проверить себя и убедиться, что действительно удалось сделать всё верно.

Для проверки Истории, следует ставить себя на место Пользователя Интерфейса, желающего воспользоваться Функцией в рамках ситуации, описанной в Истории, и поэтапно сверяться с акцепторами успеха и отказа.

Важно помнить!

Даже маленький фрагмент кода может влиять сразу на несколько Интерфейсов и Пользователей, а также на несколько Функций и Историй в рамках каждого Интерфейса.


Вопросы и предложения можно направлять сюда.