IT会社でプログラマーやSEとして働いていると、基本設計書や詳細設計書は必ず出てくるものです。
そもそも設計書はどういったものなのでしょう。
またこの二つの設計書の違いはどういうものなのでしょうか。
見ていきましょう。
基本設計書とは
簡単に言うと、ユーザから依頼されたシステムやアプリケーションを、どうやったら実現できるかざっくりとまとめたものになります。
まずシステム開発する時にユーザからどのようなシステムが欲しいのかヒアリングします。
そのヒアリング結果をまとめたものが「要件定義書」になります。
しかし、要件定義書では「どのようなシステムを開発するのか」しか記載されていません。
その為、要件定義書を見ただけでは、プログラマーはプログラミングを行いシステム開発をすることはできません。
その為、要件定義書を元に「どのように実現できるか」を明記したものが基本設計書になります。
[IT]システム開発時の要件定義書とは?わかりやすく解説します
詳細設計書
詳細設計書とは、基本設計書をより細かくしたものになります。
基本設計書ではシステムの全体像をまとめたもので、細かい細部のことまで記載されていません。
わかりやすいように電卓を例にしましょう。
基本設計書では電卓について
「足し算」「引き算」「掛け算」「割り算」の4つの機能について説明されています。
要は電卓で使える機能の全体像が載っているイメージですね。
一方、詳細設計書では電卓の一機能「足し算」を実現するには「どのようにプログラミングしていけばよいか」が記載してあります。
その為、1機能毎に詳細設計書がわかれていることも多いのです。
基本設計書と詳細設計書に、違いがない場合もある
プロジェクトによっては、「基本設計書」「詳細設計書」に違いがない場合があります。
といいますか、どちらが一方しかない状態ですね。
そのようなプロジェクトではどちらかの設計書を見てプログラミングを行います。
私も経験があるのですが、「基本設計書」と書かれているにも関わらず「詳細設計書」のような内容、はたまた逆の場合もありました。
しかし中には基本設計書だけでプログラミングをしなければならず、非常に苦労したこともあります。
これは「どのようにシステムを実現するか」が詳しく書かれていないことが原因です。
このような場合は、自分で考え、またユーザに質問しながら開発を進めて行くことになりますね。
基本設計書と詳細設計書は誰が作るのか
通常、基本設計書・詳細設計書はSE(システムエンジニア)が作成します。
そもそもSEの仕事内容はユーザからの要望をプログラマーにわかりやすいように説明することだからです。
そうなると基本設計書・詳細設計書を作成するのは当然だと言えます。
しかし、プログラマーが基本設計書・詳細設計書を作成する場合もあります。
これは、会社が「プログラマーでも出来る」と判断された時や、SEの手が回らない時です。
このようにプログラマーでも基本設計書・詳細設計書を作成することがある為、IT会社によってはプログラマーとSEの違いが明確になっていないこともありえます。
まとめ
いかがだったでしょうか。
今回の記事をまとめると、下記のようになります。
詳細設計書:基本設計書を機能毎に細かく記載したもの
プログラマー・SEを目指しているのであれば、覚えておきましょう。