Технологии разработки программного обеспечения


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


Функциональность элемента Use Case отображается графически в диаграмме последовательности (Sequence Diagram). Эта диаграмма отображает один из возможных путей в потоках событий элемента Use Case — например, добавление студента к курсу. Диаграммы последовательности содержат объекты и сообщения между объектами, которые показывают реализацию поведения. Рассмотрим диаграмму последовательности Add a Course для элемента Use Case Register for Courses (рис. 17.10).

1.      В окне браузера щелкните правой кнопкой по элементу Use Case Register for Courses.

2.      В появившемся контекстном меню выберите команду New:Sequence Diagram.

3.      В результате в дерево окна браузера будет добавлена диаграмма последовательности с именем New Diagram.

4.      Пока значок новой диаграммы остается выделенным, введите имя Add a Course.

Рис. 17.10. Создание диаграммы последовательности Add a Course

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

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

2.         Щелкнем по значку актера Student в браузере и перетащим его в диаграмму последовательности.

3.         Щелкнем по значку актера в диаграмме последовательности и введем его имя — Joe.

Сценарий, который мы собираемся формализовать с помощью диаграммы последовательности, уже существует — он является фрагментом текста, который содержит спецификация элемента Use Case Register for Courses.

В этом сценарии студент должен заполнить информацией (fill in info) регистрационную форму (registration form), а затем форма предъявляется на рассмотрение (submitted).



Очевидно, что необходим объект registration form, который принимает информацию от студента (рис. 17.12). Создадим форму и добавим два сообщения, «fillin info» и «submit».

1.      На панели инструментов щелкните по значку объекта (прямоугольнику).

2.      Для добавления объекта в диаграмму щелкните в нужном месте диаграммы.

3.      Пока объект остается выделенным, введите имя registration form.

4.      На панели инструментов щелкните по значку объектного сообщения (стрелке).

5.      Щелкните по пунктирной линии под актером Student и перетащите стрелку на пунктирную линию под объектом registration form.

6.      Пока стрелка остается выделенной, введите имя сообщения — fill in information.

7.      Повторите шаги 4-6 для создания сообщения submit.



Рис. 17.11. Диаграмма последовательности — Joe



Рис. 17.12. Диаграмма последовательности — Registration Form

Очевидно, что объект регистрационная форма является промежуточным звеном в цепи передачи информации. Следующее звено — объект-менеджер. Его надо добавить в диаграмму.

Далее форма должна послать сообщение менеджеру (manager) (рис. 17.13). Таким образом менеджер узнает, что студент должен быть добавлен к курсу, — положим, что Joe хочет получить курс math 101.



Рис. 17.13. Диаграмма последовательности — Manager

1.      На панели инструментов щелкните по значку объекта (прямоугольнику).

2.      Для добавления объекта в диаграмму щелкните в нужном месте диаграммы.

3.      Пока объект остается выделенным, введите имя manager.

4.      На панели инструментов щелкните по значку объектного сообщения (стрелке).

5.      Щелкните по пунктирной линии под объектом registration form и перетащите стрелку на пунктирную линию под объектом manager.



6.      Пока стрелка остается выделенной, введите имя сообщения — add Joe to Math 101.

Менеджер — один из объектов системы, который взаимодействует как с регистрационной формой, так и с набором объектов — учебных курсов. Для обслуживания нашего студента должен быть объект Math 101. Если такой объект существует, то Менеджер обязан передать объекту-курсу Math 101, что Joe должен быть добавлен к курсу (рис. 17.14).

1.      На панели инструментов щелкните по значку объекта (прямоугольнику).

2.      Для добавления объекта в диаграмму щелкните в нужном месте диаграммы.

3.      Пока объект остается выделенным, введите имя math 101.

4.      На панели инструментов щелкните по значку объектного сообщения (стрелке).

5.      Щелкните по пунктирной линии под объектом manager и перетащите стрелку на пунктирную линию под объектом math 101.

6.      Пока стрелка остается выделенной, введите имя сообщения — add Joe.



Рис. 17.14. Диаграмма последовательности — Math 101

Объект-курс не принимает самостоятельных решений о возможности добавления студентов. Этим занимается экземпляр класса Предложение курса (course offering). Назовем такой экземпляр (объект) Section 1.

Объект-курс обращается к объекту Section 1, если он открыт (в этом сценарии — ответ «да») с предложением добавить студента Joe (рис. 17.15).

1.      На панели инструментов щелкните по значку объекта (прямоугольнику).

2.      Для добавления объекта в диаграмму щелкните в нужном месте диаграммы.

3.      Пока объект остается выделенным, введите имя — section 1.

4.      На панели инструментов щелкните по значку объектного сообщения (стрелке).

5.      Щелкните по пунктирной линии под объектом math 101 и перетащите стрелку на пунктирную линию под объектом section 1.



6.      Пока стрелка остается выделенной, введите имя сообщения — accepting students?

7.      Повторите шаги 4-6 для создания сообщения add Joe.



Рис. 17.15. Диаграмма последовательности — Section 1



Рис. 17.16. Диаграмма последовательности — Billing System

Конечно, за учебу надо платить. Вопросами оплаты занимается Учетная система, а уведомляет ее о необходимости выписки счета менеджер. После того как менеджер удостоверился, что студенту Joe предоставляется возможность изучать курс math 101 (на диаграмме рис. 17.16 это не показано), уведомляется Учетная система (billing system).

1.      На панели инструментов щелкните по значку объекта (прямоугольнику).

2.      Для добавления объекта в диаграмму щелкните в нужном месте диаграммы.

3.      Пока объект остается выделенным, введите имя — bill.

4.      На панели инструментов щелкните по значку объектного сообщения (стрелке).

5.      Щелкните по пунктирной линии под объектом manager и перетащите стрелку на пунктирную линию под объектом bill.

6.      Пока стрелка остается выделенной, введите имя сообщения — send bill for Math 101 to Joe.

 


Содержание раздела