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

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

PDF-файл Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование, страница 52 Объектно-ориентированный анализ и проектирование (53090): Книга - 7 семестрДж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование: Объектно-ориентированный ан2019-09-18СтудИзба

Описание файла

PDF-файл из архива "Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 52 страницы из PDF

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

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

Обычно они не имеют особого значения, и их наносят на диаграмму, толькоесли это не загромождает ее.12.7.2. Сообщения создания и уничтоженияВ OO анализе обычно нас не интересует конкретная семантика создания или уничтожения объекта, но понимать, что происходит, необходимо. Поэтому уделим внимание этому вопросу.12.7. Сообщения273Сообщение создания объекта обычно изображается как сплошная линия с открытой стрелкой.

Создание объекта можно показать с помощью сообщения со стереотипом «create» (создать). Или можно послатьконкретное именованное сообщение создания объекта, которое такжеможет быть обозначено стереотипом «create». В C++, C# или Java операции создания объектов являются специальными операциями, которые называют конструкторами. Имя конструктора совпадает с именемкласса. Конструкторы не имеют возвращаемого значения, они могутиметь от нуля и более параметров. Например, для создания новогообъекта Account можно было бы послать сообщение Account() и инициализировать его атрибут accountNumber некоторым значением. Однакоконструкторы есть не во всех языках программирования.

Например,в Smalltalk было бы послано сообщение «create» init: accountNumber.Сообщение уничтожения объекта показывают сплошной линией с открытой стрелкой и стереотипом «destroy» (уничтожить). Уничтожениеозначает, что экземпляр классификатора, на который ссылается целевая линия жизни, больше не доступен для использования. Если у линии жизни есть «хвост», он должен завершаться большим крестомв точке уничтожения. Для уничтожения объектов нет возвращаемогозначения.В разных языках программирования семантика уничтожения различна. Например, в С++ уничтожение обычно явно обрабатывается программистом, и при уничтожении объекта гарантированно инициируется специальный метод (если он существует), называемый деструктором. Этот метод часто используется для проведения операций очистки,таких как высвобождение ресурсов, например файлов или соединенийс базой данных.

Вызов деструктора высвобождает память, выделенную под объект.В таких языках программирования, как Java и C#, уничтожение объектов обрабатывается виртуальной машиной с помощью механизма подназванием «сборка мусора». Например, если на объект Javaпрограммыбольше не ссылается ни один другой объект, он помечается как готовыйк уничтожению. Уничтожение произойдет в некоторый момент времени в соответствии с алгоритмом сборки мусора, но вы не знаете, когдаэто случится! У объектов в Java и C# могут быть методы«финализаторы», которые будут исполняться в момент реального уничтожения, осуществляемого сборщиком мусора. Однако использовать этот метод опасно, потому что мы точно не знаем, когда сборщик мусора вызовет его.12.7.3.

Найденные и потерянные сообщенияОбычно в анализе найденные и потерянные сообщения могут бытьпроигнорированы. Мы рассматриваем их здесь в основном для полноты обсуждения.Найденные сообщения могут быть полезны, если необходимо показатьполучение сообщения классом, но неизвестно (в данный момент време274Глава 12. Реализация прецедентовни), откуда поступило это сообщение. На практике такое встречаетсяредко.Потерянные сообщения позволяют показать, что сообщение потеряно –оно никогда не достигает точки своего назначения.

Это может быть полезно при проектировании, чтобы показать, как могут теряться сообщения в условиях возникновения ошибки. Однако у нас никогда невозникало крайней необходимости использовать это понятие.12.8. Диаграммы взаимодействийДиаграммы взаимодействий UML могут использоваться для моделирования любого типа взаимодействия между экземплярами классификаторов. В частности, в реализации прецедентов диаграммы взаимодействий используются для моделирования взаимодействий междуобъектами, реализующими прецедент или его часть. Существует четыре разных типа диаграмм взаимодействий, каждый из которых делаетакцент на различных аспектах взаимодействия.Четыре типа диаграмм взаимодействий предоставляют разные проекции взаимодействий объектов.•Диаграммы последовательностей (sequence diagrams) акцентируютвнимание на временной упорядоченности сообщений. Обычно пользователи лучше понимают диаграммы последовательностей, чемкоммуникационные диаграммы, поскольку они намного легче читаются.

Как правило, коммуникационные диаграммы очень быстрозагромождаются. Диаграммы последовательностей обсуждаютсяв разделе 12.9.•Коммуникационные диаграммы (communication diagrams) выделяют структурные отношения между объектами и очень полезны прианализе, особенно для создания эскиза совместной работы объектов. В UML 2 эти диаграммы предлагают только лишь подмножество функциональности диаграмм последовательностей. Коммуникационные диаграммы обсуждаются в разделе 12.11.•Диаграммы обзора взаимодействий (interaction overview diagrams)показывают, как сложное взаимодействие реализуется рядом простых взаимодействий.

Это особый случай диаграммы деятельности,в которой узлы ссылаются на другие взаимодействия. Они полезныдля моделирования потока управления системы. Диаграммы обзора взаимодействий обсуждаются в разделе 15.12.•Временные диаграммы (timing diagrams) обращают внимание нафактическое время взаимодействия. Их основное назначение – помочь оценить временные затраты. Временные диаграммы рассматриваются в разделе 20.7.12.9. Диаграммы последовательностей275Диаграммы последовательностей и коммуникационные диаграммыявляются самыми важными с точки зрения реализации прецедентов.Оставшаяся часть этой главы посвящена их детальному обсуждению.12.9.

Диаграммы последовательностейДиаграммы последовательностей представляют взаимодействия между линиями жизни как упорядоченную последовательность событий.Это самая богатая и гибкая форма диаграммы взаимодействий.Диаграммы последовательностей представляют взаимодействия междулиниями жизни как упорядоченную последовательность событий.Иногда моделирование начинают с создания эскиза реализации прецедента с помощью коммуникационной диаграммы (раздел 12.11), потому что на диаграмме легко размещать и соединять линии жизни.

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

Рассмотрим реализацию прецедента AddCourse (добавить курс) (рис. 12.6). Чтобы пример был простым, сохранен очень высокий уровень абстракции этого прецедента.Прецедент: AddCourseID: 8Краткое описание:Добавляет детали нового курса в систему.Главные актеры:RegistrarВторостепенные актеры:Нет.Предусловия:1. Registrar вошел в систему.Основной поток:1. Registrar выбирает «add course».2. Registrar вводит имя нового курса.3. Система создает новый курс.Постусловия:1.

Новый курс добавлен в систему.Альтернативные потоки:CourseAlreadyExistsРис. 12.6. Спецификация прецедента AddCourse276Глава 12. Реализация прецедентовRegistrationManager10..*Coursecourses0..*registration0..*10..*StudentstudentsРис. 12.7. Диаграмма классов анализа прецедента AddCourseИсходный анализ созданного прецедента представлен на рис.

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