Создание UML-диаграмм из текстового представления

Как я могу создать диаграмму последовательности UML из файла, содержащего текстовое представление моего процесса, с инструментами командной строки в Linux?

Ответ 1

Для этого существует много (много = более 10) инструментов.
См. полный список.

Ответ 2

Хотя PlantUML указан в принятом ответе (среди многих других инструментов), он заслуживает большего внимания.

В дополнение к тому, чтобы быть легко завернутым в инструмент командной строки, PlantUML также имеет

  • отличная документация (ознакомьтесь с документами для диаграмм последовательности)
  • простой и мощный синтаксис (может сравниться с UMLGraph)
  • настраиваемый вывод

Однако PlantUML поставляется в виде java-архива, поэтому может потребоваться следующая настройка:

  • ява
  • graphviz (не требуется для диаграмм последовательности)
  • a bash обертка

java и graphviz доступны как пакеты для основных дистрибутивов Linux. Сам PlantUML доступен для Fedora, но не Ubuntu (по состоянию на 22 октября 2013 года). Если вы попали в лагерь Ubuntu: загрузите файл jar с основного сайта и оберните как bash script.

A bash wrapper (как указано ниже) может быть сохранен в файле с именем plantuml на вашем пути, то есть в одной из каталогов, перечисленных в echo $PATH. Не забудьте сделать его исполняемым с помощью chmod u+x plantuml.

#!/bin/bash
# from the vim syntax plugin README at aklt/plantuml-syntax on github
java -jar $HOME/path/to/plantuml.jar -tsvg [email protected]

Затем запустите plantuml apple.uml berry.uml, и plantuml создаст apple.svg berry.svg.

Ответ 3

Не уверен, что это то, что вы хотите, но UMLGraph может генерировать диаграммы последовательности, используя graphviz и ghostscript...

Ответ 4

Если ваше текстовое представление близко похоже на yuml, вы можете использовать его для создавать изображения, например

Простая ассоциация

[Customer]->[Billing Address]
<img src="http://yuml.me/diagram/scruffy/class/[Customer]->[Billing Address]"/>
Image of sample UML relationship

Ответ 5

Поместите следующий источник в .html файл и откройте его в браузере:

<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script>
            $(document).ready(function () {
                $('textarea').each(function () {
                    $(this).hide();
                    var source = $(this).html();
                    $('body').append('<img src="http://yuml.me/diagram/scruffy/class/'
                        + source + '" />');
                });
            });
        </script>
    </head>
    <body>
        <textarea>
            [note: You can stick notes on diagrams too!{bg:cornsilk}],
            [Customer]<>1-orders 0..*>[Order],
            [Order]++*-*>[LineItem],
            [Order]-1>[DeliveryMethod],
            [Order]*-*>[Product],
            [Category]<->[Product],
            [DeliveryMethod]^[National],
            [DeliveryMethod]^[International]
        </textarea>
    </body>
</html>

Вы должны увидеть диаграмму , соответствующую источнику в теге textarea. Исправьте источник в соответствии с образцами yuml, чтобы нарисовать собственную диаграмму.

Ответ 7

Используйте script для замены:

  • Одно пространство с несколькими пробелами
  • Запятые с символами столбца, например |
  • Символы новой строки с возвратом каретки плюс отступы в пространстве
  • Десны с несколькими штрихами
  • Больше и меньше символов с символами пробела столбца

Ссылки