Функциональные и нефункциональные требования к системе. Варианты использования системы.



Прецеденты и отношения между прецедентами.

Прецеден­ты (уровни описания):

- идеальный прецедент верхнего уровня (нет подробного описания);

- идеальный развернутый прецедент (содержит последовательность действий актанта и откликов системы без указания проектных решений) - составляет спе­циалист предметной области;

- реальный прецедент (последова­тельность действий актанта с указанием реакции системы в
терминах проектных решений)

- развернутый. Развернутый пре­цедент - в описании прецедента м.б. базовый поток действий и альтернативный поток.

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

Функциональные требо­вания - совокупность всех прецедентов.

Пример.Прецедент – занести учетный материал

Основной поток событий:

1. прецедент начинается с того, что пользователю предоставляются все разделы дисциплины;

2. пользователь выбирает нужный раздел;

3. система (актант) отображает имеющийся материал;

4. пользователь добавляет учебный материал;

5. система сохраняет изменения;

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

7. система сохраняет вопрос.

Альтернативный поток:

1. если нужный раздел дисциплины отсутствует, то пользователь создает новый раздел;

2. система сохраняет изменения, контролируя уникальность названия раздела.

Классификация прецедентов:

1. по степени использования проектных решений - от идеального до реального;

2. детальность описания – от краткого до развернутого;

3. степень законченности прецедентов: варьирование от конкретного прецедента к абстрактному.

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

Отношения между прецедентами:

Обобщение, расширение, включение.

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

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

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

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

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

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

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

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

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

 


Дата добавления: 2018-06-01; просмотров: 467; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!