Rysowanie schematów sekwencji [zamknięte]

Szukam łatwego języka / narzędzia wiersza poleceń do rysowania diagramów sekwencji i timing (mogą to być 2 różne narzędzia). Znalazłem już Mscgen do rysowania schematów sekwencji i wygląda całkiem nieźle, ale studiuję inne możliwości.

Thanks

Author: scravy, 2011-06-16

9 answers

Najlepszym oprogramowaniem, jakie znalazłem i zwykle używam do tworzenia diagramów sekwencji ze zwykłego tekstu jest SDEdit . Jest to narzędzie Java, więc można go używać w dowolnym systemie operacyjnym. I to jest wolne oprogramowanie!

Za pomocą tego narzędzia piszesz:

#![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)

Aby uzyskać to:

Przykład SDEdit

 25
Author: sgmonda,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-09 20:14:34

PlantUML . http://plantuml.sourceforge.net/sequence.html

PlantUML jest używany do rysowania diagramu UML, przy użyciu prostego i ludzkiego czytelny opis tekstowy.

Wygenerowane obrazy mogą być następnie używane bez odniesienia do Licencja GPL / LGPL / ASL / EPL / MIT. Nie jest nawet konieczne, aby określić że zostały one wygenerowane z PlantUML, chociaż będzie to doceniany przez zespół PlantUML.

Z mojego doświadczenia wynika, że łatwy w użyciu i tworzy ładne diagramy. Nie mogę go bardziej polecić.

Typy plików wyjściowych:

-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

Oto przykład pokazujący jak stworzyć prosty diagram sekwencji. Tutaj wpisz opis obrazka

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

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

Można również tworzyć bardziej szczegółowe diagramy za pomocą aktywacji linii ratunkowej i zniszczenia: Tutaj wpisz opis obrazka

@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
 18
Author: user3226306,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-01 04:00:52

Dla diagramów sekwencji, można spojrzeć na websequencediagramy - tworzy ładnie wyglądające diagramy i posiada wiele funkcjonalności (Przykładowa Strona ). Nie jest to narzędzie wiersza poleceń, ale ma swoje Web-API.

Ditaa tworzy ładnie wyglądające diagramy ze źródła ascii. Napisany w Javie, może być wywołany w wierszu poleceń, aby przekonwertować tekst ascii na diagramy.

 17
Author: marapet,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-15 21:57:16

Innym narzędziem diagramu sekwencji jest http://sequencediagram.org Gdzie możliwe jest narysowanie diagramu w celu wygenerowania skryptu i skryptu w celu uzyskania diagramu w tym samym czasie.

Więc jest to dobre dla dużych diagramów, gdzie zwykle tracisz kontrolę nad tym, gdzie jesteś w skrypcie.

Tutaj wpisz opis obrazka

 9
Author: Staffan Persson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-02 00:54:43

Ta odpowiedź może nie jest dokładnie tym, co miałeś na myśli, więc pozwól mi krótko podać kontekst.

Przez lata doceniłem umiejętność programowania Literackiego jako super miły sposób pisania wysokiej jakości oprogramowania i utrzymywania tego kodu w zrozumiałości. Może to jedyny sposób... W każdym razie Schematy sekwencji, będąc wizualne, ładnie uzupełniają kod i pisanie. Ułatwia to zrozumienie.

LaTeX / PGF / pgf-umlsd / noweb

Więc w tym celu LaTeX + pgf-umlsd może tworzyć bardzo dobrze wyglądające diagramy. Są one określone semantycznie, jak większość innych narzędzi, co oznacza, że mówisz co sekwencji co, a nie jak powinien wyglądać. Program oblicza właściwy obraz.

Więc ten Latexowy kod

\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}

Tworzy ten obrazek (oczywiście używając czcionek z reszty dokumentu itp.):

przykład z podręcznika

W źródle LaTeX odpowiednie bity kodu wykonywalnego są po prostu poniżej diagramu, trzymanie rzeczy razem. Używam noweb (witryna, docs ), aby uzyskać uruchamialny kod lub źródło artykułu.

HTH.

 5
Author: wires,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-23 22:17:24

GenMyModel obsługuje teraz diagramy sekwencji.

Próbka sekwencji

 2
Author: Xaelis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-30 05:28:36

EventStudio System Designer 5 może działać dla Ciebie. Generuje diagramy sekwencji z wprowadzania tekstu. Obsługuje również wiele scenariuszy.

 1
Author: Sandeep,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-22 02:15:36

Dla diagramów sekwencji można również spojrzeć na Visual Paradigm , dość potężne narzędzie.

 1
Author: Darren Burgess,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-20 23:36:22

Dla diagramów sekwencji , Warto również spojrzeć na UMLGraph.

Aktualizacja 2018-08-24: wydaje się, że strona internetowa została przeniesiona do tutaj .

 1
Author: sebastian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-24 12:31:14