Использование UML

User avatar
Vlad G
Уже с Приветом
Posts: 596
Joined: 20 Jan 2002 10:01
Location: Israel

Использование UML

Post by Vlad G »

Будем скоро новый проект начинать. Начальник (уже давно не программирует) говорит, что ему сказали, что сейчас проекты пишутся с использованием UML.
Подскажите, с чего начать?
Какими тулсами вы пользуетесь?
User avatar
Boriskin
Уже с Приветом
Posts: 18862
Joined: 30 Aug 2001 09:01
Location: 3rd planet

Re: Использование UML

Post by Boriskin »

Vlad G wrote:Подскажите, с чего начать?


Например Grady Booch - "Object Oriented Analisys and Design"
Сама нотация - Главы 5-7
Тупизна как Энтропия. Неумолимо растет.
User avatar
den
Уже с Приветом
Posts: 1731
Joined: 01 Feb 1999 10:01
Location: Ann Arbor, MI

Post by den »

Сайт, где обсуждают использование UML в том числе:


Популярные книги:

Applying UML and Patterns:
An Introduction to Object-Oriented Analysis and Design
by Craig Larman

UML Distilled: Second Edition
by Martin Fowler

Я читал книгу Лармана, считаю очень полезной - даже не жалко потраченных из своего кармана 50 баксов.

Можно попробовать раскрутить контору на оплату сертификата: IBM test 486 - OOAD with UML. (подробнее - здесь, там ссылки на форум, список рекомендованной литературы), недавно появился новый сертификат от OMG (группы, разработавшей UML).
DEN
User avatar
Henry
Уже с Приветом
Posts: 1436
Joined: 27 Apr 2001 09:01
Location: Moscow

Post by Henry »

В россии чтитается лучшей Rational Rose-вообщем по праву, т.к. UML был придуман именно тремя товарищами с Rational (щас часть IBM)
Vovka
Уже с Приветом
Posts: 1906
Joined: 14 Mar 2001 10:01

Post by Vovka »

Henry wrote:В россии чтитается лучшей Rational Rose-вообщем по праву, ...


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

Про тулзы - всё зависит от того, нужен ли вам reverse engineering или нет. Если нет - то Visio на мой взгляд за глаза и за уше хватит.

P.S.: Это всё при условии, что использовать ли UML или нет вообще вопроса не стоит и решение уже принято, т.к. на мой взгляд этот вопрос далеко не праздный. :)
ccase
Новичок
Posts: 36
Joined: 06 Sep 2003 20:29

Post by ccase »

Vovka wrote:
Henry wrote:В россии чтитается лучшей Rational Rose-вообщем по праву, ...

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

А что было бы реальной ценой?
И о какой редакции Rose мы говорим? Data Modeler? Enterprise? Floating? Node-locked?
К примеру, базовая цена (без скидок) для Rose Data Modeler - $1995.00 - node locked ($3490.00 floating).
Enterprise - 3495.00 (6115.00) соответственно.
Vovka wrote:Про тулзы - всё зависит от того, нужен ли вам reverse engineering или нет. Если нет - то Visio на мой взгляд за глаза и за уше хватит.

Если от UML требуются только красивые диаграмки, на стенку повесить, то Visio - за глаза хватит.
Если же надо моделировать - то вряд ли.
Vovka wrote:P.S.: Это всё при условии, что использовать ли UML или нет вообще вопроса не стоит и решение уже принято, т.к. на мой взгляд этот вопрос далеко не праздный. :)


А что, на сегодня есть лучшая нотация для OOA/OOD?
Не правится UML - Rose поддерживает еще две - Booch/OMT. :)

Удачи!
Vovka
Уже с Приветом
Posts: 1906
Joined: 14 Mar 2001 10:01

Post by Vovka »

ccase wrote:А что было бы реальной ценой? К примеру, базовая цена ... $1995.00

Вы знаете, даже эта базовая цена, на мой взгляд, ужасно завышена для такого в-общем то неосновного, прамо скажем, инструмента. Сам Visual Studio и то дешевле стоит.

Vovka wrote:Если от UML требуются только красивые диаграмки, на стенку повесить, то Visio - за глаза хватит.

Бог миловал _это_ на стенки вешать - потом ещё кошмары снится будут. :mrgreen:

Vovka wrote:А что, на сегодня есть лучшая нотация для OOA/OOD?

Есть лучшая нотация _вместо_ OOA/OOD - называется С++ source code. :mrgreen:

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

Я через этот этап тоже прошёл, и ничего особо хорошего обо всей этой OO - мафии сказать не могу.

P.S.: Хотя нет, есть действительно весьма полезный компонент - use cases, как способ анализа и спецификации требований. Хотя они, вообще говоря, достаточно параллельны всем прочим OO-прелестям и могут использоваться независимо от них.
ccase
Новичок
Posts: 36
Joined: 06 Sep 2003 20:29

Post by ccase »

Vovka wrote:Не подумайте только, что я имею что-то против господ аналистов - во всех отношениях приятные ребята, и абсолютно безвредные - до тех пор, по крайней мере, пока мне удаётся создавать у них иллюзию, что их диаграммки имеют какое-то отношение к моему коду.


Вот таких надо давить, пока они еще маленькие... :)

Удачи!
User avatar
vlad12345
Уже с Приветом
Posts: 605
Joined: 14 Feb 2002 10:01
Location: Russia

Post by vlad12345 »

den wrote:...Можно попробовать раскрутить контору на оплату сертификата: IBM test 486 - OOAD with UML...

Небольшое уточнение: сам по себе этот экзамен никакого сертификата не дает, он является необходимым среди прочих для получения сертификатов типа "IBM Certified Solution Developer" и т.п. Хотя в резюме вполне можно писать IBM UML, кому надо поймет.
Аня Гречкина
Уже с Приветом
Posts: 131
Joined: 17 Sep 2002 22:15

Post by Аня Гречкина »

ccase wrote:Вот таких надо давить, пока они еще маленькие... :)

Удачи!


Совершенно верно.

Обнаружено некоторое количество Rational's guidelines and templates for UML. Кому надо - давайте свои emails.
David
Новичок
Posts: 22
Joined: 12 Oct 1999 09:01
Location: Jerusalem

Re: Использование UML

Post by David »

Vlad G wrote:Будем скоро новый проект начинать. Начальник (уже давно не программирует) говорит, что ему сказали, что сейчас проекты пишутся с использованием UML.
Подскажите, с чего начать?
Какими тулсами вы пользуетесь?


1) Действительно немало новых проектов начинают с использованием UML. Моя компания тоже ведёт несколько больших Real-time & Embedded объектно-ориентированных проектов на C++ c UML.
2) Мы (вся группа) начали работу над проектом год назад с курса "UML-Object-Oriented Analysis and Design" (56 часов) израильской компании ACTL (actl.co.il), был выбран Rhapsody (это был удачный выбор) в качестве CASE + курс Rhapsody на 3 полных дня. Наняли консультанта по ОО анализу и дизайну из той же ACTL , который работает с нашей группой 1 день в неделю в течение всего проекта, приобрели литературу по ОО, С++, Patterns.
3) Заняло примерно по полгода у каждого, пока производительность вышла на нормальный уровень - процесс перестройки и вхождения был очень трудным. Понятно что мы не жалеем.
4) Правильный переход на новую ОО технологию - это дорогое удовольствие, например лицензия Rhapsody стоит около 5,000 дол. на девелопера, консультант - сам можешь оценить, плюс низкая производительность на долгий период. Хотя падение производитльности связана и с переходом на новый язык (с++) и на новое железо и на новую ОС - WxWorks.
5) Преимущества есть, но ОО это тоже не "silver bullet", т.е. и производительность не вырастет на порядок и от багов это не страховой полис. Переход на ОО - это скорее важное перспективное решение, которое принесёт положительные плоды (maintenance, например), но не всё сразу.
6) Важно очень, и Rhapsody это делает, чтобы код создавался автоматически. Мы всё время смотрим на код, но работаем при помощи properties (а их сотни) Rhapsody. А если делать UML в Visio, то в конце концов прервется связь между диаграммами и кодом и диаграммы выбросят.

Сейчас вечер и голова уже не варит. Если есть вопросы, можешь позвонить 02-6428033 или майл в профайле.

Подводя итоги, разве есть веская причина отказать начальству которое само желает новых и модных (модных на много длижайших лет), хорошооплачиваемых технологий? К тому же эти технологии аннулируют большую часть практического опыта этого самого начальства :-)
User avatar
Basil
Уже с Приветом
Posts: 8404
Joined: 06 Nov 2000 10:01
Location: SPb -> Silicon Valley, CA, USA

Post by Basil »

Расскажу про собственный опыт.

В некоторой конторе один и тот же проект делался трижды. Первый вариант был слеплен на коленке, второй делался с минимальным дизайном и спеками, третий с использованием УМЛ и ООА/ООД.

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

Второй вариант страдал тем что ГУИ переплелся с логикой и вносить новую фунциональность приходилось с трудом, частенько переписывая попутно кучу классов, делая код все более неудобоваримым, и ловить все новые наведенные ошибки.

Третий вариант делался с использованием Ратионал Росе. Исходный код вырос примерно в 10(!) раз по сравнению с предыдушим вариантом, исполнимый примерно в 3-4 раза (и это было критично, так как делалось для встроенной системы). Я работал в группе, которая делала промежуточный слой между сушествуюшим функциональным ядром и ГУИ.
К сожалению на достаточное количество итераций дизаин-имплементация не было ни денег ни времени, поэтому обшение с группой ГУИ скоро свелось к следуюшему:

Они: нам нужна такая то функциональность в таком то обьекте
Мы : этого нет в спеке
Они: но без этого у нас ГУИ не работает, давайте менять спек
Мы: это повлечет перепроектирование, иначе будет очень неэффективно
Они: делайте неэффективно, только бы работало

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

Ошибки менеджмента говорите? А у вас есть менеджер который знает как организовать разработку с использованием ООА/ООД и УМЛ? Отсюда и пляшите.
vlad_ca
Posts: 7
Joined: 19 Sep 2003 03:04

Post by vlad_ca »

Return to “Вопросы и новости IT”