skillup

技術ブログ

ドキュメント作成 プロジェクト管理

使える設計書作成に関して

投稿日:2020年10月3日 更新日:

私自身、この仕事を7〜8年やっておりますが、設計書作成については常に悩まされておりました。

設計書のメリット・デメリットとしては以下のようなものですかね。

メリット

  • メンバー間での仕様の認識を統一できる
  • 出戻りを防ぐことができる
  • 開発進捗の遅れの影響を防ぐことができる
  • 責任の所在を明らかにできる(請負契約の場合)
  • 外部に委託することができる

デメリット

  • 形式的に作られているものも多い
  • 現実の開発との差分が出てしまう(更新する文化が廃れてしまう)
  • 作っても費用対効果が良くない(作る時間に回した方がいい)

対策

設計書はコードから起こす

現実のシステムとの差分が起こらないように、ER図であればschemaから起こすとか、API仕様書であればLaravelの(Laravel API Documentation Generator)みたいなツールですかね。

要は作るのに手間がかからない、自動化されているのであれば文化として廃れることがないので、これが一番いい気がします。

設計をした方が工数がへる、楽

設計をした方が工数がへる、ラクということになればみんなその通りにやるので、この仕組みを取り入れるのがらくな気がします。

分業する場合はどうやっても作るしかないので、必要性が出てきます。

設計→コードの仕組み化

コードから起こすといっても限界があると思うので、ある程度の仕組み化が必要になってくると思います。

一般の仕事の仕組み化と同じですが、できるだけ個人の意識に頼ることは防ぎたいので、レビューのプロセスを経ないと次のプロセスに移行できない。みたいな仕組みとして存在するパターンですかね。

個人的に必要だと思っている設計書について

ダミーデータ付き+テスト仕様書

えーこれはまだ見たことがないので、理想論です。

一般のテスト仕様書って形式的なものが多いと思うのですが、ダミーデータがあれば状態の復元がすぐにできますし、開発をする上でものすごく楽になります。

イメージとしてはPHPUnitの中に組み込む感じで、そこから仕様書を復元できるようにすることですかね。

夢物語と思っていましたが、migrationを組み込んでおけば前提となるマスタデータなどを入れておき、そこからデータを入れることは難しくないのでは・・?と思いました。

API仕様書

昨年度のプロジェクトで作ってました。フロントのエンジニアと一緒に仕事をするときに開発が出来上がってないときに、

  • まずAPIのINとOUTの形だけ決める
  • テストデータでリクエストとレスポンスの形を決めておく

これだけで仕様書の出来上がりです。

グルーピングされたER図

グルーピングということが重要なのですが、ER図があればデータの移り変わりなどがイメージできるのでやはりあると仕様の理解が格段に進みますね。

ER図自体の作成はwinだったらA5SQL、Macならwwwsqldesignerが簡単で便利です。

-ドキュメント作成, プロジェクト管理
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

ディレクション時に重要な視点

ディレクション(ベンダーや内製時)時に留意するポイント Contents1 開発ルールの構築2 アサインと人材スクリーニング3 言葉の共通化(特にアウトプット)4 問題化のキャッチアップ5 リソースの …

no image

読書感想文:採用学

採用について面白い知見を提示してくれる本があったのでまとめてみようと思います。(アフィリエイトではありません汗) 採用学(服部 泰宏) 一般的な採用の本って人事担当者が書かれているものがほとんどだと思 …

no image

プロジェクト管理で大事なこと

直近のプロジェクトでチームリーダーみたいなことをやりはじめており、いろいろと考えることがありましたので、まとめておこうと思います。 以前似たようなこと書いてたな・・と思ったんですがやはり書いてありまし …

no image

ドキュメント作成について

アプリやプロジェクトのドキュメント作りですが、時間が立ったり、複数人での開発を行うと 情報の漏れや抜けが非常に多くなる 本番との差分ができる 一部の人しか更新しなくなる 似たようなドキュメントがあちこ …

no image

小〜中規模程度のWEBアプリ作成で気をつけるべきこと

初見の処理系(ライブラリ操作)などは休日などで最小パターンを確認しておくこと。実務で何時間も悩むと非常にストレスがたまる テーブル設計命。あとで終えるようにトレースができるような値を入れておくこと。 …

アーカイブ