|
Программирование >> Дополнительные возможности наследования
Автомобиль Форсированный Двигатель ; , Performance Characteristics shift Point maxRPM accelerate Кузов Седан Купе Малолитражный Рис. 18.20. Отношение между объектом класса Автомобиль и связанным с ним силовым классом Клиент, 1.Проверяет сальдо -► 4.Снимае)со счета Расчетный счят 2.Принимает сальдо -> З.Показывает сальдо *.- 5.Подго1>авливает Квитанция б.Пвчатает Рис. 18.21. Диаграмма взаимодействия классов Эта простая диафамма показывает взаимодействие между несколькими классами проекта при определенной ситуации использования профаммы. Предполагается, что класс ATM делегирует классу Расчетный счет ответственность за учет остатка денег на счете, в то время как Расчетный счет делегирует классу ATM ответственность за доведение этой информации пользователю. Существует два вида диафамм взаимодействий классов. На рис. 18.21 показана диаграмма последовательности действий. Та же ситуащ1я, но в другом виде, изображена на рис. 18.22 и называется диаграммой сотрудничества. Диафамма первого типа определяет последовательность событий за некоторое время, а диафамма второго типа - принщ1пы взаимодействия классов. Диаграмму софудничества можно создать прямо из диафаммы последовательности. Такие средства, как Rational Rose, автоматически вьшолнят это задание после щелчка на кнопке.
4.Снимает со счета 3. Помзы вает сальд(у 2.Принимает сальдо Квитанция б.Печатает Рис. 18.22. Диаграмма сотрудничества Диаграммы переходив спсшпяний После того как стали понятными взаимодействия между объектами, надо определить различные возможные состояния каждого из них. Моделировать переходы между различными состояниями можно в диафамме состояний (или диафамме переходов состояний). На рис. 18.23 показаны различные состояния класса Расчетный счет при регистрации клиента в системе. Каждая диафамма состояний начинается с состояния Начало и заканчивается нулем или некоторым другим концевым состоянием. Каждое состояние имеет свое имя, и в переходах между состояниями могут быть установлены Сторожа, представляющие собой условия, при выполнении которых возможен переход от состояния к состоянию. Свврхсосшояноя Клиент может в любое время передумать и не регистрироваться. Он может это сделать после того, как вставил карточку или после ввода пароля. В любом случае система должна принять его запрос на аннулирование и вернуться в состояние Не зарегистрирован (рис. 18.24). Как видите, в более сложной диафамме, содержащей много состояний, указание на каждом щаге возможности перехода к состоянию Отмена внесет сумятицу. Особенно раздражает тот факт, что отмена является исключительным состоянием, отвлекающим от анализа нормальных переходов между состояниями. Эту диафамму можно упростить, используя сверхсостояние (рис. 18.25). Диафамма на рис. 18.25 дает ту же информацию, что и на рис. 18.24, но намного яснее и легче для чтения. В любой момент от начала регисфации и вплоть до ее завершения процесс можно отменить. Если вы это сделаете, то вернетесь в состояние Не зарегистрирован. Круглый маркер = start Начало Состояние первкода Состояние Сторож Кружок с окантовкой = end Начало Не зарегистрирован
Получение пароля Зарегистрирован Отмена Рис. 18.23. Переходы состояний класса Рас- Рис. 18.24. Отмена регистрации четный счет Начало Же зарегистрирован Отмена Г Зарегистрирован
Рис. 18.25. Сверхсостояние
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |