初めましてこんにちは。 最近コードレビューの記事書いたら、Excelベースだったことを理由に Qiitaコメントとはてブで徹底的に燃やされたおじさんです。 いやね、僕だって使いたくて使ってるわけではなくてね、 できることなら使いたくないんですよ。 というわけで名誉挽回のために脱Excelできた話、 それも日本の三大悪三大風習に数えられるExcel設計書を抹殺した話を書きます。 (2/25修正:悪は言いすぎました。訂正します。) Growi 最高。 またの名をExcel方眼紙。 エクセルのセルの縦横を同じくらいの大きさに調整し方眼紙のようにして、 そこに設計書として文字と図と表を記載する方式。 メリット 一つのファイルに文字と図と表がまとめて記載できる テキストでは文字は書けても図と表が書けない Wordでは、文字と図表エリアとを2列表示するのが難しい できなくはないが面倒くさい UMLモデ
ブログ「読書猿 Classic: between/beyond readers」主宰。「読書猿」を名乗っているが、幼い頃から読書が大の苦手で、本を読んでも集中が切れるまでに20分かからず、1冊を読み終えるのに5年くらいかかっていた。 自分自身の苦手克服と学びの共有を兼ねて、1997年からインターネットでの発信(メルマガ)を開始。2008年にブログ「読書猿Classic」を開設。ギリシア時代の古典から最新の論文、個人のTwitterの投稿まで、先人たちが残してきたありとあらゆる知を「独学者の道具箱」「語学の道具箱」「探しものの道具箱」などカテゴリごとにまとめ、独自の視点で紹介し、人気を博す。現在も昼間はいち組織人として働きながら、朝夕の通勤時間と土日を利用して独学に励んでいる。 『アイデア大全』『問題解決大全』(共にフォレスト出版)はロングセラーとなっており、主婦から学生、学者まで幅広い層か
draw.io はブラウザを使用してフローチャート、プロセス図、組織図、UML 図、ER モデル、ネットワーク図などを作成できる優れたツールです。作成した図は xml ファイルとして保存でき、GitHub との連携もシームレスに行われます。3 年ほど愛用しているツールですが、隠された使い方がたくさんあります。すぐに忘れてしまうので取りまとめておきます。 「こんな使い方あるよ!オススメだよ!!」という方はぜひ編集リクエストをいただければ追記していく予定です 😊 ※ 主に参照している文献は以下、公式ブログは非常に分かりやすいのでオススメです。 ツイッター公式アカウント 公式ブログ ショートカット ショートカット集です。机の上に置いて覚えましょう。 Line / 線 まずは最も頻繁に使う Line(線)の使い方からご紹介します。 矢印をまっすぐに揃える ちまちまと矢印の線をドラッグして微調整し
はじめにTIG真野です。 秋のブログ週間2023 の3本目は、設計ドキュメントをGit管理して腐らせないようにがんばってみた話をします。 前段として6年前、「我々はいかにシステム開発におけるドキュメント腐る問題と戦えば良いのか」という記事を書いたのですが、その後の試行錯誤はどこにも残していないことに気づきました。普段のフューチャー技術ブログですとちょっと引け目を感じるテーマですが、秋の夜長を楽しむため読み物成分を多めに書くというテーマのこのブログリレーにピッタリな気がするため、この機会をお借りします。 ドキュメントも色々な種別があるかと思いますが、この記事では設計ドキュメントを指すことにします。設計ドキュメントは開発メンバーが参照するもので、ステークホルダーへの説明資料に引用して使うことはあれど、主目的は異なるという前提です。Design Docの場合もありますし、システム構成図、ERD、
はじめに現在所属しているプロジェクトではWebAPIやバッチ処理の設計の一環としてPlantUMLを利用しています。効率よく品質高くアウトプットを出すためには、プログラミング言語に対してコーディング規約があるように、UMLに対してもチームで設計するにあたり一定のルールを決める必要があります。 そこでプロジェクト内のPlantUMLを使用するうえでのガイドラインやルールをまとめる機会があり、せっかくなのでそれを記事化します。 記事のゴール シーケンス図設計におけるPlantUMLの標準化 必要最低限のルールだけに絞ってチーム設計の生産性と品質を上げる 記事の前提 ルールの想定の利用シーン: チームで大量生産する業務機能の処理フローを表現するために使う場合を想定。 また、この記事に記載されているルールはRDBを中心的に使用したAPI処理やバッチ処理等を念頭に置き決められたものです。 ルールの想
秋のブログ週間連載の7本目です。 はじめにPlantUMLで使えるテーマについてのご紹介です。 以前、チームで機能設計するためのPlantUML標準化の記事でも書かせていただきましたが、PlantUMLのデフォルトカラーって少しドライですよね。 色の好みは人それぞれで、あれはあれでカッコよさはありますが、複雑な図は少しでも可愛く描きたい・楽しく見たいものです。 この記事ではPlantUMLのテーマについて、いくつかのオプションを紹介していきます。「PlantUMLの色を変えてみたい!」という方は是非ご活用いただければ嬉しいです。 前提 PlantUMLでは、skinparamを利用して図のビジュアル各要素を定義しますが、「テーマ」はskinparamの集合体です この記事ではテーマの作り方や、各運用方法等については触れません この記事で紹介するオリジナルテーマはシーケンス図のために作られた
最近,仕事で使うことがあってたまたま気がついたのだが, PlantUML って JSON や YAML のデータを視覚化できるんだね。 やり方は簡単。たとえば { "firstName": "John", "lastName": "Smith", "isAlive": true, "age": 28, "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021-3100" }, "phoneNumbers": [ { "type": "home", "number": "212 555-1234" }, { "type": "office", "number": "646 555-4567" } ], "children": [], "spous
※ 参考記事「PlantUML を VSCode で利用したいけど、プレビューが表示されずエラーが出る」 参考(PlantUML 導入後の編集中画面) 2-2. ER図 今回作成したER図 Qiita記事でも、コードブロック内でPlantUMLの構文がそのまま使えます。(このER図は、Qiitaのコードブロックで表示させています) 今回作成したER図のPlantUMLの表記 @startuml yonde ' hide the spot hide circle ' avoid problems with angled crows feet skinparam linetype ortho entity "families" as families { id -- name nickname introduction created_at updated_at } entity "users
PlantUML + ERDでPlantERDです github.com モチベーション PlantERDの特徴 使い方 出力するテーブル数の制限について 技術的に頑張ったこと テストのこと Foreign keyで隣接している別のテーブルを探す方法 複数DB対応のつらみ 追記:2019/12/13 9:45 モチベーション 既存プロダクトへの不満が一番大きいです。 https://github.com/voormedia/rails-erd は出力が画像なので取り回ししづらい そもそもRails前提なので他言語とかでは使えない https://github.com/schemaspy/schemaspy も悪くなさそうなんだけどここまでリッチじゃなくていい テーブル数個の小規模アプリならいいんだけど、中規模以上のアプリで使うと人間が読むに耐えないERDが生成されて精神が崩壊する 僕は初め
はじめに ソフトウェア開発において、エンジニアが開発対象のドメインの業務に精通していない場合、書く内容やかける時間に程度はあれど 業務分析 や 要件定義 が必要になります。しかし、要件定義の方法論についての話題がネット上に上がることも少なく、書籍などもあまり話題になっていない印象があります (私の観測範囲では)。なので、私の場合、要件定義の実務では公の方法論を体系的に学ばずに、実務で見てきたものを自分なりにアレンジして対応してきました。 そんなとき、モデルベースの要件定義の方法論として リレーションシップ駆動分析 (RDRA) というものがあることを知りました。モデリングはずっと取り組んできていることなので、興味が湧いて少し調べてみると PlantUML でも表現できるというではありませんか! PlantUML Example for RDRA 2.0 ハンドブック そこで、RDRA2.0
ドキュメントツールのインストール(Windows) Macの場合の設定方法は、本項の後に記載 PowerShellの起動 各種ツールをインストールするため、PowerShellを管理者として実行 Windowsボタンを押下 powershell と入力 右クリックで管理者として実行 を選択します Chocolateyのインストール 本手順は前述で起動したPowerShellを利用 1.Chocolatey のサイトにアクセスし、インストールコマンドをクリップボードへコピー 2.前項でコピーしたコマンドをPowerShellにペーストして実行します Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServiceP
こんにちは!株式会社Holmesでエンジニアをしている平田です。 Holmesでは、現在、プロダクト開発にドメイン駆動設計を取り入れようと、社内で勉強会の開催や各メンバーが勉強したことを共有しあったりしています。 ドメイン駆動設計に取り組むにあたって、大切なことのことの一つにより良いモデルを作成する、モデリングがあります。 今回はそんなモデリングをPlantUMLで行う方法について、一例をご紹介できればと思います。 ※本記事のモデリング手法は以下の書籍を参考に行なっております。 PlantUMLとは なぜPlantUMLを用いるのか ユースケース図 全体像 @startuml,@enduml actors usecases rectangle ドメインモデル図 全体像 packages objects notes direction relations label 振り返り 最後に Pla
注:UML初心者に向けた記事です 最終的にこんな感じに… 注: AWS提供の画像を利用しますがAWSのサービスは使用しません。さらにAWSのアイコンプロジェクトが更新止まっており、Azureなども参照しています。 環境設定とねらい Visual Studio Code だけでUMLを練習する環境を作ります。Mac, Windows, Linuxで動きます。 用意するもの Visual Studio Code PlantUML 拡張 Java(ふつうは入ってます) GraphViz(msiインストーラあり) 上記の手順についてわからない人はVisual Studio Code で UML を描こう!が完璧なので、まずは設定を済ませてきてください。 まずは書いてみよう Visual Studio Codeで新規ファイルを作って、まずは myfirst.pu というテキストファイルで保存します。
GitHub で Markdown の中に Mermaid を埋め込んだら表示してくれる機能がバレンタイン デーにリリースされました。 今まで Mermaid は知らなくて、テキストでアクティビティ図やクラス図みたいなものを書く必要があるときは PlantUML を使ってましたが GitHub が対応したということで Mermaid に入門してみようと思います。 因みに、この記事を書き始めた時点では、まだ何もやっていないので Mermaid については名前と図が書けるらしいということしか知りません。 では、やってみようと思います。 試すための環境 Visual Studio Code の Markdown Preview Mermaid Support を入れることで Markdown のプレビュー機能が Mermaid のプレビューに対応します。 導入前はこんな感じですが 拡張機能を入れ
UMLをテキストベースで記述できるPlantUMLを使っている方は多いのではないでしょうか。クラス図を流用する形でER図も描くことができます。そして、データベースはすでにあり、そこからPlantUML用に出力できればいいのに、と考えている方もまた多いでしょう。 そんな方にお勧めなのがplant_erdです。各種データベースに対応したER図エクスポートソフトウェアです。 plant_erdの使い方 出力した内容をPlantUMLで表示しています。 plant_erdはSQLite3、MySQLそしてPostgreSQLに対応しています。各データベースの内容をそのままPlantUML向けに出力が可能です。特定のテーブルだけを出力対象にもできます。リレーションも再現され、データベース構造をドキュメントに書き出すのにぴったりです。 plant_erdはGo製のオープンソース・ソフトウェア(MIT
長くなるので、図の書き方はクラス図とシーケンス図だけで。 その他の図については 続・PlantUML使い方メモ #PlantUML - Qiita を参照。 PlantUML とは テキストで UML 図を記述できる DSL の一種(たぶん) 本体は Java で書かれていて、単一の jar ファイルを落としてきてコマンドラインから実行できる plantuml/plantuml: Generate UML diagram from textual description ただし、実際に使うときは Visual Studio Code とかのプラグインを入れて実行することが多いと思う ライセンスは GPL v3 plantuml/license.txt at master · plantuml/plantuml 環境構築 OS は Windows10。 Java > java --versi
はじめに 趣味で宇宙開発を行う団体「リーマンサット・プロジェクト」がお送りする 新春アドベントカレンダーです。 リーマンサット・プロジェクトは「普通の人が集まって宇宙開発しよう」を 合言葉に活動をしている民間団体です。 他では経験できない「宇宙開発プロジェクト」に誰もが携わることができます。 興味を持たれた方は https://www.rymansat.com/join からお気軽にどうぞ。 RSP02でシステム電源開発とSpaceSuitsサークルでパーツのモデリングをさせていただいています。 やりたいことがあれば、"できる" "できない"に関わらず試すことができるのが趣味ならではでないでしょうか。 今回、PlantUMLを使ってPLSS(生命維持装置)をモデリングしようと思います。 実際にはSysMLを使いモデリングする方がいいらしいです。 PlantUMLの使い方については下記リンク
Git Flow のブランチモデルは図で描かれることが多いです。Excel や Illustrator で描くと綺麗ですが修正や管理が大変です。 PlantUML はテキストで書けて修正や管理が簡単です。そして図の表示もできる PlantUML で Git Flow を書きました。 前半は git-flow のブランチモデルを PlantUML で作成する手順を 5 Step で紹介します。 後半は GitHub Flow や GitLab Flow そして git-flow を改善した Git Epic Flow を紹介します。 用語説明 Git は分散型バージョン管理システムです。 Git Flow は Git の機能のブランチの作成や更新をするルールのモデルです。 PlantUML はテキストで UML を記述できる DSL(ドメイン特化言語) です。 UML のシーケンス図は、オブ
【12/24にGitLab対応!】テキストで自在に「描く」- KrokiではじめるDiagram as CodeMarkdownGitLabasciidocVisualStudioCodekroki これは、 NTTコミュニケーションズ Advent Calendar 2020 25日目の記事です。 昨日は @tnoyama さんの「TEKTONとArgoを比較してみた」でした。お楽しみいただけましたか? Krokiとは 本記事では、テキストからの図表生成ツール Krokiを紹介します。最新バージョンは0.9.0です。 公式docs: Kroki! GitHub: yuzutech/kroki: Creates diagrams from textual descriptions! 概要 Kroki!は、テキストから統一的なAPIで、 UML C4 データ可視化 その他図表 を、PNG,
技術4課の多田です. AWS 環境の構成図を書く機会で PowerPoint や Cacoo 等のサービスを使うことがあると思います.作図もコードで制御する方法もないかと思い調べてみたら,「AWS-PlantUML」というツールがありました.今回はこのツールを使って作図する方法と所感を書いていきます. milo-minderbinder/AWS-PlantUML 「AWS-PlantUML」とは 「AWS-PlantUML」とは,PlantUML 形式で AWS 構成図を書くためのツールになります.PlantUML の実行環境は調べればたくさん出てきますが,僕は普段 Visual Studio Code(以下,vscode)を使うため vscode で使う環境をセットアップしました. 参考URL PlantUML qjebbs/vscode-plantuml 「AWS-PlantUML」を
A comprehensive list of various text to diagram tools which you can use directly from your web-browser. Ordered roughly by recency and similarity. D2 https://play.d2lang.com/ all Pikchr https://pikchr.org/home/pikchrshow all Diagon https://arthursonzogni.com/Diagon text-to-ascii, sequence, tree, table, syntax, flow, graph, frame Source: https://github.com/ArthurSonzogni/Diagon Typograms https://co
今お世話になっている会社は、納品の関係でドキュメントはExcelで作ることが多いのですが、、、 図はなるべくPlantUMLに置き換えていこうと思って少しずつ使用範囲を広げています。 (pngで出力してExcelに張り付ける使い方が主ですが、、、 ただ、見た目等の本質的じゃないところで、少々指摘を貰ったりして、 ちょっとした小細工を使い回したりしているので、Tipsを覚書きしていきます。 色変更 デフォルトだと以下の色使いなのですが、会社指定のスライドマスタとか、 他の人が作った資料に一緒に載せると、統一感が無いことがあります。 色の変更は以下のページに説明があるように、skinparamを指定すれば変更できます。 指定できる項目は多岐にわたるのですが、ひとまずざっくり色を変更したければ、 以下5つを変更すればOKです。 矢印色(ArrowColor) フォント色(DefaultFontC
Imagine being able to share a model or diagram between all members of the team that they can all understand and contribute to and edit draw diagrams like below automatically from a text description. describe a system before you build it, when you’re building it, and as you maintain it into the future - keeping the description and the system current, and in sync. maintain that text version in a sou
この記事はQiita の記事を加筆修正したものです。 はじめに最近 Visual Studio Code で Markdown 環境を作ったのですが、markdown-preview-enhancedが思いのほか何でもできて、とくに理系のノートとして良さげに感じたのでメモします。 すでに良記事(こちらやこちらとか)がたくさん挙げられているので参考にしてください。 ノートに求めるものノートに求める要素を自分の経験を元に独断と偏見で挙げると、 数式が手軽に書ける図が手軽に書ける表が手軽に書けるグラフが手軽に書けるてな感じかと思います。とにかく手軽にサクッと書きたいですよね。 Visual Studio Code + markdown-preview-enhanced はこれらすべてを叶えてくれます。 markdown-preview-enhancedmarkdown-preview-enhan
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く