Спецификация поведения задачи



Спецификация поведения задачи (СПЗ) описывает ее интерфейс, структуру, вре­менные характеристики, относительный приоритет, логику упорядочения событий и обнаруживаемые ошибки. Интерфейс задачи – это способ ее взаимодействия с другими задачами. Структура говорит о том, как данная задача появилась (посредством какого критерия разбиения). Временные характеристики – это частота активизации и ожидаемое время выполнения. Полученная информация исполь­зуется для планирования в реальном времени.

СПЗ прилагается к описанию архитектуры задач. В процессе разбиения на задачи в СПЗ заносится информация о входных и выходных данных задачи. Часть СПЗ составляется позже, на этапе детального проектирования программы. Речь идет о логике упорядочения событий – описании того, каким обра­зом задача отвечает на входные события.

Проектирование классов 

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

Проектирование классов, скрывающих информацию

Скрывающие информацию классы, проектируемые на этом этапе, подразде­ляются на категории в соответствии со стереотипом. Они документируются с по­мощью спецификаций интерфейсов.

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

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

– интерфейсные классы, реализующие интерфейс с внешней средой, можно разделить на следующие группы:

классы интерфейса устройства, взаимодействующие с устройствами вво­да/вывода;                      

классы интерфейса пользователя, осуществляющие человеко-машинный интерфейс;

классы интерфейса системы, общающиеся с внешней системой или под­системой;

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

– классы прикладной логики, инкапсулирующие особенности логики и алго­ритмов приложения, подразделяются на классы бизнес-логики и классы ал­горитмов;

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

Проектирование операций классов 

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

Проектирование операций классов на основе модели взаимодействия. Операции классов определяются пу­тем рассмотрения того, как объект данного класса взаимодействует с другими объектами, поскольку взаимодействие двух объектов состоит в том, что один из них вызывает операцию другого. Рассматривая два взаимодействующих объекта, необходимо понять, чьи опе­рации вызываются. Следовательно, сообщению ставится в соответствие вызов операции. Имя сообщения отображается на имя операции, а параметры со­общения – на параметры операции.

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

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


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

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






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