![](https://omouga-mama.com/wp-content/uploads/2021/04/cropped-arisu30.png)
システム方式設計書に書くことは3つ「概要」「方式設計」「実装方式」という話を以前しました。
では、そのとおりに設計をするとどのようなイメージになるのでしょうか。
実際に方式設計章のレイアウトを用意しました。
システム方式設計をするときのイメージにしてください。
![](https://www10.a8.net/0.gif?a8mat=3NAQUU+F8XOJ6+2PEO+P129T)
![](https://www14.a8.net/0.gif?a8mat=3NAQUU+F8C8XE+0K+15RCDD)
![](https://www12.a8.net/0.gif?a8mat=3NAQUU+F2DWVM+2D32+2HCY6P)
システム方式設計の構成概要
システム方式設計書には何を書けばいいのか。
必要な要素は3つです。
1.クライアントとの仕様のすり合わせ
2.仕様の説明
3.実現方法の具体化
です。
これをシステム方式設計書の目次にすると
1.概要(要件の説明)
2.方式詳細(仕様の説明)
3.実装方法(実現方法の具体的説明)
になります。
詳細は過去に解説していますのでご覧ください。
ではそのようになるのでしょうか、イメージをご覧ください。
システム方式設計のイメージ
システム方式設計書を執筆すると次のようなイメージになります。
(※あくまでイメージです。システム構成に実装方式は不要だと考えています。)
表紙
![](https://omouga-mama.com/wp-content/uploads/2021/05/940295fc327500d3c6b725358a1c9206.png)
特にノウハウはありません。
ドキュメントには表紙がつきものですね。
目次
![](https://omouga-mama.com/wp-content/uploads/2021/05/d055dae07add1bd0e7deca60d098b501.png)
これもノウハウはありません。
目次については概要を以前紹介しています。
ご覧ください。
大きな章立てについてはここで紹介しています。
細かな章立てについては各章の内容を紹介する中で行います。
内容
![](https://omouga-mama.com/wp-content/uploads/2021/05/88b244eb07dd58e60fe796a03fcf5887.png)
システム方式設計書の本体の部分です。
まずは、イメージをご覧ください。
基本的な章立ては
x.1 概要
x.2 方式設計
x.3 実装方式
になります。
設計する方式によっては「x.3 実装方式」が不要な場合もありますが、基本構成はこの3章立てです。
※今回のサンプルイメージでは一番初めに書く「システム構成」をレイシにしています。
x.1 概要
概要というタイトルの章には何を書いたらいいのか一番悩ましいところです。
この方式で設計することを列挙して書けばいいのです。
この方式で設計することは要件になっているはずです。
・〇〇という要件を実現するために△△方式を採用する。
というような書き方の列挙でいいでしょう。
クライアントから出てきていない要件も多いと思いますが、そのほかの要件を実現するために必要な方式を想像して記載しましょう。
クライアントから出てきていない要件を書くのは重要な目的があります。
それは、この概要を中心に”顧客への要件確認”に利用します。
概要の章を使って、「こういう要件がありますので、こういう子方式を採用しますよ」
という確認を行ってください。
クライアントから出てきていない要件を書く目的は、クライアントが気づいていない要件を確認するためです。
人には思い込みが必ずあります。
「これが常識だ」と思っていることが人によって違います。
この違いをなるべく埋めておくために概要の章を活用します。
x.2 方式設計
方式設計の章はボリュームが一番大きくなりますが、簡単です。
記載する内容は、「概要」で記載した要件の実現方法を一つずつ説明していくことです。
図を多用してわかりやすく仕組みを説明することが重要です。
x.3 実装方式
実装方式の記載を推奨している解説は少ないかと思います。
しかし、システム方式設計書を有効に活用するためには欠かせない章です。
システム方式設計を行う目的はいろいろありますが、開発者側が享受する目的は「生産性向上」「品質向上」です。
これを実現するためには「実装方式」は欠かせません。
では、実装方式にはどのようなことを書くのでしょう。
・この方式を使って開発する方法
です。
例えば、利用する部品・APIの仕様を記載します。
もしくは、コーディングサンプルでもいいでしょう。
開発する人が考えたり、調査する時間を削減し生産性向上を実現します。
コーディングするために必要な情報のまとめ集にしておくつもりでいいでしょう。
コーディングサンプルなども記載することで、開発者間でのコーディング差が少なくなり品質向上につながります。
コメント