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

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

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

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

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

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

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

Что мы узнали•••обязанность – семантически связный набор операций;•класс должен иметь не более трехпяти обязанностей.197•Класс имеет высокую внутреннюю связность (cohesion) – всесвойства класса служат реализации его назначения.•Класс имеет низкую связанность с другими классами (coupling) –для реализации своего назначения класс должен взаимодействовать с небольшим числом классов.Каковы признаки плохого класса анализа?•Он является функтоидом – классом с одной операцией.•Он является всемогущим классом – классом, делающим все.Классам, в именах которых присутствуют слова «system» или«controller», следует уделять больше внимания.•У него глубокое дерево наследования – в реальности деревья наследования, как правило, небольшие.•У него низкая внутренняя связность.• У него высокая связанность с другими классами.Анализ существительное/глагол:•Ищите существительные или именные группы; это потенциальные классы или атрибуты.•Ищите глаголы или глагольные группы; это потенциальные обязанности или операции.••Процедура: собрать относящуюся к делу информацию и проанализировать ее.CRCанализ – мощная и одновременно забавная техника мозговогоштурма.•Важные моменты предметной области записываются на клеящихся записках (стикерах).•Каждая записка разделена на три ячейки:•••класс – содержит имя класса;обязанности – содержит список обязанностей этого класса;•участники – содержит список других классов, с которымивзаимодействует данный класс.Процедура CRCанализа – мозговой штурм:•••попросите членов команды назвать «сущности», которые действуют в их области деятельности, и запишите их на клеящихся записках;попросите команду обозначить обязанности сущностей и запишите их в ячейке обязанностей на записке;попросите команду определить классы, которые могли бы работать совместно, и запишите их в ячейке участников каждой198Глава 8.

Выявление классов анализа•••записки; если стикеры приклеены на доску, нарисуйте междуними линии.Стереотипы RUP могут использоваться с целью сосредоточить анализ на трех типах классов:• «boundary» – класс, играющий роль посредника во взаимодействии системы и ее окружения;• «control» – класс, инкапсулирующий характерное поведение прецедента;• «entity» – класс, используемый для моделирования постояннойинформации о чемто.Учтите другие источники классов:• физические объекты, документооборот, интерфейсы с внешниммиром и концептуальные сущности;• базовые шаблоны – ориентированное на компоненты моделирование.Создание аналитической модели в первом приближении:• сравниваются результаты анализа существительное/глагол,CRCанализа, применения стереотипов RUP и проверки другихисточников классов;• разрешаются синонимы и омонимы;• отличия результатов разных техник указывают на области неопределенности;• результаты объединяются в аналитическую модель в первомприближении.9Отношения9.1.

План главыВ этой главе рассматриваются отношения между объектами и междуклассами. Чтобы понять, что такое отношение, прочтите раздел 9.2.Далее обсуждаются: в разделе 9.3 – связи (отношения между объектами), в разделе 9.4 – ассоциации (отношения между классами) и в разделе 9.5 – зависимости (универсальные отношения).9.2. Что такое отношение?Отношения – это семантические (значимые) связи между элементамимодели.

Отношения – это способ объединения сущностей в UML. Намуже встречались некоторые типы отношений:•между актерами и прецедентами (ассоциация);•между прецедентами и прецедентами (обобщение, «include», «extend»);•между актерами и актерами (обобщение).UMLотношения объединяют сущности.В этой главе рассматриваются взаимоотношения между объектамии между классами. Начнем со связей и ассоциаций, а в главе 10 обсудим обобщение и наследование.Чтобы создать функциональную ОО систему, нельзя позволять объектам оставаться в гордом одиночестве. Их необходимо объединять, чтобы они могли выполнять полезную для пользователей системы работу.Соединения между объектами называются связями.

Когда объектыработают совместно, говорят, что они взаимодействуют.Рис. 9.1. План главы9.4.2.2. Иерархии и сети9.4.2.1. Рефлексивныеассоциации9.4.2. Кратность9.6. Что мы узнали9.4.6. Квалифицированныеассоциации9.4.5. КлассыQассоциации9.4.4. Ассоциациии атрибуты9.4.3. Возможностьнавигации9.4.1. Синтаксис ассоциации9.3.1. Диаграммыобъектов9.3.2. Пути9.4.

Что такое ассоциация?9.3. Что такое связь?9.2. Что такое отношение?9.5.2.3. «refine»9.5.2.4. «derive»9.5.1.3. «parameter»9.5.1.4. «send»9.5.1.5. «instantiate»9.5.2.2. «substitute»9.5.2.1. «trace»9.5.2. Зависимостиабстракции9.5.1.2. «call»9.5.1.1. «use»9.5.1. Зависимостииспользования9.5. Что такое зависимость?9.5.3.3. «permit»9.5.3.2. «import»9.5.3.1. «access»9.5.3. Зависимостидоступа200Глава 9. Отношения9.3. Что такое связь?201Если между объектами установлена связь, то и между их классамидолжно существовать какоето семантическое соединение. В этом естьздравый смысл: чтобы объекты могли общаться друг с другом напрямую, классы этих объектов должны какимто образом знать друго друге.

Соединения между классами называются ассоциациями. Связи между объектами на самом деле являются экземплярами ассоциаций между их классами.9.3. Что такое связь?Чтобы создать объектноориентированную программу, объекты должны общаться друг с другом. В сущности, исполняющаяся ОО программа – это гармоничное сообщество взаимодействующих объектов.Объекты обмениваются сообщениями через соединения, называемыесвязями.Связь – это семантическое соединение между двумя объектами, которое обеспечивает им возможность обмена сообщениями. Исполняющаяся ОО система содержит множество объектов, которые появляются и исчезают, и множество связей (которые тоже появляются и исчезают), объединяющих эти объекты. Через эти связи происходит обменсообщениями между объектами.

Получив сообщение, объект инициирует соответствующую операцию.Разные ОО языки программирования реализуют связи поразному. Javaреализует связи как объектные ссылки; C++ может реализовыватьсвязи как указатели, как ссылки или путем прямого включения одного объекта в другой.Каким бы ни был подход, минимальное требование для установлениясвязи: по крайней мере один из объектов должен иметь объектнуюссылку на другой.9.3.1. Диаграммы объектовДиаграмма объектов – это диаграмма, представляющая объекты и ихотношения в некоторый момент времени. Это как снимок части исполняющейся ОО системы в определенный момент, показывающий объекты и связи между ними.Соединенные связями объекты могут исполнять различные роли по отношению друг к другу. На рис.

9.2 можно видеть, что объект ila играетроль chairperson (председатель) в его связи с объектом bookClub (книжный клуб). На диаграмме объектов это отображается путем размещения имени роли на соответствующем конце связи. Имена ролей могутрасполагаться на любом или на обоих концах связи. В данном случаеобъект bookClub всегда играет роль «клуба», поэтому нет особого смысла202Глава 9. ОтношенияBookClubимя ролиchairpersonbookClub:Clubдвунаправленная связьsecretarymemberila:Personerica:Personnaomi:PersonРис. 9.2. Двунаправленные связи между объектамипоказывать это на диаграмме. Это никак не улучшило бы пониманияотношений объектов.На рис. 9.2 показано, что в определенный момент времени объект ilaиграет роль chairperson. Однако важно понимать, что связи – это дина+мические соединения (dynamic connections) объектов.

Иначе говоря,они могут быть непостоянными во времени. В данном примере рольchairperson может передаваться объектам erica или naomi, и можно былобы без труда создать диаграмму объектов, отображающую эту новуюситуацию.Обычно одна связь соединяет только два объекта, как показано нарис. 9.2. Однако UML допускает соединение нескольких объектов одной связью.

Такую связь называют nарной. Она изображается в видеромба, от которого отходят линии к каждому из объектовучастников.Многие разработчики моделей (и мы в том числе) считают такую идиому ненужной. Она редко используется и не всегда поддерживаетсясредствами моделирования UML. Поэтому не будем ее рассматривать.Диаграммы объектов – это моментальные снимки работающей ОО системы.На рис.

9.2 можно найти три связи между четырьмя объектами:•связь между bookClub и ila;•связь между bookClub и erica;•связь между bookClub и naomi.Для задания направления движения сообщений по связи используетсявозможность навигации.На рис. 9.2 связи двунаправленные, поэтому можно сказать, что связьсоединяет ila с bookClub или что связь соединяет bookClub с ila.2039.3.

Что такое связь?исходный объектцелевой объект:PersonDetails:Addressоднонаправленная связьРис. 9.3. Однонаправленная связь между объектамиЕсли связь однонаправленная, для задания направления движения сообщений по связи используется возможность навигации.Если навигация возможна, на конце связи помещают стрелку; в противном случае связь завершают крестом (навигация не допускается).Возможность навигации немного похожа на улицу с одностороннимдвижением.

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