Здравствуйте.
Расскажите пожалуйста о культуре хранения uml диаграмма в проекте.
Проект на рельсах. Среды разработки у всех разработчиков разные.
Мне нужно описать один не очень простой процесс посредством диаграммы последовательности и хотелось бы , чтобы другие разработчики могли беспрепятственно его открывать.
Как хранить эти диаграммы , как пробивать их контролем версий , нужно ли отдельное место вне файлов проекта для хранения этих диаграмм ?( Проект — модули идущие на продажу, а не
единичный экземпляр приложения на нашем сервере).
Спасибо.
Здравствуйте, kravcneger, Вы писали:
K>Мне нужно описать один не очень простой процесс посредством диаграммы последовательности и хотелось бы , чтобы другие разработчики могли беспрепятственно его открывать. K>Как хранить эти диаграммы , как пробивать их контролем версий , нужно ли отдельное место вне файлов проекта для хранения этих диаграмм ?( Проект — модули идущие на продажу, а не K>единичный экземпляр приложения на нашем сервере).
Могу подсказать один из способов. Для примера можно использовать Dia+Dia Shapes.
Преимущества:
1. Кроссплатформенность (Unix-like, Windows, Mac OS).
2. Расширение файлов dia, но формат xml (контроль версий).
3. Экономия места в репозитории, малый размер файлов.
4. Поддержка огромного количества диаграмм, в том числе и UML.
5. Простая установка, в винде установщик, в линуксах прямо в репозитории дистрибутива и т.д.
6. Можно создавать гигантские документы из десятков тысяч элементов, будет работать быстро, на современном компьютере мгновенно.
7. Преобразование в векторные (svg) и растровые (прозрачный png, jpg и т.д.) форматы, в том числе и через консоль, благодаря чему при небольшом допиле можно автоматически генерировать документацию (например, в doxygen посредством jenkins и т.д.).
Здравствуйте, kravcneger, Вы писали:
K>Мне нужно описать один не очень простой процесс посредством диаграммы последовательности и хотелось бы , чтобы другие разработчики могли беспрепятственно его открывать.
Если только это, то в PDF. Ну и исходник в контроле версий.
Здравствуйте, kravcneger, Вы писали:
K>Здравствуйте. K>Расскажите пожалуйста о культуре хранения uml диаграмма в проекте.
Сильно зависит от целей. На мой взгляд, UML силен не диаграммами, а моделями. Модель это не просто квадратик, а как минимум еще описание понятия и связи.
Но если задача разовая, может подойти и диаграмма как рисунок (MS Visio, Openoffice Draw и т.п.).
K>Как хранить эти диаграммы , как пробивать их контролем версий , нужно ли отдельное место вне файлов проекта для хранения этих диаграмм ?( Проект — модули идущие на продажу, а не единичный экземпляр приложения на нашем сервере).
Тут главное понять два ключевых момента:
* Для кого рисуются диаграммы — разработчиков или клиентов.
* Диаграммы описывают как текущую реализацию (as-is), так и будущую (to-be). Сначала решите, кто будет отвечать за актуальность диаграмм as-is и исходя из этого решения надо строить модель хранения.
Самый простой вариант — разработчики рисуют для разработчиков. Тогда можно посмотреть http://ru.plantuml.com/. Модель текстовом файле и на ее основе строится UML-диаграмма. В этом случае простенькие plant-
описания можно хранить вместе с исходниками (+ генерация картинок в момент сборки документации).
Для Intellij IDEA есть хороший плагин, поддерживающий plantuml.
Еще надо иметь ввиду, что серьезные инструменты моделирования (Enterprise Architect, Rational Rose и Visual Paradigm и т.д.) предлагают свои инструменты совместной работы и управления версиями.
Здравствуйте, kravcneger, Вы писали:
K>Здравствуйте. K>Расскажите пожалуйста о культуре хранения uml диаграмма в проекте. K>Проект на рельсах. Среды разработки у всех разработчиков разные. K>Мне нужно описать один не очень простой процесс посредством диаграммы последовательности и хотелось бы , чтобы другие разработчики могли беспрепятственно его открывать. K>Как хранить эти диаграммы , как пробивать их контролем версий , нужно ли отдельное место вне файлов проекта для хранения этих диаграмм ?( Проект — модули идущие на продажу, а не K>единичный экземпляр приложения на нашем сервере). K>Спасибо.
Мне как-то очень понравилась идея uml text notition
Здравствуйте, kravcneger, Вы писали:
K>Как хранить эти диаграммы , как пробивать их контролем версий , нужно ли отдельное место вне файлов проекта для хранения этих диаграмм ?( Проект — модули идущие на продажу, а не K>единичный экземпляр приложения на нашем сервере).
В таком случае самый правильный вариант такой — диаграммы хранить в виде исходного текста для plantuml прямо в комментариях к коду. Plantuml прикручивается к doxygen, и в результате получается отличная документация с диаграммами там, где надо.