Pull to refresh

Comments 86

Я крайне редко пользуюсь программами для работы с UML. Обычно хватает ручки и листка бумаги, чтобы объяснить дизайн.
UFO just landed and posted this here
Да, имеет смысл вести высокоуровневую спецификацию. Т.е. описать как связаны между собой модули, системы и прочее.
А вот конкретную структуру файлов я не стал бы документировать, т.к. это ограничивает возможность быстрых изменений и рефакторинга системы.
Для этих целей вполне подходит простенький UML-плагин к любимой IDE.
Листик с бумагой, плагин… Уж лично моё мнение, поставить нормальную систему и иметь полный «фарш». Притом бывают ситуации, что сегодня я пишу на VS, а завтра или послезавтра проект нужно делать на Mono IDE, а код и там и там реверсить нужно. Но это как говорится частности.
UFO just landed and posted this here
По своему опыту, сколько не планируй, заказчик потом 10 раз все изменит.
А вы не подпускайте заказчика к вашему коду :)
Нет, вы понимаете, заказчику важен не код, а насколько удобна и закончена система, написанная вами. Если ему что-то захотелось изменить, тем более, если эти изменения идут как доработки за доп. оплату, вы с этим ничего не поделаете. Заказчику все равно, насколько у вас там красивая архитектура получилась :)
Планы — бесполезны, планирование — бесценно.
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Скажите это авиаконструкторам.
А через три года вы бумажку потеряете и попробуйте вспомнить что там как…
Недавно тоже нужно было набросать простенькую БД из десятка таблиц. Как-то случайно нашел у себя на дебиане 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, у которого и оформление, и юзабилити в свое время мне вообще ужасом показались :(
UFO just landed and posted this here
Только хотел про него сказать. У меня, правда, последняя версия не захотела запускаться…
Он уже устарел, 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

Программа простенькая, но часто этого вполне достаточно, чтобы набросать диаграмму классов.
UFO just landed and posted this here
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.
Имелось в виду

оказалось, что нужно не только «кодить», но и уметь проектировать те или иные «задачи»
Интересно будет услышать мнение об 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. Стоимость программного обеспечения
UFO just landed and posted this here
Я предпочитаю разбираться в чужом коде с помощью диаграмм активности, если уж что-то такое «интересное» вылазит. Поповоду «микро-архитекруры» соглашусь.
Вы знаете такое слово как документация? А поддержкой кода с количеством классов от полутора тысяч занимались? По большому счету проработка микро-архитектуры часто служит одним из видом документирования. С другйо стороны он дает такое количество гибкости…
UFO just landed and posted this here
Не согласен ни разу. Дизайн безусловно лежит в основе, но в отсутствии документации позволяющий вникнуть в такую систему за 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, как раз то, что мне нужно, отлично строит. Но… нельзя (у меня не получилось по крайней мере) сохранить диаграмму построенную, в векторную картинку :(
Sign up to leave a comment.

Articles