Главная » Просмотр файлов » М. Фаулер, К. Скотт - UML Основы

М. Фаулер, К. Скотт - UML Основы (1114905), страница 33

Файл №1114905 М. Фаулер, К. Скотт - UML Основы (М. Фаулер, К. Скотт - UML Основы) 33 страницаМ. Фаулер, К. Скотт - UML Основы (1114905) страница 332019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

п. Более значительные изменения коснулись версии 1.3, которые заметно уточнили терминологию в отношении вариантов использования и диаграмм деятельности. Позже в 1999 году были опубликованы две книги «трех друзей»: «Руководство пользователя» 16) и «Справочник пользователя» 137), которые отразили изменения в версии 1.3 до публикации официальных документов по этой версии языка УМ1„что привело к некоторым недоразумениям. В апреле 1999 года инициативная группа ВТР представила консорциуму ОМС версию 1.3 в качестве нового официального стандарта языка УМ1.. После чего зта группа взяла на себя дальнейшее развитие языка ПМВ и рассмотрение его последующих обновлений.

Эта информация известна мне на момент написания книги; последние сведения по этим вопросам можно найти на моей домашней страничке в Интернете. Изменения в первом издании книги В процессе эволюции языка УМ1, я пытался учесть его изменения, что привело к появлению нескольких вариантов книги «УМ1 в кратком изложении». При этом я пользовался хорошей возможностью исправить ошибки и сделать изложение более ясным. Хотя в основу настоящего второго издания положена версия 1.3, я не могу утверждать, что последующие варианты этой книги не будут содержать каких-либо неожиданных обновлений.

Так, в первом варианте приложения упоминалась версия 1. 4, но в конце концов инициатив- 1уг Приложение В ная группа ВТГ решила не изменять номер версии языка УМ1., поэтому она так и осталась версией 1.3. Далее в атом приложении внимание сосредоточено на двух основных отличиях в языке БМ1« имевших место при изменениях версий с 1.0 на 1.1 и с 1.2 на 1.3. Мне бы не хотелось обсуждать в деталях все произошедшие изменения, поэтому остановлюсь лишь на тех из них, которые каким-то образом затрагивают материал книги «17МЬ в кратком изложении» или относятся к важным свойствам языка ПМ1„рассмотренным в первом издании. Продолжая следовать стилю изложения первого издания, я рассмотрю основные элементы языка УМ1.

и особенности применения языка ПМ1. при выполнении реальных проектов. Как и ранее, выбор материала и соответствующие рекомендации основаны на моем собственном опыте. Если обнаружится противоречие между моим изложением и официальной документацией по языку УМЕ, следует придерживаться официальной документации. (Однако мне бы хотелось об атом знать, чтобы впоследствии внести соответствующие исправления.) Я также воспользуюсь представленной возможностью отметить те или иные важные ошибки или погрешности предыдущих вариантов книги. Спасибо читателям, которые сообщили о них. Отличия версий 1.0 и 1.1 языка 0М1.

Тип и класс реализации В первом издании «УМ1 в кратком изложении«я рассмотрел различные точки зрения на разработку и те возможные изменения, которые произойдут в результате совершенствования способов изображения и интерпретации моделей, в частности, диаграмм классов. Эти обстоятельства нашли отражение в языке УМ1н поскольку теперь утверждается, что все классы на диаграмме классов могут быть определены либо как типы„либо как классы реализации.

Класс реализации соответствует некоторому классу в контексте программы, которая вами разрабатывается. Тнп является более расплывчатым понятием„он представляет некоторую абстракцию, которая в меньшей степени касается реализации. Это может быть тип СОВВА, описание класса с точки зрения спецификации или некоторая концептуальная модель. При необходимости можно определить дополнительные стереотипы, чтобы в последующем различать зти понятия. Можно установить, что для отдельной диаграммы все классы обладают некоторым особым стереотипом. Это может произойти в том случае, когда диаграмма отражает отдельную точку зрения. При этом точка зрения реализации предполагает использование классов реали- Стяичия версий языка цМс зации, а концептуальная точка зрения и точка зрения спецификации предполагают использование типов.

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

(Я думаю, что причиной этого является то обстоятельство, что основные объектноориентированные языки поддерживают единственную статическую классификацию. Если в один прекрасный день вы будете пользоваться языком, который поддерживает множественную или динамическую классификацию, то зто ограничение может быть снято.) Ограничения полного и неполного обобщения В предыдущих выпусках УМЕ з кратком изложении было отмечено, что ограничение (полный) ((сошр1е$е)) для некоторого обобщения устанавливает, что все экземпляры супертипа должны быть также экземпляром некоторого подтипа в данном разбиении. Вместо этого в языке 1)МЬ версии 1.1 определено ограничение (полный), которое указывает лишь на то, что соответствующее разбиение отражает все подтипы.

А зто совсем не то же самое. Мною было обнаружено множество несоответствий в интерпретации этого ограничения, поэтому вам следует обратить на это внимание. Если вы хотите, чтобы все экземпляры супертипа были экземпляром одного из подтипов, то во избежание недоразумений логично использовать другое ограничение.

Лично я использую в этом случае (обязательно) ((шапба1огу)). Композиция Использование композиции в языке АМ(. версии 1.0 означает, что эта связь неизменна (или постоянна) по крайней мере для однозначных компонентов. Это ограничение больше не является частью определения композиции. Неизменность и постоянство Язык 1)М1. определяет ограничение (постоянный) ((1гозеп)) для указания неизменяемости ролей ассоциации. Как определено в настоящее время, это ограничение не может быть применено к атрибутам или Приложение В классам.

В своей текущей работе вместо неизменяемости я использую термин постоянный, тем самым я могу применять это ограничение к ролям ассоциаций, классам и атрибутам. Обратные сообщения на диаграмме последовательности В языке 11МВ версии 1.0 обратное сообщение или возврат на диаграмме последовательности вместо сплошной треугольной стрелки стало обозначаться обычной стрелкой (см. предыдущее издание). Это привело к некоторым проблемам, поскольку данное различие трудно уловимо и легко приводит к недоразумениям. Язык УМ).

версии 1.1 для изображения возвратов использует пунктирную линию со стрелкой, что мне больше нравится„поскольку делает возвраты намного более очевидными. (Именно поэтому в своей книге «Анализ образцов» (18)я использовал пунктирные возвраты, что представляется мне весьма важным.) Для последующего применения возвратов можно назначить им имена вида епоиайБгос)«:=с)»ест(). Использование термина еРоль» В языке 1)М1. версии 1.0 термин роль в основном указывал направление некоторой ассоциации (см. предыдущее издание).

Язык ИМ1. версии 1.1 рассматривает данное определение как роль ассоциации. Помимо нее существует роль кооперации, то есть роль, которую исполняет некоторый экземпляр класса в кооперации. Многие разработчики по-прежнему используют термин роль в смысле направления ассоциации, хотя конец ассоциации является официальным термином языка УМ1.. Отличия версий 1.2 (и 1.1) и 1.3 языка 0МЕ Варианты использования Изменения относительно вариантов использования заключаются в добавлении новых отношений между вариантами использования.

В языке 1)МЬ версии 1.1 имелись только два отношения между вариантами использования: «использует» и «расширяет», каждое их которых является стереотипом обобщения. В версии 1.3 определены три отношения: ° Конструкция «включает» является стереотипом зависимости. Она означает, что выполнение одного варианта использования включает в себя другой вариант использования. Обычно это отношение встречается в ситуации, когда несколько вариантов использования имеют общие этапы или части. Включаемый вариант использова- Отличия версий языка 0»л~ 175 ния может предоставлять другим некоторое общее поведение.

В качестве примера можно рассмотреть банкомат АТМ, в контексте которого оба варианта использования «Выдать деньги по карточке» и «Осуществить оплату по карточке» используют вариант «Проверить подлинность клиента». Это отношение в общем случае заменяет применение стереотипа «использует». ° Обобщение варианта использования означает, что один вариант использования является вариацией другого. Таким образом, можно иметь один вариант использования для «Выдать деньги по карточке» (базовый вариант использования) и другой вариант использования для ситуации, когда выдача денег невозможна по причине отсутствия средств на счету клиента.

Отказ от выплаты денег можно представить в виде отдельного варианта использования, который уточняет базовый вариант использования. (Кроме того, можно определить еще и дополнительный сценарий для варианта использования «Выдать деньги по карточке».) В этом случае специальный вариант использования, подобно рассмотренному выше, может изменить какой-либо аспект базового варианта использования. ° Конструкция «расширяет» является стереотипом зависимости.

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

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

Тип файла
DJVU-файл
Размер
978,55 Kb
Тип материала
Высшее учебное заведение

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

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