設計書作成ツールの現状は?
システム開発時に設計書を作成していますか?そのとき何のツールを使っていますか?
おそらく下記のいずれかではないでしょうか。※調査したわけではなくQiita記事を読んだ印象と経験と独断です。
・Excel
・Word
・Markdown記述(VS Codeで書くのかな?)
私はExcelを使っています。便利ですよね、直感的にかけて編集の自由度も高く、絵も自由に貼れる。
実績もあるし、どのPCにもインストールされていることがほとんど。
しかしQiitaの記事を調べると以下の論調があります。
Excelによる設計書を止めたい
Excelによる設計書を止めたい理由
理由はGitなどのバージョン管理ツールで管理しづらいからです。一番多い理由です。これはWordも同じです。
Excelの保存ファイル拡張子である「xlsx」はバイナリファイルです。
そのためバージョン管理ツールに入れることはできますが、変更毎にリポジトリのデータ量が急激に増えるのです。
例えば10MBのExcelファイル内に誤字があって一文字変えた場合でも、バージョン管理ツールで差分を取ると10MB分全部変更があるとみなされてしまうのです。
またバージョン管理ツールを使えないため、変更場所の特定もできません。
※他にも理由があるかもしれませんが、それは今回置いておきます。
新たな可能性→「xlsx 保存をやめて、htm 保存をしましょう」
諸悪の根源は「xlsx」がバイナリであることです。
それならば「xlsx」を止めましょう。その代わりに以下にしてしまえば良いのではないでしょうか。
・Excelを「xlsx」では保存せずに「htm」で保存する。
・Excelで「htm」を直接編集する。
htmはテキストデータです。
バージョン管理ツールと相性が良いです。
Excel内の絵もpngとして別フォルダに格納され、リンクも保持されます。
Excelで「htm」編集できるの? → めっちゃ簡単です。
これは実際にやってみたほうが良いでしょう。以下はExcel 2016で行ったものです。
まずは以下のような既存のxlsxファイルをhtmに変換しましょう。
ファイル→名前を付けて保存→「このPC」でダブルクリック
ファイルの種類から「Webページ」を選ぶだけです。
こんな感じでhtmファイルとfilesフォルダが作成されます。
filesフォルダには絵のファイルやシートが入っていますね。
一度Excelを閉じてから、再度Excelを開いてこの作成されたhtmを開いてみましょう。
どうでしょうか。xlsxとの違いは背景のグリッド線ぐらいですね。なんとシートまで再現されています。
もちろん編集もできます。やってみましょう。
以下のように作成日を変えたり、4~11行目を色々変えてみました。普通のExcel操作と一緒の感覚で編集できます。
一点注意、「A起動」等のボタンはpngの絵として取り込まれているため、この文字列を変えることはできません。
ここまでで使える可能性は感じていただけたと思います。
ただ、実は致命的な落とし穴があったのです。大変残念です。
htm保存の落とし穴ありますか? → 致命的なやつ、あります。
落とし穴は、画像ファイルのファイル名が保存するたびに代わることです。
まず現在の画像フォルダ内のファイルが以下だとします。
そしてExcel上でただ「上書きボタン」を1回押します。すると以下になります。
img002が005に変化し、それ以外にもちょこちょこと変わっています。実に謎な現象です。
この動きのせいで希望は絶望へかわりました。私のワクワクを返せ!
それ以外にも、htmファイルの中身が結構変わってしまっています。
謎の暗号があり、それがごっそり変更されて結局差分量が大きいです。
下図はGitではなく、Mercurialでバージョン管理した時の差分の絵です。
右下が謎の暗号。先頭に「-」がついているのは、これは以前のバージョンから削除されたことを意味します。
落としどころ → 絵をほとんど使わないなら良い方法でしょう。
以下のように、絵がないExcelでhtmの差分を見てみました。
以前はボタンを表すのにExcelの図形を使っていましたが、今回は罫線とセルの色塗りだけです。
その時のMercurialによる差分は以下です。
前のような意味不明な暗号文は消えました。良かった。ただちょとした変更でもちょこちょこ差分が出てしまっています。
絵の中央下のバーで紫に塗られた部分が変更部分です。意外と多いな。ただテキストの差分なら大したデータ量にはならないでしょう。
htm保存のExcel設計書としての使い道
Excelに絵を含めない場合はとても良い方法です。
なぜならExcelによる柔軟な編集機能を使いつつ、バージョン管理ツールでも管理しやすいためです。いいとこどりです。
まさにドラゴンクエスト2の「破壊のハヤブサの剣」レベルの強力な方法です。
さらに、参照したいだけの人はブラウザでブックマークに登録するだけでExcelロックなしで簡単に確認できます。
逆にExcelに絵を使う場合はお薦めしません。絵ファイルの管理でバージョン管理でデータの肥大化が起こるためです。
試したい方はどうぞお使いください。
ちなみにhtmからxlsx保存もできるようです。どこまでうまくいくかは未知数です。