システム仕様書を作成する際に使うと便利なツールたち(主にWeb系向け)


小さい案件でも仕様書は残しておくべき。言わずもがな

社内WikiとかのナレッジDBがない&仕様書が存在しないプロジェクトの改修依頼が来た時、ChatWorkとかSlack(場合によってはメール)とかのやり取りを遡ったり、一からソースコードなめるように見たりして、どうにかそのプロジェクトの仕様を理解する必要があります。
テストコードなんて書かれていないプログラム、なんてのも当たり前に存在するα世界線で生きているので、
自分の関わるプロジェクトに関してはせめてマシな状態にするためにツールを使ってあらがってみます。

phpDocumentor(自動ドキュメント出力ツール)

phpDocumentorはあなたのPHPソースコードとDocBlockのコメントを分析してAPIドキュメントの完全なセットを生成することができるアプリケーションです。

phpDocumentorの公式はPEARでのインストールを推奨していますが、直近でPEAR公式のgo-pear.phpにバックドアが仕込まれていたというのもあるので、
公式サイトからphpDocumentor.pharをダウンロードし、Composerのvender/binディレクトリに直接おいて使用するのがいいのかなと

参考:php - PHPDoc with laravel - Stack Overflow

ちなみにComposerからのインストールは公式で推奨されてないぽいです↓

Please note that we are not able to be compatible with all types of setups. In some situations phpDocumentor will block updates of other packages. We do not recommend using composer to install phpDocumentor.

phpDocumentor実行コマンド例

php [phpDocumentor.pharのパス] -d [解析対象のディレクトリ] -t [ドキュメント出力場所]

環境によって異なるので各自パスは変えてください(※自分の場合はglobalにいれてます)

win環境でgitbash使ってます
php /c/Users/User/vendor/bin/phpDocumentor.phar -d /c/workdir/projectdir/laravel/ -t /c/workdir/projectdir/docments/

MySQL Workbench(DB操作&ER図作成ツール)

ER図の出力も対応してそうですが、自分は使用したことがないです。(DB設計段階でER図を書いてから実装に入るのが多い為)

追記:以下の画面(HOME)からModelsへ切り替え、赤丸部分の(>)を右クリックからER図を作成できました。

(使用しているのはMySQL Workbench 8.0

他のソフトも探してみましたが現状一番ER図が書きやすいのかなと。重いですが

Markdownエディタ

言わずもがな隙間時間で仕様やメモをさらっと書けるので