最終更新日:2025年02月21日
330,000件の中から 希望に合う案件を探せる
システム開発で重要な工程である設計には、「基本設計」「詳細設定」の2種類があります。将来的に上流工程の業務に携わりたい方は、まず2つの違いを把握するのが大切です。
そこで本記事では、基本設計と詳細設計の概要や違いを解説します。それぞれの作業の流れや設計時の注意点にも触れるので、ぜひ参考にしてください。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取るここでは、システム設計における2つの工程、基本設計と詳細設計の概要と違いを解説します。それぞれの定義を押さえましょう。
基本設計とは、ソフトウェアの動きを外側から見たときにどのような動きをするのか決める工程です。要件定義にもとづいてシステムを設計していきます。
ユーザーから見てどのような動作になるのかを決め、システムの基本的構造・機能・セキュリティなどの大まかな設計をドキュメントに記述します。外部設計とも呼ばれ、クライアントにも共有できる資料として設計書を作成するのが重要です。
詳細設計とは、基本設計で決められた動きをどのように実現するかを決める工程です。システムの各機能やモジュールについて詳しく設計をします。
プログラミング担当者向けにシステム実装の指針を示すのが目的で、プログラムの構造・データフロー・画面のレイアウト・エラー処理などを含むのが特徴です。クライアントから見えない部分なので内部設計とも呼ばれ、ドキュメント自体も内部向けに作成します。
基本設計と詳細設定の違いは、対象とする設計のレベルと詳細さの度合いです。
基本設計はシステム全体のアーキテクチャや機能の大まかな設計図で、詳細設計はそれぞれのシステムの機能やモジュールに関する詳細な設計図です。基本設計はプロジェクトの方向性・目的を示し、詳細設計は実装するための指針を開発者に提供します。
「どのように動くのか」が基本設計で「どうやって動くのか」が詳細設計だといえるでしょう。
システムエンジニアについては、「システムエンジニアの仕事はきつい?文系や未経験でも目指せるかも解説」の記事でも詳しく解説しています。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取るここでは、システム設計の流れを次の4つの作業に分けて解説します。
要件定義とは、ユーザー要求の業務要件を明確にし、どの範囲をどのようにシステムで実現するかを定義する作業です。その要件定義を受け、要望を実現するためにハードウェア・ソフトウェア・ネットワークを定義する作業を方式設計といいます。
方式設計ののちに工程は基本設計、詳細設計という順で進みます。次の工程に移ったあとに前工程の問題が見つかると、余分な工数が発生します。それぞれの工程が正確に完了したか確認しつつ進めるのが重要です。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取る基本設計は、要件定義や方式設定にもとづいて実施されます。ここからは、基本設計の流れを見ていきましょう。
最初に、要件定義書の内容を確認します。チームで設計する場合は、メンバー間の認識のすり合わせが必要です。
次に、確認した要件をもとにしてシステムの骨組みを決める設計を進めます。具体的には「実装する機能を洗い出す」「必要なデータを明確にして整理する」「画面のイメージ・レイアウトを決定する」といった作業です。
要件定義書を確認してシステムの骨組みを決定したら、クライアントに内容を伝えるための基本設計書を作成します。作成するのは、機能一覧・業務フロー図・画面設計図・データベース設計図などです。
基本設計書には、システムの仕様に問題がないか、クライアントの要求が盛り込まれているかを確認してもらう役割があります。クライアントが理解しやすいよう、できるだけ専門用語を使わずに作成しましょう。
基本設計書を作成したのち、開発メンバー内とクライアント側から評価者を選び、それぞれのレビューを受けます。設計者だけでは気づかない欠陥や認識の相違点を見つけて評価・修正するのが目的です。
レビューしてクライアントの合意を得ることで、基本設計後の工程で混乱が起きるのを防ぎます。質の高いシステムの開発につながるのもポイントです。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取る基本設計は質の高いシステムを実現し、クライアントとの認識のズレを正すのに必要な工程です。作業内容や決定すべき事柄が多く、方向性を誤ればシステムの品質を落としかねません。ここでは、基本設計の注意点を見ていきましょう。
基本設計ではクライアントの視点に合わせるだけでなく、詳細設計や開発以降の工程も見据えてバランスを取りつつ要望が叶うシステムを作るのが重要です。1つの視点に凝り固まらず、全体像を見わたすよう心がけましょう。
要件定義書をもとに、基本設計書を作成します。
基本設計書の中身が要件定義とずれているとクライアントの要望を満たせず、後の工程すべてに影響が出ます。新たな工程に入る前に、要件定義との整合性をしっかりと確認してください。
要件定義書の内容を実現する最適な方法を選択しましょう。インフラの構成やアプリケーションの機能、処理性能だけに着目せず、運用にかかる人的・時間的なコストも考慮しないといけません。
検討が困難なときは、関係分野の専門家へのレビュー依頼をおすすめします。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取る詳細設計のベースとなる流れは基本設計と同じです。ただし、こちらはクライアントではなく、プログラミング担当者向けに作成するものだと意識しましょう。以下で詳細設計の流れを解説します。
最初に基本設計で決定した内容を確認します。チームメンバー間で認識のズレがないように、すり合わせましょう。基本設計に沿って正しく詳細設計をすれば、システム開発の一貫性を保てます。
確認した内容をもとに詳細設計を進めます。基本設計に記載されている機能をプログラムで実行できるよう設計するのがポイントです。機能やビジネスロジックの整理、実装する機能の割り当て、プラットホームに合わせた設計に取り組みましょう。
基本設計の内容にもとづいて詳細をまとめた後は、詳細設計書の作成に入ります。具体的にシステムの構造・仕様・動作などを示すドキュメントを作成します。クラス図・アクティビティ図・シーケンス図・画面設計図・モジュール構成図などです。
詳細設計書は、社内の開発者が実際にプログラミングするエンジニアに対して指示するためのものであり、専門用語を使って作成します。のちに行われるプログラミングやテストなどの工程で使用するので、正確さと分かりやすさを意識して作りましょう。
詳細設計書を作成したら、開発メンバー内の評価者によるレビューを受けます。詳細設計のドキュメントは、システムの品質に直結します。不適切な部分があると、その後の工程でバグが発生する恐れがあるため、誤りがないようしっかりと確認しましょう。
仕様と基本設定との間に矛盾がないか、説明が分かりやすく正確であるかなどはもちろん、渡される値の範囲や等号や不等号の判別しやすさなどの細部までチェックします。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取る詳細設計書では曖昧な表現を避けてください。プログラミングの基準となるドキュメントであり、具体的で明確な記述が必要だからです。作業中に「ここはどうしたら良いか」と疑問を持たれないようにしましょう。
読む人に誤解を与えないよう、説明はシンプルにします。箇条書きや表の使用もおすすめです。プログラミングに携わるエンジニアが見るのを意識し、誰が見ても理解できる設計書を目指します。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取るシステム開発を成功させるには、プログラミングする前の設計工程が重要です。設計が正しければ、その後の工程で失敗するリスクが低減します。ここではシステム設計の注意点を見ていきましょう。
メンバーが複数いる開発現場では、メンバーの違いから発生する差異を小さくするために設計標準や開発標準を作ります。そして、それらを徹底させるルール作りが必要です。
対策としては、標準フォーマットや設計ツールの活用がおすすめです。また、設計書への入力を制限すれば不要な情報が入らなくなり、読みやすくなります。
ただし、ルール遵守に時間を割くより、ルールに沿って道を作る方が管理する側や作業する側双方にとってプラスに働きます。
要件定義をもとにして出来上がった設計が、ユーザーの求めている内容を満たしているのかを確認しましょう。
設計を進める過程で、設計担当者がシステム化に都合良く考えてユーザーの求めから逸脱していくケースがあります。要件定義からの逸脱が発覚した場合、すみやかに修正します。また、設計の変化を確認するために、設計書の履歴が残せる仕組みを作りましょう。
システムを開発する側と発注するクライアントの間の認識のズレを確認するのが大切です。
誤りや漏れがある状態で次の工程に進むと、大きなトラブルや手戻りが起きてプロジェクト失敗につながる恐れがあります。設計の工程が進んで終盤になるほど仕様変更の影響は甚大で、影響調査や反映が難しくなります。
発注者と開発側の認識のズレをチェックするため、設計の工程でミーティングをしましょう。
設計工程に限らず、システム開発では次の工程に進む前にレビューをしましょう。基本設計や詳細設計の過程で適宜レビューし、問題点を改善します。洗い出された問題点がすべて解消されるまで、レビューを繰り返してください。
設計工程が進むほど、修正する際の工数が増大します。適切なレビューで修正の手間を減らしてください。
システムエンジニアとプログラマーの違いについては、「システムエンジニアとプログラマーの違いは?仕事内容や必要なスキルを解説」の記事もチェックしてみてください。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取るシステム開発で重要な基本設計・詳細設計には、明確な違いがあります。要件定義を正しく反映させて基本設計を作成し、その基本設計をもとに詳細設計を作ります。
プログラミングする前のこの工程は、上質なシステムを開発するための重要なカギです。紹介した注意点を踏まえ、基本設計と詳細設計を成功させましょう。
希望にあう案件がすぐに見つかる
おすすめの案件を受け取る 次の案件探しの
情報収集ができる!
掲載数は330,000件!
あなたの適性単価がわかる!
エンジニア単価診断
あなたにピッタリの
フリーランス案件が見つかる
133万件以上のフリーランス案件から一括検索
338,783件※の案件を保有しており、エンジニアやクリエイター向けを中心にたくさんの案件を一括検索可能です。
※ 4月25日(Fri)更新2あなたの経験やスキルに適した案件をメールでお知らせ
マイページに入力して頂いた経験や希望条件に合わせて、ご希望にマッチした案件をメールでお送りするので効率的な案件探しが可能です。