Функциональные и нефункциональные требования к системе. Варианты использования системы.
Прецеденты и отношения между прецедентами.
Прецеденты (уровни описания):
- идеальный прецедент верхнего уровня (нет подробного описания);
- идеальный развернутый прецедент (содержит последовательность действий актанта и откликов системы без указания проектных решений) - составляет специалист предметной области;
- реальный прецедент (последовательность действий актанта с указанием реакции системы в
терминах проектных решений)
- развернутый. Развернутый прецедент - в описании прецедента м.б. базовый поток действий и альтернативный поток.
Альтернативный поток - последовательность действий, приводящих к такому же результату, либо не приводящий ни к какому результату.
Функциональные требования - совокупность всех прецедентов.
Пример.Прецедент – занести учетный материал
Основной поток событий:
1. прецедент начинается с того, что пользователю предоставляются все разделы дисциплины;
2. пользователь выбирает нужный раздел;
3. система (актант) отображает имеющийся материал;
4. пользователь добавляет учебный материал;
5. система сохраняет изменения;
6. пользователь добавляет вопросы по добавленному материалу и составляет варианты ответа с пометкой правильного ответа;
7. система сохраняет вопрос.
Альтернативный поток:
1. если нужный раздел дисциплины отсутствует, то пользователь создает новый раздел;
2. система сохраняет изменения, контролируя уникальность названия раздела.
|
|
Классификация прецедентов:
1. по степени использования проектных решений - от идеального до реального;
2. детальность описания – от краткого до развернутого;
3. степень законченности прецедентов: варьирование от конкретного прецедента к абстрактному.
Конкретный прецедент – известно кем и когда он инициируется и всегда полностью выполняется. Абстрактный прецедент, как правило, часть конкретного прецедента.
Отношения между прецедентами:
Обобщение, расширение, включение.
Для организации прецедентов их группируют в пакеты, так же как и классы. Кроме того, прецеденты можно организовать, определив между ними отношения обобщения, включения и расширения. Эти отношения применяют, чтобы выделить некоторое общее поведение, извлекая его из других прецедентов, которые его включают, или, наоборот, вариации, поместив такое поведение в другие прецеденты, которые его расширяют.
Отношение обобщения между прецедентами аналогично отношению обобщения между классами. Это означает, что прецедент-потомок наследует поведение и семантику своего родителя, может замещать его или дополнять его поведение, а кроме того, может быть подставлен всюду, где появляется его родитель, кроме того, как родитель, так и потомок могут иметь конкретные экземпляры. Отношение обобщения между прецедентами изображаются точно так же, как и обобщения между классами - в виде линии с незакрашенной стрелкой.
|
|
Отношение включения между прецедентами означает, что в некоторой точке базового прецедента инкорпорировано поведение другого прецедента. Включаемый прецедент никогда не существует автономно, а инстанцируется только как часть объемлющего прецедента. Можно считать, что базовый прецедент заимствует поведение включаемых.
Благодаря наличию отношения включения удается избежать многократного описания одного и того же потока событий, поскольку общее поведение можно описать в виде самостоятельного поведения, включаемого в базовые. Отношение включения является примером делегирования, при котором ряд обязанностей системы описывается в одном месте - во включаемом прецеденте, а остальные прецеденты, когда необходимо включают эти обязанности в свой набор.
Отношения включения изображаются в виде зависимости со стереотипом include. Чтобы специфицировать место в потоке событий, где базовый прецедент включает поведение другого, вы просто пишите слово include, за которым следует имя включаемого прецедента.
|
|
Отношение расширения применяют для моделирования таких частей прецедента, которые пользователь воспринимает как необязательное поведение системы. Тем самым можно разделить обязательное и необязательное поведение. Отношение расширения используется также для моделирования отдельных субпотоков, выполняемых только при определенных обстоятельствах. Наконец, их применяют для моделирования нескольких потоков, которые могут включиться в некоторой точке сценария в результате явного взаимодействия с актером.
Отношение расширения изображают в виде зависимости со стереотипом extend. Точки расширения базового сценария перечисляют в дополнительном разделе. Они являются просто метками, которые могут появиться в потоке базового прецедента. Прецедент может содержать несколько точек расширения, причем каждую по несколько раз, идентифицируемых по именам. Если определено несколько точек расширения, то расширяющие прецеденты будут последовательно выполняться в собственных потоках.
Организация прецедентов путем выделения общего поведения (отношение включения) и различных вариаций (отношение расширения) является важной составной частью процесса разработки простого сбалансированного и понятного набора прецедентов системы.
|
|
Немного о других возможностях. Прецеденты являются классификаторами и могут иметь атрибуты и операции, которые изображаются так же, как для классов. Атрибуты можно считать объектами внутри прецедента, которые требуется для описания его внешнего поведения, а операции - действиями системы, необходимыми для описания потока событий. Эти объекты и операции разрешается включать в диаграммы взаимодействия, чтобы специфицировать поведение прецедента. Как и ко всем остальным классификаторам, к прецедентам можно присоединять автоматы. Позволительно расценивать их как еще один способ описания прецедента.
Дата добавления: 2018-06-01; просмотров: 467; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!