Как стать автором
Обновить

Комментарии 86

Я крайне редко пользуюсь программами для работы с UML. Обычно хватает ручки и листка бумаги, чтобы объяснить дизайн.
НЛО прилетело и опубликовало эту надпись здесь
Да, имеет смысл вести высокоуровневую спецификацию. Т.е. описать как связаны между собой модули, системы и прочее.
А вот конкретную структуру файлов я не стал бы документировать, т.к. это ограничивает возможность быстрых изменений и рефакторинга системы.
Reverse engineering ;)
Для этих целей вполне подходит простенький UML-плагин к любимой IDE.
Листик с бумагой, плагин… Уж лично моё мнение, поставить нормальную систему и иметь полный «фарш». Притом бывают ситуации, что сегодня я пишу на VS, а завтра или послезавтра проект нужно делать на Mono IDE, а код и там и там реверсить нужно. Но это как говорится частности.
НЛО прилетело и опубликовало эту надпись здесь
По своему опыту, сколько не планируй, заказчик потом 10 раз все изменит.
А вы не подпускайте заказчика к вашему коду :)
Нет, вы понимаете, заказчику важен не код, а насколько удобна и закончена система, написанная вами. Если ему что-то захотелось изменить, тем более, если эти изменения идут как доработки за доп. оплату, вы с этим ничего не поделаете. Заказчику все равно, насколько у вас там красивая архитектура получилась :)
Планы — бесполезны, планирование — бесценно.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Скажите это авиаконструкторам.
А через три года вы бумажку потеряете и попробуйте вспомнить что там как…
Недавно тоже нужно было набросать простенькую БД из десятка таблиц. Как-то случайно нашел у себя на дебиане OpenOffice Draw. Сделал — был доволен. Можно еще поискать специальные программы пол линукс.
Пользуюсь StarUML. Отличный функционал, open source, легко расширяется. Основные достоинства:
— Генерация кода в языки: C#, Java, С++ (доступны другие языки через расширения)
— Поддержка работы с фреймворками
— Удобный графический редактор
— Полное соответствие стандарту UML 2.0
— Возможность расширения функционала (про это написано отдельное руководство разработчика)
— Экспорт документации в форматы: DOC, PPT, TXT, XLS…
— Поддрежка паттернов
— Импорт проектов Rational Rose
— Приятный размер дистрибутива
подробная информация в обзоре
StarUML
По пунктам:
1. 10 (полная поддержка UML 2.0)
2. 10 проверяет на валидность
3. 10 встроеная поддержка генерации кода на Java, C#, C++, на сайте есть дополнения для других языков
4. 10 есть, но пока не пользовался
5. 0
6. 0, к сожалению БД проектировать нельзя
7. 0
8. 0
9. 0
10. 9
Итого 49. Но свои функции выполняет на все 100.
К.О. добавлю в следующие обзоры.
Шо, и рамки умеет из UML2 в диаграммах последовательностей (это там, где альтернативы, циклы и ссылки)?!
Рекомендую посмотреть Enterprise Architect крайне мощная весч. Поддержка как генерации кода, так и reverse engineering, для многих языков, в том числе PHP…
С базами данных работает, проекты в CVS держать может и прочие вкусности.
Sparx Enterprise Architect.
Если внимательно посмотрите в статью, то обзор будет в следующей части :)
Тогда ждем следующей части ) Хочется сравнить с другими.
Обращу внимание автора — предлагаю взять и 6, и 7 версии. Мне лично советовали использовать 6-ю, т.к. она корректнее работает в некоторых вопросах (сам не сравнивал, но 6 меня вполне во всем устраивает).

ИМХО у него очень интерфейс удобный и приятный. Панели «уезжающие» вроде Adobe CS3, но гораздо удобнее, и это было в 2005-м.
Сравнивать, правда, реально могу только с Rational Rose, у которого и оформление, и юзабилити в свое время мне вообще ужасом показались :(
НЛО прилетело и опубликовало эту надпись здесь
Только хотел про него сказать. У меня, правда, последняя версия не захотела запускаться…
Он уже устарел, UML 1.4 такая древность
У меня после попытки пользования Visio сложилось впечатление, что это редактор диаграмм вообще, а не UML диаграмм. Т.е. может какие-то простые диаграммы из квадратиков и треугольничков в Visio и можно рисовать, но после получаса попыток вставить в sequence диаграмму вызов между другими двумя так, чтобы к диаграмме не применился эффект «взрыв атомной бомбы», я забросил это дело и за 5 минут перерисовал диаграмму в Enterprise Architect. С тех пор к Visio не прикасаюсь.
Я в своё время пользовал Visio EA 2003. Он на порядок лучше того же 2007. Только чтобы с ним разобраться пришлось «маны покурить». Зато потом было очень приятно работать. Сейчас же перешёл полностью на Sybase PowerDesigner.
>Сейчас же перешёл полностью на Sybase PowerDesigner.
Работаю с этой прогой с универа. Другие даже пробовать не хочу. Жаль что приличного аналога под linux нет
А есть ещё крошка Violet UML: alexdp.free.fr/violetumleditor/page.php

Программа простенькая, но часто этого вполне достаточно, чтобы набросать диаграмму классов.
НЛО прилетело и опубликовало эту надпись здесь
Rose насколько я знаю устарел, сейчас есть что-то поновее. Запомнился размер, зашкаливающий за гиг…
Разумеется, нужен обзор и линуксовых программ.

Укажите, пожалуйста, версию UML, по которой производите проверку.

Вы, кстати, несправедливы к MS Visio 2007, программа неудобная, но сделали много — в 2003-й было невероятное количество багов (видно, Вы в ней мало работали), особенно в диаграммах последовательностей.

Странно, что ничего не сказали про Visual Paradigm, вот там и жесты есть, и быстрое редактирование, и соответствие стандартам. Программа, в которой думаешь с той же скоростью, с какой заносишь изменения. Только вот распечатывать и работать можно только над одной схемой в бесплатном режиме. А платная версия стоит охо-хо.
Но был бы я начальником, не поскупился бы. Или вполне реально сброситься группой разработчиков.
Visual Paradigm отличный продукт существуют плагины под все IDE. Платный, но он умеет сохранять проекты в XML и мой преподавательпо БД написал xslt-преобразование в SQL код оттуда. Пользуюсь им. И наш архитектор на работе им пользуется.
Тоже им пользуюсь, но вы не правы, он совершенно бесплатен если использовать его в не корпоративных целях, т.е. т.к. я пользуюсь им для учебы, то он бесплатен
да, тоже было бы интересно про Линуксовые средства. как раз сейчас у меня встала проблема выбора такого инструмента.
Из всех UML редакторов пробовал Unbrello (из kdesdk), Sparx EA и Poseidon for UML ( www.gentleware.com/ ).
О первом и говорить нечего — убожество, а Poseidon после EA кажется диким тормозом, хотя детально в нём не разбирался.
Сейчас использую EA.
Странно, что вы это поняли в 21 год.
Имелось в виду

оказалось, что нужно не только «кодить», но и уметь проектировать те или иные «задачи»
Интересно будет услышать мнение об IBM'овском Rational Rose.
umbrello под линукс — простенькая и толковая
сам иоспользую Sybase Power Designer. Отличный редактор.
Есть все что нужно, и удобно.
из простых наиболее терпимое en.wikipedia.org/wiki/UMLet
запускается как stand-alone, так и плагином к эклипсу (3.4 тоже поддерживает)
В Линуксе использую Umbrello. Пока всем устраивает
Очень интересно про Linux-приложения подобные послушать. раньше пользовал visual paradigm, но что-то сейчас не хочется, да и денег на нее сейчас нет.
Использовали Rational Rose Real Time от IBM, вещь страшненькая, но в принципе удобная. UML поддерживает наверное на 8/10, зато генерирует служебный код
У Вас логическая ошибка:

7. В стандартном комплекте шли драйвера для: MS Access, MS SQL Server, Oracle, IBM DB2, ODBC, OLE DB. В своей работе использовал я только 2 — для Оракла и для SQL сервера, поддерживается всё в полном размере, насколько я могу судить.(30).

при этом система оценок идет от 0 до 10. Данный рейтинг в таком виде полностью не корректен, если есть программка, которая ничего не умеет, но работает с 10 базами данных, вы ей 100 поставите? Она мигом обойдет все что тут было на тестировании. Мое ИМХО (и это не из-за завышенности продукта Майкрософт, а просто из принципиальности и тяге к идеалу) — начали рейтинг по 1-10 за пункт, так его и надо продолжать, без отступлений. По хорошему надо было пункты сделать «не равновесными» (к примеру поддержка UML — 10% от общего балла «нужный минимум есть и достаточно», а вот генерация кода — все 30 «пол дня работы»), а не городить запредельные выходы за рамки.
(За каждую БД по от 0 до 5 баллов)
10 бд — 50 баллов.
Не совсем объективно, наверное, но внутренних противоречий нет.
возможно вы правы и в результирующую таблицу я занесу измененные данные, только в данном случае я исходил из того, что у каждой БД есть, хоть не большая но специфика работы с ней. Поэтому я и принял решение начислять балл именно так.
Советую в следующем обзоре затронуть Visual Paradigm — имхо, это лучшая из альтернатив. Наименее назойливая, наиболее эргономичная и ближе всех к стандарту UML 2.х.
>Если хабросообществу будет интересно узнать о подобных программах под ОС Linux, просьба отписаться в комментариях :)
Будет интересно.
Интересно узнать форматы хрения/экспорта диаграмм.

Я обычно рисую структуру БД в ERWin, потом делаю экспорт в XML, а дальше парсером строю структуры данных для своего БД-фреймворка. Быстро и удобно.

Последнее время смотрю на StarUML (тут выше про него писали) — так он вообще все изначально хранит в XML…

А как с этим у других средств?
Присоединяюсь, один из самых лучших редакторов, правда, с очень нестандартным интерфейсом, многих это отпугивает. Ещё большим плюсом является уникальная адекватность автора — он быстро отвечает на письма и быстро добавляет запрошенную функциональность.
Да бросьте вы… такое убожество.
Не идет ни в какое сравнение с другими.
Я пользуюсь VISIO2003 со специальным набором инструментов — Garrett IA Diagram.
Хорошо бы такой обзор для Mac OS X кто нить провел…
кто чем в Маке для этого пользуется ??
Все то же самое и под виртуалкой)
под виртуалкой это зло (
Неплохо было бы добавить — 11. Стоимость программного обеспечения
НЛО прилетело и опубликовало эту надпись здесь
Я предпочитаю разбираться в чужом коде с помощью диаграмм активности, если уж что-то такое «интересное» вылазит. Поповоду «микро-архитекруры» соглашусь.
Вы знаете такое слово как документация? А поддержкой кода с количеством классов от полутора тысяч занимались? По большому счету проработка микро-архитектуры часто служит одним из видом документирования. С другйо стороны он дает такое количество гибкости…
НЛО прилетело и опубликовало эту надпись здесь
Не согласен ни разу. Дизайн безусловно лежит в основе, но в отсутствии документации позволяющий вникнуть в такую систему за 2-3 часа поддержка становится практически невозможна. Посмотрел ваш профиль… Парное программирование, и остальные технологии агилидева важны и нужны. Но не достаточны. Как я недавно сказал одной знакомой менеджерше — главное все таки не процесс а стратегия. В разработке ПО в том числе. =) Диаграммы, полноценная документация. Это важно.
Ну стоимость, как критерий уже добавили, нужно еще возможность командной работы инструменте. И поддержу на счет кол-ва БД — не объективно получается.

Хоотелось также услышать — на сколько долго и профессионально автор работал со всеми этими средствами?? Все Диаграммы рисовать пробовали?? Какой проект для примера брали??

И еще перед начлом написания такого обзора ожно было погуглить на счет обзоров и что-то повзаимстовать у них:
Использовал Visio 2 года Visual Paradigm год, PowerDesigner полтора года.
VP для разработки багтрэкинговой системы, использовались все диаграммы представленные в UML 2.0.
На Visio нас пересадил архитектор-француз, когда делали заказ для ST Microelectronics, в основном использовали для State Machines и для базы. На новом месте работы не использовали UML как таковой, поэтому выбрал то что мне удобнее(PowerDesigner) и теперь усердно насаждаю(предварительно пересмотрев все те, которые были в списке).
Сравнения я смотрел и читал, только они довольно сухие, как правило не рассматривают с нужной мне стороны и нередко попадаются «заказные».
Может быть тогда стоит описывать все эти инструменты? Потом собрать мнения сообщества по каждому из них и провести голосование «какой инструмент вам нравится больше всего»

en.wikipedia.org/wiki/List_of_UML_tools
я проводил опрос какой из инструментов предпочитают использовать
Спасибо, проголосовал!
Результаты голосования меня удивили))
Здравствуйте! Сам пользовался Altova Umodel, Visio и Visual Paradigm For UML, и буду советовать последний вариант как самый удобный и прикольный. Комментарий noita_kronk тому подтверждение :))

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

Удачи!
Знаете, я в своё время отказался от Visual Paradigm из-за очень серьёзного бага. Когда копируешь в диаграмме несколько элементов, а потом пытаешься вставить, то получается оно вставляет это «всё» толи как картинку, толи чёрт пойми что. Если сейчас ситуация исправилась, то я очень рад :).
Я столкнулся с со следующей проблемой. Построил UML диаграмму для листа формата А4 в MS Visio 2007. А теперь мне нужно разместить её на А1. Но она не увеличивается. При этом пробовал сохранить как векторный рисунок, а потом вставить и увеличить. Ужас получается :(
Не надо как векторный сохранять, лучше когда печатать будете, выставить в настройках печати, что формат вывода А1, должно всё прекрасно отобразить.
По крайней мере когда там диплом печатал, всё было хорошо :)
Попробовал NClass, как раз то, что мне нужно, отлично строит. Но… нельзя (у меня не получилось по крайней мере) сохранить диаграмму построенную, в векторную картинку :(
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации