Главная » UML

Настройка UML под процесс

Добавлено Дата: 18 May, 2011 категория: UML

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

Читать »

Суперсостояния UML

Добавлено Дата: 18 May, 2011 категория: UML

 

Часто бывает, что несколько состояний имеют общие переходы и внутренние активности. В таких случаях можно их превратить в подсо-стояния (substates), а общее поведение перенести в суперсостояние (superstate), как показано на рис. 10.4. Без суперсостояния пришлось бы рисовать переход cancel (отмена) для всех трех состояний внутри состояния Enter Connection Details (Овод подробностей соединения).

Читать »

Обобщение основы UML

Добавлено Дата: 17 May, 2011 категория: UML

 

Типичный пример обобщения (generalization) включает индивидуального и корпоративного клиентов некоторой бизнес-системы. Несмотря на определенные различия, у них много общего. Одинаковые свойства можно поместить в базовый класс Customer (Клиент, супертип), при этом класс Personal Customer (Индивидуальный клиент) и класс Corporate Customer (Корпоративный клиент) будут выступать как подтипы.

Читать »

Коммуникационные диаграммы UML

Добавлено Дата: 17 May, 2011 категория: UML

 

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

Читать »

Что такое допустимый UML?

Добавлено Дата: 16 May, 2011 категория: UML

 

На первый взгляд, ответить на этот вопрос легко: допустимый UML — это язык, определенный в соответствии со спецификацией. Однако на практике ответ несколько сложнее.

 

Существенным в вопросе является то, на каких правилах базируется UML: описательных или предписывающих. Язык с предписывающими правилами (prescriptive rules) управляется официальной основой, которая устанавливает, что является, а что не является допустимым языком, и какое значение вкладывается в понятие высказывания языка. Язык с описательными правилами (descriptive rules) – это язык, правила которого распознаются по тому, как люди применяют его на практике. Языки программирования в основном имеют предписывающие правила, установленные комитетом по стандартам или основными поставщиками, тогда как естественные языки, такие как английский, в основном имеют описательные правила, смысл которых устанавливается по соглашению.

Читать »

Диаграммы обзора взаимодействия UML

Добавлено Дата: 16 May, 2011 категория: UML

 

 

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

Читать »

Отличия версий языка UML 1.3 и 1.4

Добавлено Дата: 16 May, 2011 категория: UML

 

Наиболее значимым отличием версии 1.4 являются профили (profiles), которые позволяют группировать расширения в единое, логически связанное множество. В документацию по языку UML включена пара примеров профилей. Вместе с тем, определение стереотипов стало более формальным, а элементы модели теперь могут иметь несколько стереотипов; в версии UML 1.3 они были ограничены одним стереотипом.

Читать »

Диаграммы UML

Добавлено Дата: 16 May, 2011 категория: UML

UML 2 описывает 13 официальных типов диаграмм, перечисленных в табл. 1.1, классификация которых приведена на рис. 1.2. Хотя эти виды диаграмм отражают различные подходы многих специалистов к UML и способ организации моей книги, авторы UML не считают диаграммы центральной составляющей языка. Поэтому диаграммы определены не очень строго. Часто вполне допустимо присутствие элементов диаграммы одного типа в другой диаграмме. Стандарт UML указывает, что определенные элементы обычно рисуются в диаграммах соответствующего типа, но это не догма

Читать »

Когда применяются диаграммы состояний UML

Добавлено Дата: 15 May, 2011 категория: UML

 

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

Читать »

Диаграммы прецедентов UML

Добавлено Дата: 15 May, 2011 категория: UML

 

Я уже говорил, что язык UML умалчивает о содержимом прецедента, но предоставляет формат диаграммы, позволяющий его отображать (рис. 9.2). Хотя диаграмма иногда оказывается полезной, без нее можно обойтись. При разработке прецедента не стоит прилагать много усилий для создания диаграммы. Вместо этого лучше сконцентрироваться на текстовом содержании прецедентов.

Читать »

Создание и удаление участников основы UML

Добавлено Дата: 15 May, 2011 категория: UML

 

В диаграммах последовательности для создания и удаления участников применяются некоторые дополнительные обозначения (рис. 4.3). В случае создания участника надо нарисовать стрелку сообщения, направленную к прямоугольнику участника. Если применяется конструктор, то имя сообщения не обязательно, но я обычно маркирую его словом «new» в любом случае. Если участник выполняет что-нибудь непосредственно после создания, например команду запроса, то надо начать активацию сразу после прямоугольника участника.

Читать »

Множественная и динамическая классификация UML

Добавлено Дата: 15 May, 2011 категория: UML

 

Классификация служит для обозначения отношения между некоторым объектом и его типом. В основных языках программирования предполагается, что объект относится к единственному классу. Но в XJML имеется больше возможностей для классификации.

Читать »

Прогнозирующее и адаптивное планирование

Добавлено Дата: 15 May, 2011 категория: UML

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

Читать »

Реализация диаграмм состояний UML

Добавлено Дата: 14 May, 2011 категория: UML

 

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

Читать »

Выбор процесса разработки UML

Добавлено Дата: 14 May, 2011 категория: UML

 

Я твердый сторонник итеративного процесса разработки. Как я уже говорил в этой книге: «Применяйте итеративный метод разработки только в проектах, которым вы желаете успеха*.

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

Читать »