45

シーケンス図とタイミング図を描画するための簡単な言語/コマンドラインユーティリティを探しています(2つの異なるツールである可能性があります)。シーケンス図を描くためのMscgenをすでに見つけており、かなり見栄えがしますが、他の可能性を研究しています。

ありがとう

4

9 に答える 9

32

プラントUML . http://plantuml.sourceforge.net/sequence.html

PlantUML は、シンプルで人間が読めるテキスト記述を使用して、UML ダイアグラムを描画するために使用されます。

生成されたイメージは、GPL/LGPL/ASL/EPL/MIT ライセンスを参照することなく使用できます。PlantUML で生成されたことを規定する必要さえありませんが、これは PlantUML チームによって高く評価されます。

私の経験では、使いやすく、見栄えの良い図が作成されます。 これ以上強くお勧めすることはできません。

出力ファイルの種類:

-tsvg     To generate images using SVG format
-teps     To generate images using EPS format
-txmi     To generate XMI file for class diagram
-thtml    To generate HTML files for class diagram
-ttxt     To generate images with ASCII art
-tutxt    To generate images with ASCII art using Unicode characters

簡単なシーケンス図を作成する方法を示す例を次に示します。 ここに画像の説明を入力

@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response

Alice -> Bob: Another authentication Request
Alice <-- Bob: another authentication Response
@enduml

ライフラインのアクティブ化と破棄を使用して、より詳細な図を作成することもできます。 ここに画像の説明を入力

@startuml
participant User

User -> A: DoWork
activate A

A -> B: << createRequest >>
activate B

B -> C: DoWork
activate C
C --> B: WorkDone
destroy C

B --> A: RequestCreated
deactivate B

A -> User: Done
deactivate A

@enduml
于 2015-01-11T14:22:04.393 に答える
30

私が見つけた最高のソフトウェアは、プレーン テキストからシーケンス図を作成するために通常使用するもので、SDEditです。これは Java ツールなので、どのオペレーティング システムでも使用できます。しかもフリーソフト!

このツールを使用すると、次のように記述できます。

#![SD ticket order]
ext:External[pe]
user:Actor
/order:Order[x]
db:TicketDB
acc:Account

ext:user.order a ticket!
user:order.new()
order:return=db.reserve(date,count)
db:return=acc.debit(cost)
acc:return=db.bonus(date,count)

これを取得するには:

SDEdit の例

于 2012-10-09T20:14:34.780 に答える
20

シーケンス図については、websequencediagramsを参照してください。見栄えの良い図を作成し、多くの機能を備えています (サンプル ページ)。これはコマンド ライン ユーティリティではありませんが、Web API を備えています。

ditaaは、ASCII ソースから見栄えの良い図を作成します。Java で書かれており、コマンド ラインで呼び出して ascii テキストを図に変換できます。

于 2011-06-15T21:57:16.587 に答える
7

update : おそらくmermaidで十分です。 hackmdなどのさまざまなマークダウン エディターで使用できます。それ以外の場合、印刷については、以下の私の元の回答を参照してください。


この答えは、おそらくあなたが念頭に置いていたものではないので、簡単に文脈を説明しましょう。

何年にもわたって、読み書きのできるプログラミングは、高品質のソフトウェアを作成し、そのコードを理解しやすく保つための非常に優れた方法であると評価するようになりました。おそらく唯一の方法です... いずれにせよ、シーケンス図は視覚的であり、コードと記述をうまく補完します。これにより、理解が容易になります。

LaTeX / PGF / pgf-umlsd / noweb

したがって、この目的のために、LaTeX + pgf-umlsdは非常に見栄えの良い図を作成できます。それらは、他のほとんどのツールと同様に、意味的に指定されます。プログラムは右の画像を計算します。

したがって、このLaTeXコード

\documentclass{article}
\usepackage{tikz}
\usepackage{pgf-umlsd}

\begin{document}
\begin{sequencediagram}
  \newthread{t}{:Thread}
  \newinst[1]{i}{:Instance}
  \begin{sdblock}{Block}{description}
     \begin{call}{t}{function()}{i}{}
  \end{call}
  \end{sdblock}
\end{sequencediagram}
\end{document}

この画像を作成します(もちろん、ドキュメントの残りのフォントなどを使用します):

マニュアルの例

LaTeX ソースでは、実行可能コードの関連部分が図のすぐ下にあり、すべてがまとめられています。noweb( site , docs ) を使用して、実行可能なコードまたは記事のソースを取得します。

HTH。

于 2014-10-25T12:47:16.527 に答える
2

GenMyModelがシーケンス図をサポートするようになりました。

配列サンプル

于 2014-07-30T05:28:36.657 に答える
1

シーケンス図については、非常に強力なツールであるVisual Paradigmも参照してください。

于 2011-12-20T23:36:22.047 に答える
1

シーケンス図については、UMLGraphも参照してください。

2018-08-24 更新: Web ページはこちらに移動したようです。

于 2011-09-07T15:02:36.380 に答える
1

EventStudio System Designer 5が役に立つかもしれません。テキストベースの入力からシーケンス図を生成します。また、複数のシナリオを処理します。

于 2011-06-22T02:15:36.317 に答える