Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование, страница 6
Описание файла
PDF-файл из архива "Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 6 страницы из PDF
Конечно, некоторые методические аспекты подразумеваются элементами, составляющими модель UML, но сам UML преРис. 1.1. План главы1.8.2. Отношения1.8.3. Диаграммы1.9.4.4. Профили UML1.9.4.3. Помеченные значения1.9.4.2. Стереотипы1.9.3.2. Интерфейс и реализация1.9.4. Механизмы расширения1.9.4.1. Ограничения1.9.3. Принятые деления1.10. Архитектураознакомьтесь с архитектурой UML1.9.3.1.
Классификатор и экземпляр1.9.2. Дополнения1.11. Что мы узнали1.9.1. Спецификации1.9. Общие механизмы UML1.8.1. Сущностиознакомьтесь с общими механизмами UML1.8. Строительные блоки UML1.6. Объекты и UML1.5. Почему «унифицированный»?1.4. MDA – будущее UML1.3. Рождение UMLознакомьтесь со строительными блоками UML1.7. Структура UMLизучите основы UMLизучите историю UML1.2. Что такое UML?24Глава 1.
Что такое UML?1.3. Рождение UML25доставляет собой лишь визуальный синтаксис, который можно использовать для создания моделей.UML это не методология, это унифицированный язык визуального моделирования. UP – это методология.Унифицированный процесс (Unified Process, UP) – это методология.Она указывает на исполнителей, действия и артефакты, которые необходимо использовать, осуществить или создать для моделированияпрограммной системы.UML не привязан к какойлибо конкретной методологии или жизненному циклу. На самом деле он может использоваться со всеми существующими методологиями. UP использует UML в качестве базового синтаксиса визуального моделирования.
Следовательно, UP можно рассматривать как предпочтительный метод для UML, поскольку он лучше всего адаптирован к нему. Однако сам UML способен предоставить(и предоставляет) поддержку визуального моделирования другим методам. Конкретным примером сложившегося метода, использующегоUML в качестве визуального синтаксиса, является метод OPEN (Objectoriented Process, Environment, and Notation – объектноориентированный процесс, среда и нотация) (www.open.org.au).Неизменная цель UML и UP – способствовать объединению всего лучшего в опыте разработки программного обеспечения последнего десятилетия.
Для этого UML и UP унифицируют опыт предшествующихязыков визуального моделирования и процессов разработки программного обеспечения наиболее оптимальным образом.1.3. Рождение UMLДо 1994 года в мире ОО методов царил хаос. Существовало несколькоконкурирующих языков и методологий визуального моделирования,каждая с собственными преимуществами и недостатками, сторонниками и противниками. Среди языков визуального моделирования(рис.
1.2) очевидными лидерами были метод Буча (Booch Method), разработанный Гради Бучем (Grady Booch), и техника объектного моделирования (Object Modeling Technique, OMT) Джеймса Рамбо (JamesRumbaugh), которые занимали более половины рынка. Что касаетсяметодологий, самую строгую систему создал Айвар Джекобсон (IvarJacobson). Несмотря на то, что многие авторы заявляли о создании«метода», фактически это были синтаксисы визуального моделирования и наборы более или менее полезных афоризмов и рекомендаций.UML – открытый, принятый в качестве промышленного стандарта языквизуального моделирования, одобренный OMG.26Глава 1.
Что такое UML?ПредысторияШлаер/МеллорFusion1!я попыткаунификацииOMT, Буч, CRCНачинаетсяработанад UMLRFP Группыуправленияобъектами(OMG)ПредложениеUMLодобреноOMG1994199519961997Буч и Рамбо(OMT) объединя!ются в компанииRationalДжекобсон(Objectory)присоединяетсяк RationalUML 1.xUML 2.0БучРамбо(OMT)20032004Джекобсон(Objectory)Коуд/ЙордонUML становитсяпромышленнымстандартомПродолжениеразработки UMLРис. 1.2.
История UMLПервую попытку унификации сделал в 1994 году Колеман (Coleman)в своем методе с использованием языка Fusion. Однако несмотря на всеее плюсы, к этой работе не были привлечены авторысоздатели составляющих методов (Буч, Джекобсон и Рамбо). К тому же книга с описанием этого подхода появилась на рынке слишком поздно. События развивались не в пользу метода с применением языка Fusion.
В 1994 годуБуч и Рамбо объединились в компании Rational Corporation для работы над UML. В то время это обеспокоило многих из нас, посколькуобеспечивало Rational более половины рынка по разработке подобногорода методов. Однако эти страхи оказались совершенно безосновательными, и UML стал открытым промышленным стандартом.В 1996 г. Группа управления объектами (OMG, Object ManagementGroup) выпускает запрос на предложение (requestforproposal, RFP)для ОО языка визуального моделирования и предлагает UML. В 1997 г.OMG принимает UML и рождается первый открытый, удовлетворяющий промышленным стандартам ОО язык визуального моделирования.С этого момента исчезли все конкурирующие методы, и UML, бесспорно, стал стандартным ОО языком моделирования.В 2000 году появилась версия UML 1.4 как существенное расширениеUML, достигнутое добавлением семантики действий.
Она описываетповедение набора элементарных действий, которые могут быть реализованы конкретными языками действий. Семантика действий плюсязык действий позволяют детально специфицировать поведенческиеэлементы модели UML (такие как операции классов) непосредственнов модели UML. Это было серьезным достижением, поскольку сделалоспецификацию UML полной в вычислительном отношении, что обеспечило возможность делать UMLмодели исполняемыми. Примеромреализации UML, имеющей язык действий, совместимый с семантикой действий, является xUML, произведенный компанией KennedyCarter (www.kc.com).1.4. MDA – будущее UML27В 2005 году, когда еще шла работа над вторым изданием этой книги,была завершена спецификация UML 2.0.
Теперь UML – вполне сформировавшийся язык моделирования. Прошло почти семь лет с момента выхода его первой версии, и он доказал свою ценность в сотнях проектах по разработке программного обеспечения по всему миру.В UML 2 появилось много новых визуальных синтаксических структур.
Некоторые из них замещают (и уточняют) существующий синтаксис версии 1.x, другие – абсолютно новые и представляют вновь введенную в язык семантику. UML как всегда предлагает множество вариантов представления конкретного элемента модели, но не все они будут поддерживаться каждым из инструментов моделирования. В этойкниге мы пытаемся использовать лишь наиболее распространенныесинтаксические варианты и обращаем внимание на те, которые полезны в обычных ситуациях моделирования. Некоторые синтаксическиеварианты слишком специализированны, поэтому они не обсуждаютсяили только упоминаются.Хотя в UML 2 по сравнению с версией UML 1.x внесено множество синтаксических изменений, основополагающие принципы остались болееили менее неизменными. Разработчики моделей, привыкшие к предыдущим версиям UML, легко перейдут на UML 2.
Фактически самыеглубокие изменения затронули метамодели UML, с которыми разработчики моделей непосредственно не будут иметь дело. МетамодельUML – это модель языка UML, выраженная в подмножестве UML. Онастрого определяет синтаксис и семантику всех элементов моделирования UML, которые будут рассматриваться в книге. Изменения метамодели UML во многом касаются повышения точности и согласованности спецификации UML.В одной из своих книг Гради Буч говорит: «Если у вас есть хорошаяидея, она моя!» В этом заключена вся философия UML: он берет лучшее из того, что было до него, интегрирует и использует в качестве основы.
Это можно понимать и в более широком смысле: UML объединяет лучшие идеи «доисторических» методов, отказываясь от их наиболее специфических деталей.1.4. MDA – будущее UMLБудущее UML может быть определено, согласно недавнему предложению OMG, как архитектура, управляемая моделью (Model Driven Architecture, MDA). Хотя наша книга и не посвящена MDA, в этом разделе будет представлен ее краткий обзор. Более подробную информациюможно найти на вебсайте OMG (www.omg.org/mda) и в книгах «MDAExplained» [Kleppe 1] и «Model Driven Architecture» [Frankel 1].MDA дает видение того, как разрабатывать програмное обеспечение наоснове моделей.
Суть этого видения заключается в том, что моделиуправляют созданием исполняемой программной архитектуры. В настоящее время уже встречается подобный подход к разработке про28Глава 1. Что такое UML?граммного обеспечения, но MDA позволяет точно определить степеньавтоматизации данного процесса, чего до сих пор удавалось достичьдовольно редко.В MDA создание программного обеспечения происходит в результатеряда трансформаций модели при поддержке инструмента моделирования MDA. Абстрактная машиннонезависимая модель (computerindependent model, CIM) используется как основа для платформонезависимой модели (platformindependent model, PIM).
PIM трансформируется в платформозависимую модель (platformspecific model, PSM), которая преобразуется в код.Понятие модели в MDA является довольно обобщенным, и код рассматривается как сильно конкретизированный вид модели. Рис. 1.3иллюстрирует цепочку преобразований модели MDA.CIM – это модель с очень высоким уровнем абстракции, фиксирующаяключевые требования системы и словарь предметной области незави+симым от компьютеров способом. Это действительно модель той частибизнеспроцесса, которую предполагается автоматизировать. Такуюмодель создавать необязательно, и если она разрабатывается, то используется как основа для выработки PIM.PIM – модель, выражающая семантику деятельности программнойсистемы без ориентации на какуюлибо базовую платформу (такую какEJB, .NET и т. д.). PIM обычно находится примерно на том же уровнеабстракции, что и аналитическая модель, о которой пойдет речь несколько позже, но является более полной.