遷移図生成ツール blodkdiag の紹介 / python workshop 2010/12

24
遷遷遷遷遷遷遷遷 blockdiag 遷遷遷 小小 小 (@tk0miya) 2010-12-08

Upload: takeshi-komiya

Post on 30-Jun-2015

9.115 views

Category:

Technology


4 download

DESCRIPTION

遷移図生成ツール blockdiag の紹介at 帰ってきた Python Workshop 2010/12.

TRANSCRIPT

Page 1: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

遷移図生成ツール blockdiag の紹介

小宮 健 (@tk0miya)2010-12-08

Page 2: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

自己紹介小宮 健 (@tk0miya)株式会社タイムインターメディア所属普段は Web アプリ開発 (PHP, Ruby など ) して

ますPython 歴は約 1 年ぐらい

発表するのは初めて!Sphinx-users とか Python mini hack-a-thon

に出没

Page 3: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

遷移図作ってますか ?プロジェクトで画面遷移図を作ることになった

弊社では Excel 、 Visio で作ることが多い画面を箱、遷移を矢印で表現するタイプのもの

実際にやってみると大変!

Page 4: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その1:追加 / 削除が大変ここに 1 画面追加

Page 5: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その1:追加 / 削除が大変1 . スキマを作る

Page 6: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その1:追加 / 削除が大変2 . 図形を置く

Page 7: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その2:ずれる

Page 8: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その2:ずれる

Page 9: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その2:ずれる

Page 10: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その2:ずれる

Page 11: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

苦労 その 3 :その他Excel のバージョンが合わなくて図が壊れた図の微調整ばかりで全然進まないだんだん Excel ( や Visio) が嫌いになってきたSphinx を使ってみたいのに組み合わせづらい

一度画像で保存する必要がある

Page 12: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

こんなのメンテナンスしたくない!

Page 13: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

というわけでツールを作ってみました

Page 14: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag ( ぶろっくだいあぐらむ )遷移図生成ツール定義ファイル ( テキスト ) から画像 (PNG, SVG) を

生成Graphviz っぽい文法テキストなのでバージョン管理しやすい

自動的にレイアウトしてくれる追加 / 削除が簡単ずれたりしない

日本語 (UTF-8) 対応easy_install blockdiag でインストール可能

Page 15: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag の使い方1. 遷移図の定義を作ります

diagram { A -> B -> C; B -> D;}

2. blockdiag コマンドで画像を生成 % blockdiag –o sample.png input.diag

Page 16: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag :細かい装飾 (1)各要素ごとに色、画像、矢印の向きなどが設定でき

る背景色、線の色、実線 / 点線背景画像矢印の向き

Page 17: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag :細かい装飾 (2)そのほかの装飾

ノードのグルーピング遷移の説明文 ( 短め )

Page 18: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag :ちょっと複雑な例diagram { toppage -> add -> add_confirm -> toppage; toppage -> edit -> edit_confirm -> toppage; toppage -> delete_confirm -> toppage;

toppage [label = "○○ マスタ管理画面 \n トップページ "]; add [label = "○○ 追加画面 "]; add_confirm [label = "○○ 追加画面 \n( 確認 )"]; edit [label = "○○ 編集画面 "]; edit_confirm [label = "○○ 編集画面 \n( 確認 )"]; delete_confirm [label = "○○ 削除画面 \n( 確認 )"];}

Page 19: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag :ちょっと複雑な例

Page 20: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

デモhttp://blockdiag.appspot.com/

Page 21: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

blockdiag を使おうblockdiag コマンド

% blockdiag –o output.png input.diag% blockdiag –T svg output.svg input.diag

オンラインデモhttp://tk0

miya.bitbucket.org/blockdiag/build/html/demo.html

SVG が表示できるブラウザで!リファレンス

http://tk0miya.bitbucket.org/blockdiag/build/html/

Page 22: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

Sphinx との連携Sphinx 用プラグイン: sphinxcontrib-

blockdiag% easy_install sphinxcontrib-blockdiag

reST の中に埋め込むことができます.. blockdiag::

diagram { A -> B -> C; B -> D;}

使用例http://tk0miya.bitbucket.org/blockdiag/build/ht

ml/sphinxcontrib.html

Page 23: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

今後の予定ノードの形状切り替え

ひし形、楕円、角丸の四角、メール、 DB ( 円筒 ) 、ファイル

レイアウトエンジンの見直し遷移図以外のブロック図にも対応したい ( 妄想 )

遷移図以外のドキュメントも補助ツールを作りたい画面設計書をもっと簡単に!もっと手軽に!

興味がある方は @tk0miya に声をかけてください

Page 24: 遷移図生成ツール blodkdiag の紹介 / Python Workshop 2010/12

おしまいご静聴ありがとうございました