1
Системный Анализ и Требования / Давайте поговорим про Use Case и функции. В чем отличия?
« : 13 Июля 2016, 01:05:42 »
Во многих источниках информации указано, что use case - это некая цель, которую желает достич пользователь с помощью системы.
Также существует понятие, что use case <> функция системы. Хм.. тут уже сложнее. Как отделить функцию от цели и, собственно, от use case?
Используем для нашего анализа конкретный пример.
Пусть, в некой абстрактной системе, у нас будет use case "Создать веб-страницу".
Основной поток UC:
[ДЛ = Действующее лицо
Макет = HTML-шаблон, состоящий из нескольких блоков. В блоках могут выводится текст и изображения]
В данном UC пункт 4 - является отдельным use case или функцией? Ведь это всего-лишь шаг, который необходим для достижения цели "Создать веб-страницу".
Ведь у пользователя нет цели "Выбрать макет", как таковой.
Итак, мы определили, что это функциональное требование - "Система должна позволить выбрать макет веб-страницы из предопределенного списка макетов".
Но в тоже время одно из определений use case говорит нам, что если мы можем вынести описание функции в список фич продукта, то это точно use case.
Если подумать, то выбор макета для веб-страницы вполне достойно этого (т.к. одно дело создавать веб-страницы с одним и тем же расположением блоков, и совсем другое - иметь возможность выбрать макет из некоего перечня).
Итак ... "Выбрать макет" это все-таки use case.. или опять нет ?
Давайте попробуем описать его основной поток:
Получился неочень-то информативный use case, что опять смущает.
Итого:
1. Хотелось бы услышать ваше мнение и рассуждения по поводу явлется-ли "Выбрать макет" функцией или UC в данном случае?
2. Как вы определяете, что есть use case? На основании каких признаков?
Также существует понятие, что use case <> функция системы. Хм.. тут уже сложнее. Как отделить функцию от цели и, собственно, от use case?
Используем для нашего анализа конкретный пример.
Пусть, в некой абстрактной системе, у нас будет use case "Создать веб-страницу".
Основной поток UC:
[ДЛ = Действующее лицо
Макет = HTML-шаблон, состоящий из нескольких блоков. В блоках могут выводится текст и изображения]
Код: [Выделить]
1. ДЛ переходит к созданию веб-страницы
2. ДЛ задает имя веб-страницы
3. Система проверяет имя на уникальность
4. ДЛ выбирает макет страницы из предустановленного перечня макетов
5. ДЛ формирует контент из текста и изображений, для каждой секции макета
6. ДЛ сохраняет веб-страницу
7. Система перенаправляет ДЛ на страницу списка созданных веб-страниц
8. Сохраненная веб-страница отображается в списке
В данном UC пункт 4 - является отдельным use case или функцией? Ведь это всего-лишь шаг, который необходим для достижения цели "Создать веб-страницу".
Ведь у пользователя нет цели "Выбрать макет", как таковой.
Итак, мы определили, что это функциональное требование - "Система должна позволить выбрать макет веб-страницы из предопределенного списка макетов".
Но в тоже время одно из определений use case говорит нам, что если мы можем вынести описание функции в список фич продукта, то это точно use case.
Если подумать, то выбор макета для веб-страницы вполне достойно этого (т.к. одно дело создавать веб-страницы с одним и тем же расположением блоков, и совсем другое - иметь возможность выбрать макет из некоего перечня).
Итак ... "Выбрать макет" это все-таки use case.. или опять нет ?
Давайте попробуем описать его основной поток:
Код: [Выделить]
Предусловие: ДЛ находится на этапе выбора макета веб-страницы
1. ДЛ выбирает макет страницы из предустановленного перечня макетов
2. ДЛ переходит к шагу формирования контента
Получился неочень-то информативный use case, что опять смущает.
Итого:
1. Хотелось бы услышать ваше мнение и рассуждения по поводу явлется-ли "Выбрать макет" функцией или UC в данном случае?
2. Как вы определяете, что есть use case? На основании каких признаков?