Главная » Просмотр файлов » Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование

Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование (1037782), страница 89

Файл №1037782 Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование (Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование) 89 страницаДжим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование (1037782) страница 892017-12-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 89)

В разделе 22.3 мы рассматриваем, как можно с помощью состояний подавтоматов показать конечные автоматы, представленные на других диаграммах.При наличии двух или более параллельных подавтоматов между нимичасто необходимо установить некоторое взаимодействие. Это обсуждается в разделе 22.4. Здесь вводится стратегия взаимодействия, в которой используются значения атрибутов контекстного объекта.В разделе 22.5 вводится понятие предыстории, заключающееся в запоминании суперсостоянием своего последнего подсостояния перед исходящим переходом. В разделах 22.5.1 и 22.5.2 обсуждаются два видапредыстории – неглубокая и глубокая.22.2. Составные состоянияСоставные состояния содержат один или более вложенных подавтоматов.Составное состояние – это состояние, содержащее вложенные состояния.Эти вложенные состояния объединяются в один или более конечных автоматов, которые называют подавтоматами (submachines).

Для каждого подавтомата в пиктограмме композиции отведена собственная об+ласть. Области – это просто участки пиктограммы состояния, разделенные пунктирными линиями. Простой пример областей представлен на рис. 22.2.Вложенные подсостояния наследуют все переходы содержащих их суперсостояний.Вложенные состояния наследуют все переходы состояний, в которыеони входят. Это очень важный момент. Если, например, у самого составного состояния есть определенный переход, каждое из вложенныхв него состояний тоже имеет этот переход.Составное состояниеобласть 1Aобласть 2CBподавтомат 1подавтомат 2Рис.

22.2. Каждому подавтомату отведена своя область492Глава 22. Дополнительные аспекты конечных автоматовСоставное состояниеDEтерминальное псевдосостояниеFРис. 22.3. Терминальное псевдосостояниеКонечное псевдосостояние подавтомата относится только к его облас+ти. Таким образом, если подавтомат области 1 в примере на рис. 22.2достигает своего конечного состояния первым, эта область завершается, а область 2 продолжает выполнение. Если необходимо завершитьвыполнение всего составного состояния, можно использовать терминальное (terminate, завершающее) псевдосостояние, как показано нарис.

22.3. В этом примере все составное состояние завершается придостижении терминального псевдосостояния.Вложенные состояния также могут быть составными состояниями.Однако, как правило, необходимо по возможности стремиться к тому,чтобы вложенность составных состояний не превышала двух или трехуровней. При большей глубине вложенности автомат сложно воспринимать на диаграмме и понимать.Для сохранения ясности и простоты диаграммы состояний иногда необходимо скрывать детали составного состояния.

Показать, что состояние является составным, можно без явного отображения его структуры, добавив пиктограмму композиции (composition icon). Это необязательное дополнение, но очень полезное для обозначения того, что у состояния есть составные части, поэтому мы рекомендуем постоянно импользоваться. Пиктограмма композиции приведена на рис. 22.4.В зависимости от количества областей выделяют два типа составныхсостояний.1. Простое составное состояние – только одна область.2.

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

Простые составные состоянияПростые составные состояния содержат всего один вложенный конечный автомат.Простое составное состояние – это составное состояние, содержащеевсего одну область. Например, на рис. 22.5 показан автомат для классаISPDialer (модем). Этот класс отвечает за подключение к провайдеру Интернета. Состояние DialingISP – простое составное состояние, потомучто оно имеет всего одну область. В этом конечном автомате есть несколько интересных моментов.•Переход из DialingISP инициируется событием cancel, наследуемымвсеми подсостояниями подавтомата DialingISP. Это очень удобно, поскольку означает, что всегда при получении события cancel будетосуществляться переход из любого подсостояния в состояние NotConnected (не соединен).

Такое использование суперсостояний и подсостояний может существенно упростить автомат.•У подавтомата DialingISP одно входное псевдосостояние dial (наборномера) и два выходных псевдосостояния, notConnected и connected.Входное псевдосостояние изображается в виде кружка, которыйобычно размещается на рамке составного состояния (хотя такжеможет находиться внутри нее), и обозначает точку входа в подавтомат.

Аналогично выходное псевдосостояние, которое изображаетсяв виде кружка с перекрестьем, обозначает выход из подавтомата.ISPDialerDialingISPentry/ offHookdialWaitingForDialtoneDialing[dialtone]WaitingForCarrierdo/ dialISPвходноепсевдосостояниеafter(20 seconds)/ noDialtonenotConnectedafter(20 seconds)/ noCarriercancel[carrier]connectedвыходное псевдосостояниеNotConnectedConnectedentry/ onHookexit/ onHookdo/ useConnectionРис. 22.5. Конечный автомат класса ISPDialer494Глава 22. Дополнительные аспекты конечных автоматовВходные и выходные псевдосостояния очень полезны, поскольку позволяют определять разные пути входа и выхода из составных состояний. Они обеспечивают точки подключения, к которым подключаются переходы в/из других состояний.Вот полный пошаговый анализ автомата класса ISPDialer.1.

Вход в суперсостояние DialingISP осуществляется через входное псевдосостояние dial, и сразу же выполняется входное действие offHook(поднятие трубки) – модем «поднимает трубку».2. Осуществляется вход в единственную область и состояние WaitingForDialtone (ожидание тонального сигнала готовности).3. Ожидание в состоянии WaitingForDialtone длится максимум 20 секунд.4. Если тональный сигнал готовности не поступает в течение 20 секунд:4.1. осуществляется действие noDialtone (нет тонального сигнала готовности) и переход через выходное псевдосостояние notConnected в состояние NotConnected;4.2.

при входе в NotConnected телефон возвращается на рычаг (действие onHook);4.3. осуществляется переход в состояние stop (остановка).5. Если тональный сигнал готовности получен (т. е. сторожевое условие [dialtone] принимает значение true) в течение 20 секунд:5.1. переходим в состояние Dialing (набор), в котором осуществляется деятельность dialISP;5.2. по завершении деятельности dialISP происходит автоматический переход в состояние WaitingForCarrier (ожидание несущей);5.3. ожидание в состоянии WaitingForCarrier длится максимум 20 секунд.5.4.

Если в течение 20 секунд несущая не получена:5.4.1. осуществляется действие noCarrier (нет несущей) и переход через выходное псевдосостояние notConnected в состояние NotConnected;5.4.2. при входе в состояние NotConnected телефон возвращается на рычаг;5.4.3. осуществляется переход в состояние stop.5.5.

Если в течение 20 секунд несущая получена:5.5.1. происходит автоматический переход из суперсостоянияDialingISP через выходное псевдосостояние connected в состояние Connected;5.5.2. осуществляется действие useConnection (использованиесоединения) до его завершения;5.5.3. при выходе из Connected телефон возвращается на рычаг;22.2. Составные состояния4955.5.4. осуществляется переход в состояние stop.6. Если в любой момент нахождения в суперсостоянии DialingISP поступает событие cancel:6.1. немедленно осуществляется переход в состояние NotConnected;6.2. при входе в состояние NotConnected телефон возвращается на рычаг;6.3. осуществляется переход в состояние stop.22.2.2.

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

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

Автомат всей системы представлен на рис. 22.6.Этот автомат отражает две основные характеристики системы сигнализации.1. Если срабатывает датчик вторжения, блок сигнализации воспроизводит тревогу вторжения в течение 15 минут, после чего системавозвращается в исходное состояние Monitoring. Это регулируется местным законодательством.2. Если в ходе воспроизведения тревоги вторжения возникает пожар,происходит немедленный переход из состояния SoundingIntruderAlarmв состояние SoundingFireAlarm и начинает звучать сигнал пожарнойтревоги.

Это означает, что пожарная тревога всегда имеет более высокий приоритет, чем тревога вторжения.Initializing и Monitoring – составные состояния. Развернутый вид составного состояния Initializing представлен на рис. 22.7.496Глава 22. Дополнительные аспекты конечных автоматовBurglarAlarmSystemSystemActiveSoundingIntruderAlarmdeactivatefireSoundingFireAlarmintruderfireMonitoringafter(15 mins)SystemInactiveInitializingsensorErroractivateoffofferrorHandlingErrorРис. 22.6.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее