2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Другие варианты использования

Хранение крышек и другие варианты использования органайзеров для папок

К органайзерам для папок многие относятся как к не особенно важному элементу офиса. Но если приложить к ним руку и попытаться выйти за рамки офисного использования, то неприметный инструмент может стать надежным помощником в квартире.

Если на ум приходит всего пара идей – не стоит отчаиваться. В статье будут приведены примеры использования органайзеров для папок в самых разных помещениях.

Применение на кухне

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

Установите пару таких организаторов на одной из полок, а затем положите в них бутылки для воды. Это особенно важно для большой семьи, где у каждого есть своя емкость, к примеру, для занятий спортом или похода в школу. Они будут компактно собраны в одном месте, что очень сэкономит пространство.

Надоело долго искать в ящике нужную капсулу для кофемашины или же любимый кофейный стик? Соберите капсулы вместе и поместите их в органайзер, чтобы не тратить время зря.

Также в нем можно хранить крышки от пластиковых контейнеров. Если не снимать их, то емкость занимает слишком много места. Но ведь и сами по себе крышки часто теряются. Если у вас имеются контейнеры одинаковой формы, то на дверцу кухонного шкафа можно прикрепить органайзер и сложить в него крышки. А сами емкости сложить друг в друга, а затем разместить на полке в этом же шкафу.

Прикрепив органайзер на дверцу шкафа, можно также сложить в него упаковки с пищевой пленкой, пергаментной бумагой или фольгой. Он отлично подойдет для хранения форм для выпечки или разделочных досок, а также клеенок, губок или пакетов для мусора.

Интересный вариант использования органайзера – морозильная камера. У вас словно появляется дополнительная полка. В органайзерах удобно хранить пакеты с мороженными овощами.

Организация вещей в доме

Тут креативность срабатывает лишь частично. Но помимо бумаг и документов, в организации нуждаются куда больше вещей.

Этот элемент офисной жизни придет на помощь любителям упаковывать подарки. Остается множество различных кусков неиспользованного материала, которые необходимо где-то хранить. А с помощью органайзера их можно рассортировать и всегда находить нужное.

Рукодельницы непременно оценят удобство хранения пряжи и других материалов. Их также можно рассортировать по цвету или другим признакам.

Модницам и красавицам органайзер поможет упорядочить палетки для макияжа или же аксессуары – клатчи, легкую обувь, кошельки или даже складные зонты.

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

Использование в качестве мебели

Органайзер для папок может выполнять и такую функцию, заменяя мелкую мебель. Если закрепить его под столешницей тумбочки у входной двери, то получится неплохой органайзер для почты.

Он также может служить угловой полкой. На ней можно разместить ключи или другие мелкие предметы, которые необходимы, но занимают слишком много места в основном пространстве. Для этих целей стоит выбирать держатели для журналов из прочных материалов – дерево, металл.

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

Недостаточно места в спальне для полноценной тумбочки, а телефон и будильник валяются на полу? Возьмите два держателя для папок и соедините между собой в горизонтальном положении. Присоедините ножки – тумбочка для необходимых мелочей готова. Поэкспериментировав с расположением держателей, можно создать даже журнальный столик, которому «Икея» может только позавидовать.

Экономия места в ванной комнате

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

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

В органайзерах удобно хранить небольшие полотенца или мочалки. Полотенца достаточно свернуть трубочкой.

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

Другие варианты использования

ДИАГРАММЫ ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ

12.2. Назначение и состав диаграммы вариантов использования

Диаграмма вариантов использования (сценариев поведения, прецедентов) является исходным концептуальным представлением системы в процессе ее проектирования и разработки. Данная диаграмма состоит из актеров, вариантов использования и отношений между ними. При построении диаграммы могут использоваться также общие элементы нотации: примечания и механизмы расширения.

Суть данной диаграммы состоит в следующем [28]: проектируемая система представляется в виде множества актеров, взаимодействующих с системой с помощью так называемых вариантов использования. При этом актером (действующим лицом, актантом, актором) называется любой объект, субъект или система, взаимодействующая с моделируемой системой извне. В свою очередь вариант использования – это спецификация сервисов (функций), которые система предоставляет актеру. Другими словами, каждый вариант использования определяет некоторый набор действий, совершаемых системой при взаимодействии с актером. При этом в модели никак не отражается то, каким образом будет реализован этот набор действий.

В структурном подходе аналогом диаграммы вариантов использования являются диаграммы IDEF0 и DFD, вариантов использования – работы (IDEF0) и процессы (DFD), актеров – внешние сущности (DFD).

Согласно UML актера графически можно отобразить тремя способами.

a) «проволочный человечек»б) класс с текстовым
стереотипом «actor»
в) произвольная иконка

Рис. 12.2. Примеры отображения актеров

Первый способ отображения в виде «проволочного человечка» является самым распространенным.

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

Рис. 12.3. Примеры вариантов использования

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

Варианты использования могут включать в себя описание особенностей способов реализации сервиса и различных исключительных ситуаций, таких как корректная обработка ошибок системы.

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

Рис. 12.4. Пример примечания

Связи между актерами и вариантами отображаются с использованием отношений четырех видов:

Применительно к рассматриваемой диаграмме отношение ассоциации служит для обозначения взаимодействия актера с вариантом использования.

Рис. 12.5. Пример ассоциации

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

Отношение обобщения служит для указания того факта, что некоторая сущность А может быть обобщена до сущности В. В этом случае сущность А будет являться специализацией сущности В. На диаграмме данный вид отношения можно отображать только между однотипными сущностями (между двумя вариантами использования или двумя актерами).

Графически данное отношение обозначается сплошной линией со стрелкой, в виде незакращенного треугольника, от потомка к родителю.

Рис. 12.6. Примеры обобщения

Отношения включения и расширения являются частным случаем отношения зависимости и могут иметь место только между двумя вариантами использования. Они отображаются штриховой стрелкой с указанием стереотипа.

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

Рис. 12.7. Пример включения

Стрелка включения должна быть направлена от базового (составного) варианта к включаемому и помечена стереотипом «include» (англ. включает) или «uses» (англ. использует).

В отличие от отношения включения, отношение расширения определяет потенциальную возможность включения поведения одного варианта использования в состав другого. Т. е. дочерний вариант использования может как вызываться, так и не вызываться родительским.

Стрелка расширения должна быть направлена от включаемого варианта к базовому и помечена стереотипом «extend» (англ. расширяет).

Рис. 12.8. Пример расширения

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

Варианты использования, которые расширяют базовый, подключаются к нему (активируются при его выполнении) через так называемые точки расширения (англ. extension points). Каждая точка расширения маркируется меткой (на рис. 12.8 — calculateH) и условием (англ. condition) активации. Обычно перечень точек расширения указывается в базовом варианте использования ниже горизонтальной линии.

12.3. Правила и рекомендации по разработке диаграмм вариантов использования

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

1. Рекомендуется вначале построить контекстную диаграмму, на которой отображаются основные варианты использования (функции) системы, а затем для каждого из них построить диаграммы декомпозиции (детализации).

2. Контекстная диаграмма может представлять собой несвязный граф (в отличие от IDEF0 и DFD).

3. Чрезмерная детализация вариантов использования не требуется. Следует помнить, что вариант использования – это относительно крупный блок функциональности системы. Для детализации в дальнейшем будут использоваться другие виды диаграмм, более подходящие для этой цели.

4. Для лучшего восприятия отдельная диаграмма (контекстная или декомпозиции) не должна быть перенасыщена элементами. Рекомендуется отображать на диаграмме не более 15 вариантов использования.

5. Располагать элементы следует так, чтобы была видна логическая последовательность выполнения вариантов использования и было минимум пересечений между отношениями.

6. Перед построением диаграммы необходимо задокументировать потоки событий в системе. Поток событий – это процесс обработки данных, реализуемый в рамках одного или нескольких вариантов использования. Описание потока включает информацию о том, какие обязанности возлагаются на актеров, а какие – на систему. Оно содержит:

— краткое описание поведения, реализуемого в варианте использования;

— предусловия – условия, которые должны быть соблюдены, прежде чем вариант использования может быть задействован. Например, таким условием может быть завершение выполнения другого варианта использования или наличие у пользователя прав доступа;

— основной поток событий описывает, что должно происходить во время выполнения варианта использования в наиболее распространенном (типовом) случае. В этом случае дочерние варианты использования связаны с базовым отношением включения;

— альтернативные потоки событий описывают исключительные ситуации (например, ввод неправильного пароля или необходимость выполнения дополнительных действий). Дочерние варианты использования при разработке диаграммы связываются с базовым отношением расширения;

— постусловия – условия, которые должны быть выполнены после завершения варианта использования. Например, таким условием может быть обязательное сохранение результатов расчета в базе данных на сервере.

7. На диаграммах не следует отображать особенности реализации вариантов использования и внутренней организации системы, связанные со спецификой используемых программных и аппаратных средств. Данные диаграммы в первую очередь предназначены для совместного с заказчиком определения функциональных требований к системе. Поэтому понимать (интерпретировать) отображенное на диаграммах и заказчик и разработчик должны одинаково.

12.4. Примеры построения диаграмм вариантов использования

В качестве примера в этой и последующих разделах будет использоваться проект системы ИСКРА-ПУТЬ, применяемой в службах пути всех железных дорог России. Описание системы приводится в теме № 6. На следующем рисунке показана контекстная диаграмма вариантов использования, разработанная с помощью Case-средства Borland Together Architect 2006 for Eclipse.

Рис. 12.9. Контекстная диаграмма вариантов использования системы определения допускаемых скоростей

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

Читать еще:  Гипертонус мышц спины

На рис. 12.10 отображена диаграмма декомпозиции для варианта использования «Определение допускаемых скоростей».

Диаграммы декомпозиции, как правило, представляют собой «ромашку», в центре которой декомпозируемый вариант использования, а вокруг – входящие в него обязательные (include) или расширяющие (extend) составные части.

Рис. 12.10. Диаграмма декомпозиции варианта использования «Определение допускаемых скоростей»

Вопрос по ios, architecture, design-patterns, use-case &#8211 Вариант использования с двумя способами для одного действия

Вопрос 1: Как правильно построить Вариант использования (или более одного) с двумя способами выполнить одно и то же действие?

У меня есть 3 экрана в приложении для iOS:
1. Вид карты, который можно «долго нажимать» и имеет кнопку камеры.
2. Вид камеры, который отображается, если пользователь нажимает кнопку камеры в режиме карты.
3. Вид редактирования места / булавки, который отображается, если пользователь «долго нажимает» на вид карты или после того, как пользователь выбирает фотографию на виде с камеры. Этот вид редактирования имеет кнопку сохранения, чтобы фактически создать место с фотографией и местоположением (координата долгого нажатия или текущее местоположение в случае нажатия кнопки камеры).

Название: Создать место Основной поток:
1. Пользователь «долгое нажатие» на карте.
2. Приложение сбрасывает временный штифт и отображает вид редактирования места.
3. Пользователь редактирует информацию о месте и нажимает кнопку сохранения.
4. Приложение создает место и сохраняет его.

Название: Создать место Основной поток:
1. Пользователь нажимает кнопку «плюс».
2. Приложение отображает вид с камеры.
3. Пользователь делает снимок.
4. Приложение создает место с текущим местоположением и изображением.

ОБНОВЛЕНИЕ на основе комментариев, которыми обмениваются с Bhavik.

Вопрос 2: (Основываясь на ответе Бхавика)
Так что мне точно не нужен один докладчик для одного интерактора, у меня может быть 1 интерактор и 3 докладчика / просмотра.

В моем случае у меня должен быть один ведущий / вид для карты, где она начинается,
тогда у меня должен быть один ведущий / просмотр для камеры, в случае, если пользователь нажимает кнопку камеры
и один презентатор / вид для вида редактирования, в случае, если пользователь «долго нажимает» или после того, как пользователь выбирает фотографию из презентера / вида камеры и перенаправляется на тот же вид редактирования.

Вопрос 3: Должны ли мои граничные методы для интерактора всегда возвращать void?
В примере Бхавика они что-то возвращают, но вБлог VIPER а такжевидео дяди Боба они всегда возвращают void, и результат приходит в виде другого граничного метода, который интерактор вызывает для презентатора / контроллера.

Вопрос 4: Способ VIPER не использует контроллер, только презентатор, чтобы общаться с интерактором, когда видео дяди Боба использует контроллер и презентатор для различных взаимодействий с интерактором. Какой подход я должен выбрать?

Вопрос 5: Если мой вариант использования похож на «Перейти на другой экран», должен ли он иметь интерактивный интерфейс? Поскольку текущее представление сообщит своему докладчику, какая кнопка была нажата (в какое представление перейти), и этот текущий докладчик сообщит своему каркасу «перейти на этот другой каркас».

Вопрос 1: Как правильно построить Вариант использования (или более одного) с двумя способами выполнить одно и то же действие?

В проекте VIPER вы можете создать два метода в одном и том же Interactor, подходящем для каждого основного и альтернативных вариантов использования.

Вопрос 2: (Основываясь на ответе bhavik) Так что мне не нужен точно один докладчик для одного интерактора, у меня может быть 1 интерактор и 3 докладчика / представления.

Основываясь на нашем обсуждении и ваших обновлениях, я думаю, что понимаю это лучше.

Presenter / View не должен взаимодействовать с более чем на Interactor.Presenter / View может вообще не взаимодействовать с каким-либо Interactor, как в случае CameraView .Они являются промежуточными взглядами, как в Wizards.Несколько Presenter / View могут взаимодействовать с одним Interactor.Interactor не привязывается ни к одному предъявителю.Single Interactor отвечает за один вариант использования и все его альтернативные потоки. 1-1 отношения.

Итак, вы должны иметь один EditPlacePresenter/View за EditPlaceInteractor Передача данных Поместите данные с или без фото.

Вопрос 3: Должны ли мои граничные методы для интерактора всегда возвращать void?

В примере с bhavik они что-то возвращают, но в блоге VIPER и видео дяди Боба они всегда возвращают void, и результат приходит в виде другого граничного метода, который интерактор вызывает для презентатора / контроллера.

Я думаю, что вы имеете в виду приведенный ниже метод Presenter, который получает результаты от Interactor.

Чтобы вышеперечисленное сработало, у Interactor будут экземпляры делегатов, которые будут подключены / исправлены презентатором / контроллером в поисках результата или данных. Это означает, что Presenter / Controller привязан к Interactor или их ссылка или указатель функции возврата передаются в каждом вызове метода Interactor. Это по замыслу?

Я думаю, Interactor должен возвращать данные в соответствии с вариантом использования. Например, Interactor должен вернуть EditPlaceResult с успехом или неудачей.

В случае успеха он должен включать сохраненные данные, например, идентификатор места.Если не удалось, следует указать причину сбоя.

Это должно быть частью варианта использования. Если нет, то ничего не должно возвращаться. Он вернет void, и Presenter запросит отдельный Interactor, чтобы проверить, было ли успешно добавлено Map Place или нет.

Presenter содержит логику просмотра для подготовки контента к отображениюпо получении от Интерактора.Это до предъявителя, чтобы взять данныевозвращается Интерактором и отформатировать его для презентации.Ведущийполучает результаты из Interactor и преобразует результаты в форму, которая эффективна для отображения в представлении.

Вопрос 4: Способ VIPER не использует контроллер, только презентатор, чтобы общаться с интерактором, когда видео дяди Боба использует контроллер и презентатор для различных взаимодействий с интерактором. Какой подход я должен выбрать?

Вам необходимо определить маршруты VIPER для следующей навигации:

Кнопка камеры: навигация от MapView в CameraView (Использовать местоположение)Длительное нажатие: навигация от MapView в EditPlaceView (Используйте координаты)Снимок сделан: навигация от CameraView в EditPlaceView Сохранить место: Отправить Interactor запрос на сохранение места с / без фотографии в зависимости от обстоятельств и вернуться к MapView если успешноКнопка «Назад»: возврат к предыдущему виду на основе стека навигации

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

VIPER Wireframe управляет навигацией и делает контроллеры вида более экономными, то есть машинами управления видами.

В основном, Wireframe абстрагирует удаленный контроллер навигации и вместо этого предоставляет определение маршрута.

Каркасный

Владеет UINavigationController и UIViewControllerОтвечает за создание View / ViewController и установку его в окнеМаршрутизация определена в Каркасах и содержит логику навигации для описания того, какие экраны показаны в каком порядке.

Ведущий

Использует каркас для выполнения навигацииЧтобы сохранить контроль над представлениями, VIPER необходимо предоставить View Controllers способ информировать заинтересованные стороны, когда пользователь предпринимает определенные действия — докладчики приходят сюда!Контроллер представления не должен принимать решения на основе этих действий, но он должен передавать эти события чему-то, что может — докладчики должны принимать решения!

Вопрос 5: Если мой вариант использования похож на «Перейти на другой экран», должен ли он иметь интерактивный интерфейс? Поскольку текущее представление сообщит своему докладчику, какая кнопка была нажата (в какое представление перейти), и этот текущий докладчик сообщит своему каркасу «перейти на этот другой каркас».

Нет. Навигация как часть варианта использования может не нуждаться в Interactor. Это только переход. Целевой докладчик может нуждаться в интеракторе. Например, CameraView/Presenter не требуется Interactor, но EditPlaceView нужно сохранить место.

В целом: идея архитектурных шаблонов состоит в том, чтобы разделить данное программное приложение на взаимосвязанные части, чтобы отделить внутреннее представление информации от способов, которыми информация представляется или принимается от пользователя. MVC, MVP, MVVM, VIPER все сосредоточены на изоляции Вид, Логика и Навигация, так или иначе.

Архитектурные образцы ограничены в том, что они намерены разложить. Мы должны понимать, что архитектурные образцы не разлагают и не изолируют все. Также, если один архитектурный шаблон делегирует определенные обязанности определенной части, другой не делает этого вообще, возможно, или назначает множественные обязанности одной части.

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

Вопрос: Что делать, если 2 варианта использования связаны с одним и тем же докладчиком / представлением? Например, у меня есть докладчик / вид, который

Проверяет, вошел ли пользователь в систему, а такжеЗапрашивает авторизацию местоположения пользователя, прежде чем делать что-либо еще.

Ответ

Моделирование вариантов использования

Кажется, вы имеете дело с нетривиальными сценариями моделирования сценариев использования.

«Проверка логина» не требует использования. Точно так же, если авторизация местоположения не обновляется как часть параметров конфигурации, то это также не вариант использования. Они не являются хорошими кандидатами для моделирования прецедентов, а скорее являются предварительными условиями или «шагами» в других сложных прецедентах. Я думаю, что они больше похожи на предварительные условия, чем на «шаги» и, конечно, не на отдельные «варианты использования» сами.

Предварительные условия должны сопровождаться исключениями прецедентов и нетривиальными «шагами», подсказками прецедент-повторное использование через include-зависимости. Если предварительные условия не выполняются, вы можете предоставить соответствующие сообщения и опции для выполнения этих условий. Для сложных шагов, один вариант использования перенаправить на другой вариант использования.

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

Цель состоит в том, чтобы разбить сложные требования и повторно использовать их. Цитировать изПовторное использование варианта использования — включение зависимости, «Вы используете включаемые зависимости всякий раз, когда одному варианту использования требуется поведение другого. Представление нового варианта использования, который инкапсулирует похожую логику, которая встречается в нескольких случаях использования, является довольно распространенным».

В VIPER WayИнтеракторы должны знать о других Интеракторах, если это необходимо.Правила и предварительные условия должны быть подтверждены в Interactors или в Entities по мере необходимости.Интеракторы должны возвращать соответствующие данные для докладчиков.Докладчики НЕ должны знать о других докладчиках, которые являются частью других вариантов использования.Докладчики должны отправлять запросы в Wireframe.Каркас должен позаботиться о соответствующей навигации по различным представлениям.

CreatePlaceInteractor следует взять зависимость от UserLogInInteractor а также LocationAuthorizationInteractor и звоните им при необходимости.Или же CreatePlaceInteractor должен отправить назад данные, которые Presenter может интерпретировать, и попросить запустить Wireframe UserLoginPresenter и / или LocationAuthorizationPresenter .

Это будет включать тщательно разработанные взаимодействия и навигацию для потока управления и потока данных с использованием Interactors, Presenters и Wireframes. В процессе вы будете подвергать сомнению множество основных предположений и скрытое необработанное поведение системы.

Поскольку другие варианты использования могут также включать в себя вход пользователя в систему или авторизацию доступа для завершения своей задачи, эти варианты использования должны быть включены, но не обязательно выполняться постоянно — вызов условной функции для UserLogInInteractor и LocationAuthorizationInteractor. Если пользователь вошел в систему и доступ для авторизации уже разрешен, они будут пропущены. Когда пользователь выбирает CameraView, проверьте его для входа в систему и доступа к местоположению. Когда пользователь выбирает EditView непосредственно из MapView, проверьте наличие только входа пользователя.

Я думаю, что вы должны внедрить логику предварительных условий в ваши Interactors, и Presenter может использовать ее для принятия решений, связанных с презентациями и навигацией.

Учитывая следующий список вариантов использования:

«UC001: Вход пользователя».Msgstr «UC002: Получить авторизацию доступа к местоположению».»UC003: Показать карту».»UC004: Создать место на карте».UC004: Создать место на карте (с предварительными условиями)

Пользователь вошел в систему.Доступ к местоположению был авторизацией.

Если предварительные условия НЕ выполнены, выполните соответствующие исключения.Другие шаги для «Создать место на карте»UC004-E1: пользователь НЕ вошел в систему или сеанс истек

Показать соответствующее сообщение пользователю для входа или сеанса истекло и предоставить параметр входа (кнопка).прекратить использование [пользователь может вернуться к просмотру карты или перейти к экрану входа]UC004-E2: Доступ к местоположению НЕ авторизован.

Читать еще:  Больно наступать на пятку при ходьбе

Покажите пользователю соответствующее сообщение для настройки доступа к местоположению и укажите параметры настройки (кнопка) в конфигурации.прекратить использование [пользователь может выбрать возврат к просмотру карты или перейти к настройкам параметров]UC004: Создать место на карте (без предварительных условий)

Убедитесь, что пользователь вошел в систему и сеанс пользователя активен. Если нет, запустите UC001.Проверьте, авторизовал ли пользователь ранее доступ к местоположению. Если нет, покажите соответствующее сообщение и запустите UC002.Другие шаги для «Создать место на карте»UC004> UC001: пользователь НЕ вошел в систему или сеанс истек

Показать соответствующее сообщение пользователю для входа или сеанса истек и запустить UC001Пользователь успешно вошел в систему, продолжайте UC004 Шаг # 2Пользователь не вошел в систему успешно, прекратить использование.UC004> UC002: доступ к местоположению НЕ авторизован

Показать соответствующее сообщение пользователю для авторизации местоположения и запустить UC002Авторизация пользователя успешно завершена, продолжайте UC004 Шаг № 3Пользователь не авторизовал доступ к местоположению, прекратить использование.

Как и зачем писать Use Cases

Создание эффективных Use Cases (далее используется термины «варианты использования», «сценарии», «юзкейсы») — must have навык любого аналитика. Ведь в некоторых случаях без описанных сценариев не обойтись намного сложнее, чем с ними.

Следующие заметки будут полезны начинающим бизнес аналитикам, системным аналитикам, а также студентам.

Что такое Use Case

На собеседовании порой можно услышать следующее определение «Это такая UML-диаграмма с человечками и овалами». Давайте разберемся, что это такое, и рассмотрим несколько простых примеров.

Use Case описывает сценарий взаимодействия участников (как правило — пользователя и системы). Участников может быть 2 и больше. Пользователем может выступать как человек, так и другая система.

Мне нравится определение из книги Коберна (советую, ее, кстати, всем аналитикам): «Вариант использования фиксирует соглашение между участниками системы о ее поведении. Вариант использования описывает поведение системы при ее ответах на запрос одного из участников, называемого основным действующим лицом, в различных условиях».

В жизни встречала такие названия: варианты использования, юзкейс, сценарий, прецедент, сценарий использования.

Текст vs диаграмма/схема

Какое описание лучше: текстовое или диаграмма? Выбор за вами и вашей командой. В первые годы работы я использовала диаграммы либо диаграммы + текстовое описание к ним. Сейчас я предпочитаю текстовое описание сценариев, и объясню почему:

  • Такой формат более понятен заказчикам (а они тоже предпочитают читать и согласовывать варианты использования).
  • Текст проще и быстрее отредактировать, чем диаграммы и текст.

Конечно, если в вашем проекте очевидны дополнительные преимущества от использования диаграмм — надо их использовать.

Кому и в каких случаях нужны сценарии

— Разработчикам. Очень удобно, когда ветвистое требование описано при помощи основного и альтернативного потока событий. Все четко и понятно: кто, когда и что вызывает, и что получается в результате. В моем последнем проекте менеджер исповедовал подход: минимум описаний, максимум общения. Но для нескольких сложных сценариев разработчики сами просили сделать подробное описание, и юзкейсы отлично подошли.

— Заказчикам. Описано человеческим языком, заказчик своевременно может подтвердить, что это именно то, чего он ждет, или поправить.

— Тестировщику. Почти готовый тест-кейс 🙂

— Всей проектной команде. Если сценарий нужно согласовать, а на каждом совещании пара-тройка альтернативных вариантов сценария звучит иначе, поможет строго описанный поток событий.

А также другим участникам процесса.

В каких случаях они нужны:

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

— Для поддержки системы. Чтоб выявить ошибку, разобраться, на каком шаге что пошло не так.

— Если вам нужно описать какую-то часть функциональности, работы пользователя с интерфейсом, etc. в виде сценария. Тогда вы можете взять шаблон юзкейса за основу и использовать его для описания сценария. Например, основу требований к вашему мобильному приложению составляет описание пользовательского интерфейса. Но выполнение некоторых функций имеет много нюансов, которые нужно дополнительно описать при помощи таблички: «действие — отклик системы», или даже совместить такую табличку со сценарием.

Как их описывать

Давайте рассмотрим пару примеров, они говорят сами за себя.

Пример 1. Разблокировать учетную запись пользователя (простой короткий пример, без альтернативного потока событий):

Успешный сценарий:

  1. Администратор выбирает пользователя и активирует «Разблокировать».
  2. Система переключает учетную запись пользователя в статус «активный», и посылает сообщение (тут можно сослаться на текст сообщения из списка сообщений, см. примечание ниже) пользователю на email (если «User Account → email» не пусто).
Действующие лицаАдминистратор, Система
ЦельИзменить статус учетной записи пользователя на «активный».
ПредусловиеУчетная запись пользователя не активна.
РезультатУчетная запись пользователя была переведена в статус «активный».

Пример 2. Авторизация пользователя:

Успешный сценарий:

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

Важные моменты

— Очевидно, что если Пример 1 можно было безболезненно описать простым текстом, то Пример 2 намного лучше воспринимается в виде сценария. Но если у вас вся функциональность описана в виде юзкейсов, то лучше описывать юзкейсами даже очень простые сценарии, из пары шагов. Пусть ваша спецификация будет в едином стиле.

— Используйте минимальное количество слов и пунктов, необходимых для однозначного понимания сценария. Если юзкейс получается слишком длинный, возможно, лучше будет разбить его на несколько. С очень длинными сценариями, с большим количеством расширений, работать крайне неудобно.

— Если в двух и более сценариях повторяется одинаковый набор шагов, есть смысл вынести эти шаги в отдельный сценарий, и ссылаться на них. Документ будет легче. А если что-то в этих шагах поменяется, то достаточно будет изменить в одном месте.

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

— Перечитайте документ со сценариями, перед тем, как отдавать его разработчикам или заказчикам. Лучше даже несколько раз. Всегда находятся моменты, которые можно описать лаконичнее, или выявляются какие-то несоответствия. Или случайные «копипасты». Уважайте время и головы других людей.

— Кстати, про «копипасты». Незаполненную табличку для описания юзкейса есть смысл «копипастить».

— Как видно из примеров выше, расширение к шагу номер 1 указывается в разделе «Расширение» как 1а, 1б, и т.д. Расширение *а — это общее расширение к сценарию, не к конкретному.

Правильных и полезных вам сценариев! Вопросы, примеры, предложения, комментарии приветствуются. Спасибо за внимание.

При написании статьи я использовала материалы из книги Алистера Коберна «Современные методы описания функциональных требований к системам».

Основы UML — диаграммы использования (use-case)

Это первая статья из цикла про методологию ICONIX, посвящена UML-диаграммам вариантов использования. В публикациях и книгах по ICONIX, use-case диаграммы обычно описываются очень бегло, а в книгах по UML — слишком подробно. Я постараюсь сделать это настолько подробно, чтобы можно было приступить к использованию диаграмм, но при этом не было скучно. Важно, что до тех пор, до знакомства с ICONIX я не считал use-case диаграммы хоть сколько-нибудь полезными, поэтому в статье я попробую сконцентрироваться на том, что они могут принести проекту.

Вне зависимости от методологии разработки, которую вы применяете, первым этапом разработки будет являться формулировка требований к продукту (Градди Буч описывает Rational Unified Process [1], а Розенберг — ICONIX [2]). Набор требований к продукту представляет собой техническое задание, при этом требования делятся на функциональные (то, что система позволяет сделать, желаемая функциональность) и нефункциональные (требования к оборудованию, операционной системе и т.п.). В языке UML для формализации функциональных требований применяются диаграммы использования.

Диаграмму вариантов использования есть смысл строить во время изучения технического задания, она состоит из графической диаграммы, описывающей действующие лица и прецеденты, а также спецификации, представляющего собой текстовое описание конкретных последовательностей действий (потока событий), которые выполняет пользователь при работе с системой. Спецификация затем станет основой для тестирования и документации, а на следующих этапах проектирования она дополняется и оформляется в виде диаграммы (в рамках ICONIX используется диаграмма последовательности, но в UML для этого имеются также диаграммы деятельности). Кроме того, use-case диаграмма достаточно проста, чтобы ее мог понять заказчик, следовательно вы можете использовать ее для согласования ТЗ (ведь диаграмма описывает функциональные требования к системе).

На диаграмме использования изображаются:

  • акторы — группы лиц или систем, взаимодействующих с нашей системой;
  • варианты использования (прецеденты) — сервисы, которые наша система предоставляет акторам;
  • комментарии;
  • отношения между элементами диаграммы.

На мой взгляд, наиболее правильный порядок построения диаграммы следующий:

  1. выделить группы действующих лиц (работающих с системой по-разному, часто из-за различных прав доступа);
  2. идентифицировать как можно больше вариантов использования (процессов, которые могут выполнять пользователи). При этом не следует делить процессы слишком мелко, нужно выбирать лишь те, которые дадут пользователю значимый результат. Например, кассир может «продать товар» (это будет являться прецедентом), однако «ввод штрих-кода товара для получения цены» самостоятельным прецедентом не является;
  3. дополнить прецеденты словесным описанием (сценарием):
    • для каждого прецедента создать разделы: «главная последовательность» и «альтернативные последовательности»;
    • при составлении сценария нужно упорно задавать заказчику вопросы «что происходит?», «что дальше?», «что еще может происходить?» и записывать ответы на них.

Сценарии являются очень важной частью диаграмм использования, хотя их формат и не регламентирован. Ряд авторов предлагает использовать псевдокод для представления сценария и даже сразу строить диаграммы деятельности или взаимодействия, но на мой взгляд, наиболее предпочтительным вариантом на этапе построения use-case диаграмм является текстовый, описывающий систему с точки зрения пользователя (т.к. именно этот формат будет наиболее понятен заказчику, с которым вам предстоит согласовывать техническое задание).

Рассмотрим разработку диаграмм вариантов использования на примере — пусть заказчик дал нам следующее техническое задание:

Цель — развитие у детей математических навыков.
Платформа: Linux, Windows, Android.
Функциональность:

  • для учеников:
    • выбор подготовленного учителем блока заданий;
    • выполнение заданий;
  • для учителя:
    • подготовка для учеников блоков заданий;
    • добавление в систему ученика;
    • просмотр отчетов.

При первом запуске система должна позволять ввести пароль учителя. Задания представляют собой математические задачи на сложение, вычитание, умножение и деление. В блоке задач могут быть задачи различных типов (указывается количество). Помимо ввода типа выполняемой в примере операции необходимо указывать допустимые диапазоны чисел (или даже отдельные числа, т.к. при изучении таблицы умножения часто сначала учат умножение на 2, затем на 5, а только потом все остальное). Кроме того, для операции вычитания необходимо иметь возможность установить вычитаемое меньше уменьшаемого (т.к. в противном случае результат будет отрицательным, а отрицательные числа в школе проходят гораздо позже).

Читать еще:  Как быстро убрать живот в домашних условиях за неделю

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

Пример диаграммы использования

Сплошные линии на диаграмме представляют собой отношения ассоциации, отражающие возможность использования актором прецедента. После того, как определен набор вариантов использования, можно приступать к составлению сценариев. Сценарии должны описываться с точки зрения пользователя, при этом важно описывать взаимодействие пользователя с элементами интерфейса. Так например сценарий прецедента регистрации ученика мог бы выглядеть следующим образом:

Название прецедента: регистрация ученика

Действующее лицо: учитель

Цель: добавить ученика в систему, получив его пароль

Предусловия: учитель осуществил вход в систему

Главная последовательность:

  1. учитель выбирает в главном меню пункт «добавить ученика«;
  2. система показывает учителю окно добавления ученика, содержащее поля для ввода логина и пароля, а также кнопки «далее» и «назад»;
  3. учитель вводит желаемый логин и пароль ученика, нажимает кнопку «далее»;
  4. система добавляет ученика;
  5. учителю открывается главное меню и в течении 5 секунд выводится уведомление о том, что ученик был добавлен успешно.

Альтернативная последовательность (возврат в главное меню без добавления ученика):

  1. учитель выбирает в главном меню пункт «добавить ученика«;
  2. система показывает учителю окно добавления ученика, содержащее поля для ввода логина и пароля, а также кнопки «далее» и «назад»;
  3. учитель нажимает кнопку «назад»;
  4. учителю открывается главное меню (при этом данные, введенные в формы окна добавления ученика не сохраняются).

Альтернативная последовательность (добавление ученика, уже имеющегося в системе):

  1. учитель выбирает в главном меню пункт «добавить ученика«;
  2. система показывает учителю окно добавления ученика, содержащее поля для ввода логина и пароля, а также кнопки «далее» и «назад»;
  3. учитель вводит желаемый логин и пароль ученика, нажимает кнопку «далее»;
  4. учителю в течении 5 секунд отображается уведомление о том, что запрашиваемый логин занят.

Аналогичным образом должны быть прописаны все прецеденты, изображенные на диаграмме. Составлять сценарии нужно достаточно упорно чтобы описать все возможные варианты действий пользователя в системе. Заказчик может делать это с большим удовольствием, а программист за счет этого раньше узнает возможные пожелания заказчика (так из приведенного сценария он мог бы выяснить, что программа должна отображать всплывающие уведомления).

Несмотря на простоту приведенного сценария, в его последовательностях можно найти дублирование, если оно имеет место в ваших сценариях — вы можете выделить некоторые фрагменты описания в отдельные прецеденты (которые могут быть как самостоятельными, так и являться лишь частью других вариантов использования). При этом между прецедентами появится либо отношение расширения (extend), либо включения (include), которые отображаются на диаграммах (в UML также существует отношение обобщения, а в OML — вызова и предшествования).

Отношение включения указывает на то, что поведение одного прецедента включается в некоторой точке в другой прецедент в качестве составного компонента. Особенности включения заключаются в том, что включаемый прецедент должен быть обязательным для дополняемого (включение должно быть безусловным, а дополняемый вариант использования без включения не сможет выполняться), т.е. это это отношение задает очень сильную связь. Например, если мы хотим изобразить на диаграмме тот факт, что удаление набора задач учителем и выполнение задач учеником не должно происходить без обязательного просмотра всех наборов задач — то нам нужно использовать отношение включения:

Отношение включения на диаграмме использования

Отношение расширения отражает возможное присоединение одного варианта использования к другому в некоторой точке (точке расширения). При этом подчеркивается то, что расширяющий вариант использования выполняется лишь при определенных условиях и не является обязательным для выполнения основного прецедента. На диаграмме такой вид отношения изображается стрелкой, направленной к расширяемому прецеденту, в отдельном разделе которого может быть описана точка расширения, а условия расширения могут быть приведены в комментарии с ключевым словом Condition. Таким образом, расширение позволяет моделировать необязательное поведение системы, которое является условным и не изменяет поведение основного прецедента. Например отношение расширения нужно применить, если по техническому заданию требуется возможность удаления набора задач в прецеденте просмотра отчетов при условии, что все ученики решили этот набор.

Отношение расширения на диаграмме использования

Таким образом можно показать, что у учителя появляется возможность (но не обязанность) удалить набор задач при просмотре отчетов если все ученики выполнили этот набор.

На последней диаграмме используется символ комментария для задания условий расширения, при этом комментарий связывается пунктирной линией с отношением расширения, т.к. относится к нему. В ряде публикаций по UML и ICONIX предлагается описывать с помощью комментариев на диаграмме прецедентов:

  • нефункциональные требования к системе (при этом используется стереотип >);
  • сценарии вариантов использования (связывая комментарий с соответствующим прецедентом);
  • детали реализации и другие выводы, к которым разработчики пришли в процессе обсуждения задачи (не все с этим согласны, т.к. use-case диаграмма показывается заказчику, которому не нужны детали).

Наиболее типичными ошибками при построении этого вида диаграмм являются:

  • неправильное использование отношений расширения и включения, в том числе попытки использовать диаграммы для функциональной декомпозиции системы. Возникает из-за непонимания различий между этими двумя видами отношений и того, что use-case диаграмма должна выражать лишь требования к системе, а не детали ее реализации;
  • разработка диаграммы с точки зрения программиста, а не пользователя. В сценариях должны использоваться названия элементов управления (видимые пользователю), но нежелательно изображать детали реализации (такие как менеджер событий), не понятные заказчику;
  • не достаточная проработка сценариев:
    • отсутствие или недостаточное количество альтернативных последовательностей, в которых должен быть учтен, в том числе, ввод некорректных данных в систему;
    • описание действий пользователя без указания конкретных элементов интерфейса системы и отсутствие описаний реакции системы в сценариях.

Важно, что процесс ICONIX является итеративным, поэтому если вы допустите неточности на этапе разработке диаграмм использования — их можно будет найти и исправить на следующих этапах (в частности, пропущенные объекты могут быть выделены при работе над диаграммами робастности, а сценарии детально проработаны при построении диаграмм последовательности).

Стоит отметить, что нет единого мнения по поводу использования в текстах сценария условных операторов или циклов. Ряд аналитиков считают, что наличие слов типа «если» в сценарии является ошибкой, которая исправляется добавлением альтернативной последовательности. Другие — допускают использование 1-2 ветвлений в сценарии, при этом отмечают, что такой подход улучшает читабельность сценариев.

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

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

Действующее лицо (actor)

Диаграммы вариантов использования (прецедентов). Назначение, нотация, принципы построения. Сценарии к диаграммам вариантов использования (прецедентов).

Диаграммы вариантов использования описывают взаимоотношения и зависимости между группами вариантов использования и действующих лиц, участвующими в процессе. Другими словами, диаграммы вариантов использования говорят о том, что система должна делать, не указывая сами применяемые методы.

Диаграмма вариантов строится на языке UML в методологии SADT и основными элементами этой диаграммы являются варианты использования, девствующие лица и связи между ними.

Согласно Унифицированному процессу последовательность действий при построении модели вариантов использования (ВИ) можно выразить схемой, представленной на рис. 1.

Рис. 1. Обобщенная схема технологического процесса «Формирование требований»

Согласно схеме изначально разрабатывается диаграмма вариантов использования. При этом она может быть построена в нескольких видах: AS-IS, SHOULD-BE и TO-BE. Для диаграммы вида TO-BE определяется очередность (приоритеты) реализации вариантов использования. Детализация достигается за счет построения для каждого из вариантов использования набора остальных диаграмм, указанных выше (необязательно всех). На заключительном этапе разрабатываются прототипы пользовательского интерфейса и структурируется модель. Под структурированием модели понимается:

· унификация элементов модели;

· выделение общих и совместно применяемых частей вариантов использования;

· обеспечение семантической (смысловой) согласованности между диаграммами и их элементами.

Вариант использования (use case)

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

При работе с вариантами использования важно помнить несколько простых правил:

· каждый вариант использования относится как минимум к одному действующему лицу,

· каждый вариант использования имеет инициатора,

· каждый вариант использования приводит к соответствующему результату (результату с «бизнес-значением»).

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

  1. Включение указывает, что вариант использования встраивается в другой вариант использования. Пунктирная стрелка со стереотипом «include»
  2. Добавление указывает, что в определённых ситуациях или в некоторой точке (называемой точкой расширения) вариант использования будет расширен другим. пунктирная стрелка со стереотипом «extend» (стрелка входит в расширяемый прецедент, в дополнительном разделе которого может быть указана точка расширения и, возможно в виде комментария, условие расширения)

  1. Обобщение указывает, что вариант использования наследует характеристики «родительского» варианта использования и может переопределить некоторые из них или добавить новые, подобно наследованию в классах. Стрелка с незакрашенным треугольником (треугольник ставится у более общего прецедента)

Действующее лицо (actor)

Действующее лицо является внешним источником (не элементом системы), который взаимодействует с системой через вариант использования. Действующие лица могут быть как реальными людьми (например, пользователями системы), так и другими компьютерными системами или внешними событиями.

Действующие лица представляют не физических людей или системы, а их роли. Эти означает, что когда человек взаимодействует с системой различными способами (предполагая различные роли), он отображается несколькими действующими лицами. Например, человек, работающий в службе поддержки и принимающий от клиентов заказы, будет отображаться в системе как «участник отдела поддержки» и «участник отдела продаж».

Действующие лица могут иметь два типа связей с вариантами использования:

  1. Простая ассоциация — отражается линией между актером и вариантом использования (без стрелки). Отражает связь актера и варианта использования.

  1. Направленная ассоциация — то же что и простая ассоциация, но показывает, что вариант использования инициализируется актером. Обозначается стрелкой.

Описание варианта использования

Описания вариантов использования являются текстовыми пояснениями. Они обычно принимают форму заметки или документа, который каким-то образом прикрепляется к варианту использования и описывает процесс или активность.

Сценарий (scenario) — определенная последовательность действий, которая описывает действия актеров и поведение моделируемой системы в форме обычного текста.

В контексте языка UML сценарий используется для дополнительной иллюстрации взаимодействия актеров и вариантов использования. Предлагаются различные способы представления или написания подобных сценариев. Один из таких шаблоноврассматривается ниже и может быть рекомендован читателям для применения на начальных этапах концептуального моделирования (табл. 4.1).

Таблица 4.1. Шаблон для написания сценария отдельного варианта использования
Главный разделРаздел «Типичный ход событий»Раздел «Исключения»Раздел «Примечания»
Имя варианта использованияТипичный ход событий, приводящий к успешному выполнению варианта использованияИсключение № 1Примечания № 1
АктерыИсключение № 2Примечания № 2
Цель..
Краткое описание
Тип
Ссылки на другие варианты использованияИсключение № NПримечания № N

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

studopedia.org — Студопедия.Орг — 2014-2020 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.002 с) .

Ссылка на основную публикацию
Adblock
detector