Какой лучший инструмент для диаграмм UML?

Я пытаюсь выбрать инструмент для создания диаграмм UML всех вкусов. Юзабилити - главный критерий для меня, но я все равно буду обладать большей властью с более крутой кривой обучения и быть счастливой. Бесплатно (как в пиве) было бы неплохо, но я был бы готов заплатить, если бы инструмент стоил того. Что я должен использовать?

Ответ 1

Некоторый контекст: недавно в аспирантуре я изучил инструменты UML для удобства использования и понимания UML в целом для независимого проекта. Я также модель/архитектор для жизни.

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

  • Вы моделируете или рисуете? (Рисование - ArgoUML, бесплатные реализации и Visio)
  • Будете ли вы моделировать в будущем? (Для базового моделирования - Публичные выпуски платежных продуктов)
  • Вы хотите формализовать свое моделирование через профили или метамодели? OCL? (Sparx, RSM, Visual Paradigm)
  • Вы обеспокоены переносимостью модели, поддержкой XMI? (GenMyModel, Sparx, Visual Paradigm, Altova)
  • Есть ли у вас существующий набор документов, с которыми вам нужно работать? (Зависит от документов)
  • Вы хотите сгенерировать кодовые заглушки или полный функциональный код? (GenMyModel, Visual Paradigm, Sparx, Altova)
  • Вам нужны более зрелые процессы, такие как управление прецедентом, создание шаблонов, создание активов, интеграция RUP и т.д.? (RSA/RSM/IBM Rational Products)

Подробные примеры: IBM Rational Software Architect не реализовал UML 2.0 полностью, когда дело доходит до реализации отношений типа при создании профиля UML, но Visual Paradigm и Sparx поняли это правильно.
Хорошо, это было слишком подробно, поэтому более простым примером будет ArgoUML, который не имеет функций генерации кода и фокусируется на рисовании больше, чем аспект моделирования UML.
Sparx и Visual Paradigm делают UML действительно хорошо и хорошо генерировать код, однако, привязка к жизненным циклам проекта и другим процессам - это то, где RSM/RSA является сильным.
Следите за закрытыми или программными процессами генерации кода или каркасами, так как вы могли бы зависеть от этого продукта.

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

NEW - нашел хороший список многих инструментов UML с описаниями. Список инструментов UML UML

Ответ 2

Только для диаграмм последовательности, попробуйте websequencediagrams.com. Это бесплатный продукт freemium (бесплатно для основных задач, оплачиваемый для продвинутых функций), который позволяет быстро выводить диаграмму без каких-либо проблем с линиями и трафаретами.

Alice->Bob: Authentication Request
note left of Bob: Bob thinks about it
Bob->Alice: Authentication Response

cdraw?lz=QWxpY2UtPkJvYjogQXV0aGVudGljYXRpb24gUmVxdWVzdApub3RlIHJpZ2h0IG9mIAAlBUJvYiB0aGlua3MgYWJvdXQgaXQuCkJvYi0tPgBMBQA5E3Nwb25zZQ&s=omegapple

Ответ 3

Для меня это Enterprise Architect из Sparx Systems. Очень округлый инструмент UML по очень разумной цене.

Очень сильный список функций, в том числе: интегрированное управление проектами, базовая обработка, экспорт/импорт (включая экспорт в html), создание документации из модели, различные шаблоны (Zachman, TOGAF и т.д.), плагины IDE, генерация кода (с IDE плагины, доступные для Visual Studio, Eclipse и др.), API автоматизации - список можно продолжить.

О да, не забудьте поддерживать контроль источника непосредственно внутри инструмента (SVN, CVS, TFS и SCC).

Я бы тоже держался подальше от Visio - вы получаете диаграммы, а не модель. Переименуйте класс в одном месте в инструменте моделирования UML и переименуйте его во всех местах. Это не относится к Visio!

Ответ 4

Для моей простой и короткой работы UML, Я использовал этот инструмент:

StarUML - http://staruml.sourceforge.net/en/

Отличное бесплатное программное обеспечение для рисования UML.


Несмотря на то, что исходный Star UML больше не поддерживается, теперь есть вилка, называемая White Star UML, которая активно развивается.

Ответ 5

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

При использовании Visio я предпочитаю использовать эти трафареты для моих потребностей UMLing (встроенный вид сосать). Возможно, я привык к этому, поскольку он является основным инструментом диаграмм при моем текущем назначении.

OmniGraffle также имеет встроенные трафареты UML, и более доступны в Graffletopia, но я бы не рекомендовал это как инструмент построения диаграмм, поскольку у него слишком много причуд (причуды, которые хороши для многих вещей, но не для UML). Бесплатная пробная версия, поэтому, непременно...:)

Я несколько раз тестировал MagicDraw, но, несмотря на функциональность, я обнаружил, что пользовательский интерфейс отвлекает.

В противном случае я найду Topcased интересный проект (или группу проектов). Последнее, что я использовал, у него все еще были некоторые ошибки, но он сработал и, похоже, с тех пор хорошо развивается. Отлично работает на любой платформе с поддержкой Eclipse. Свободно, как в речи и пиве:)

Что касается инструмента диаграммы Dia, это довольно уродливо (интерфейс и результирующие чертежи), но он выполняет свою работу. Альтернативой интересного инструмента для моделирования является Umbrello, но я его мало использовал.

Я определенно согласен с mashi, что доски великолепны (вместе с цифровой камерой или мобильным телефоном).

Возможно, некоторые из лучших инструментов, которые я использовал, относятся к семейству инструментов Rational.

Ответ 6

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

Ответ 7

Visual Paradigm для UML http://content.usa.visual-paradigm.com/websiteimages/images/products/vpuml60/vpumltitle.gif

Я очень люблю Visual Paradigm для UML Он очень мощный и имеет бесплатный Community Edition и дешевый Personal Edition.

Agilian http://content.usa.visual-paradigm.com/websiteimages/images/products/ag10/agtitle.gif

Для Agile-моделирования также существует Agilian, который немного более гибкий, добавляет дополнительные функции для поддержки смарт-карт и знает также отображение мнений.

То, что мне больше всего нравится в их продуктах, - это гибкость. Я использую Enterprise Architect на работе в настоящее время, но я думаю, что он не достаточно умный. Я хочу иметь возможность быстро продумывать некоторые диаграммы последовательности и иметь приложение, поддерживающее мою модель в фоновом режиме, то, что VPUML выполняет очень хорошую работу.

По-моему, это лучше, чем Enterprise Architect, хотя это отличный инструмент:)

Ответ 8

Взгляните на BOUML: мультиплатформенная (QT), работает очень хорошо и поддерживает совместную работу.

BOUML - это бесплатная панель инструментов UML 2 (в разработке), позволяющая указать и сгенерировать код в С++, Java, Idl, Php и Python.

BOUML работает под Unix/Linux/Solaris, MacOS X (Power PC и Intel) и Windows.

Из Wikipedia:

Релизы до версии 4.23 - это бесплатное программное обеспечение, лицензированное под лицензией GPL. BOUML 5 и более поздние версии являются проприетарным программным обеспечением.

Ответ 9

Если вы хотите выйти из двери и работать над UML, не изучая сложный новый инструмент, я бы посмотрел Фиолетовый UML. Я использовал его для некоторых довольно больших успехов в прошлом.

Ответ 10

PlantUML - это инструмент с открытым исходным кодом для разметки на языке UML в Java, который заслуживает упоминания здесь. Он высоко оценивает масштаб юзабилити из-за его интуитивного синтаксиса для различных диаграмм и компонентов диаграмм.

Ответ 11

Dia - это возможный выбор. Это определенно не лучший инструмент, но он функциональный.

Ответ 12

Enterprise Architect из систем Sparx - лучший инструмент, который я использовал. Немного дороже в 199 долларов (профессиональное издание), но ИМО это того стоит.

Ответ 13

Я добавлю UMLet, который я еще не пробовал, но был выбран в моем офисе, чтобы начать делать диаграммы.
Выглядит просто, диаграммы не сексуальны, но это кажется вполне полным в отношении тех диаграмм, которые вы можете сделать. Кажется, что есть хорошие возможности экспорта (важно!), Гибко поддерживает пользовательские компоненты) и может использоваться как плагин Eclipse.

Ответ 14

Astah UML (ex-JUDE) неплохо.

Ответ 15

Мне не удалось найти первоклассный бесплатный инструмент для диаграмм UML, но если вы заинтересованы в чистом графическом дизайне, а не в кругообороте, я бы пошел с Microsoft Visio. Если вам нужна полная инженерия с круговым движением, Rational Rose.

Этот список инструментов UML в Википедии также может пригодиться.

Ответ 16

Ручка и бумага. Если вы можете получить сканирование в векторном формате, это может быть полезно при внесении незначительных изменений.

Ответ 17

Вы должны попробовать Creately. Работает в вашем браузере и может работать в команде.

поддерживает диаграммы последовательности, класс, ER, usecase и т.д. отлично работает и имеет бесплатную версию.

Creately.com

Ответ 18

Вы также можете проверить Lucid Chart для uml и других типов диаграмм.

Ответ 19

Не забывайте yuml.me, мне это нравится.

Ответ 20

Мне нравится VisualParadigm, упомянутый ранее в этом потоке. Это мощный и простой в использовании, я думаю, что он дает большую мощность по сравнению с другими инструментами.

Если вам нужно что-то простое, быстрое и легкое (и бесплатное), есть отличный инструмент под названием UMLet - Я настоятельно рекомендую этот. Я пробовал много инструментов диаграммы UML, и это самый простой (и он по-прежнему позволяет делать большие диаграммы). Это мой выбор:)

Ответ 22

В моей практике я использую Редактор диаграмм последовательности. это действительно быстрый и полезный инструмент. единственное, что мне не нравится в этом, это то, что это коммерческий продукт, а не бесплатно.

Ответ 23

Очевидно, что если вы серьезно относитесь к UML в конечном итоге, вам нужно использовать программный UML-инструмент, подобный тем, который предлагается в других ответах, но я обнаружил, что доска является одним из лучших инструментов для диаграмм UML, особенно на этапе проектирования или когда вы изучаете различные альтернативы. Ничто не сравнится с доской для скорости и гибкости. Они также отлично подходят для совместной работы, если вы физически связаны друг с другом.

Ответ 25

Я не могу поверить, что никто не упомянул редактор UML NetBeans, это здорово и удовлетворило все мои требования UML на основе Java.

Это после того, как я протестировал JDeveloper UML, ArgoUML и StarUML.

Ответ 26

Недавно я провел опрос " Какие инструменты UML вы используете? в моем блоге. NetBeans UML был лучшим выбором для открытых источников, и корпоративный архитектор был лучшим коммерческим выбором.

Ответ 27

В Visual Studio 2010 Ultimate можно создавать диаграммы UML, последовательность, компонент, диаграмму использования и диаграммы действий. Вы можете связать эти диаграммы с рабочими элементами Team Foundation, чтобы вы могли планировать и отслеживать работу по разработке и тестированию. Вы также можете создавать графики последовательности, зависимостей и диаграммы слоев из кода и использовать "Проводник архитектуры" для просмотра и изучения вашего решения.

Я добавил больше ссылок на мой профиль для получения дополнительной информации.

Ответ 28

Возможно, вы захотите взглянуть на MagicDraw или Visual Paradigm для UML. Оба предлагают выпуски сообщества, которые, разумеется, не охватывают полный диапазон функций, но вполне могут быть достаточными, если вы хотите создавать только диаграммы, а не генерировать код или выполнять полную интеграцию с круговым движением.

Ответ 29

Rational и Together/J являются лучшими в своем классе продуктами, но дорогими.

По моему опыту, я наслаждался Eclipse Omondo и Sparx Enterprise Architect. Omondo прекрасно сочетается с Eclipse для генерации кода и обладает очень интуитивным чувством. Однако он сильно привязан к Java. Sparx - хороший инструмент для ценовой точки, но не имеет полного спектра диаграмм UML 2.0.

Не беспокойтесь о Посейдоне. Это багги, раздутые и непривычные для всех целей и целей.

Ответ 30

Для диаграмм последовательностей вы также можете попробовать Trace Modeler. Он не бесплатный, но у него отличный интерфейс, очень дружелюбный и продуктивный. Вы можете использовать его на любой платформе.