Hachinet Logo
×

基本設計とは?必要性と作り方などをご紹介

基本設計とは情報システムを作る工程の一つで、情報システム全体を機能単位に分割して、それぞれの機能がどういうものか、どういうことができるものか、機能同士がどうつながるのか決めていく作業です。 この記事では、基本的な設計、プロセス、およびその作成方法について簡単に学習します。

 2021年05月20日

基本設計とは情報システムを作る工程の一つで、情報システム全体を機能単位に分割して、それぞれの機能がどういうものか、どういうことができるものか、機能同士がどうつながるのか決めていく作業です。 この記事では、基本的な設計、プロセス、およびその作成方法について簡単に学習します。

基本設計とは情報システムを作る工程の一つで、情報システム全体を機能単位に分割して、それぞれの機能がどういうものか、どういうことができるものか、機能同士がどうつながるのか決めていく作業です。基本設計を行うタイミングは、要件定義の後、詳細設計の前になります。

今回記事では、基本設計とはどういうものかを、プロセス、およびその作成方法について簡単に学習します。

 

1. 基本設計とは



基本設計とは、製品の基本的な設計。また、製品開発において基本的な設計を策定する工程。構成や仕様、機能などの概要をまとめたものを意味する場合と、中枢や基盤の設計を意味する場合があります。

システム開発の基本設計、情報システムやソフトウェアの受託開発の場合は、要件定義と詳細設計の中間で、対象物の機能や構成などの大枠や基本的な仕様を決める工程を意味します。

顧客が必要としている事項をまとめた要件定義書などを元に、どのようなシステムを開発すればこれを満たすことが出来るかを検討し、機器やソフトウェアの構成、実装すべき機能、画面や帳票など操作や入出力に関する事項、生成・保管されるデータの概要など、システムの基礎的な仕様をまとめます。

成果物として基本設計書などの文書や図版などが一式作成されることが多く、これを元に各部の詳細や実装方式などを策定する詳細設計などを行います。

 

2. 基本設計の必要性


基本設計にはアイデアと現実の間の架け橋です。 ブループリントは、オペレーターがジョブまたは構造の構造を実行するために必要な手順を知るのに役立ちます。 タスクを実行する前に、基本的な設計を行う必要があります。それは、ほぼプロジェクトの設計、つまりアクションです。

システムを家と比較すると、基本設計は基礎を構築する段階であり、レイアウトを作成します。基礎は確実であり、新しい家は将来しっかりと持続可能な方法で構築できます。

初期の基本設計は、方向性を形成し、詳細な設計手順と実際のアプリケーションのためにタスクと物事を一般化するのに役立ちます。

 

3. 基本設計に必要な視点とは?


要件定義を経て、基本設計フェーズに入っていきます。ここではどういった視点を持つべきなのでしょうか。

3.1. 要件定義との整合性

基本設計で決めた事柄は、その後の全フェーズに絡んできます。

完成品が要件定義の内容とかけ離れていては本末転倒となってしまうでしょう。

詳細設計に入る前の基本設計で、「要件定義の項目を満たしているか」を注意深くチェックする必要があります。

3.2. 実現可能なシステムとなっているか?

要件定義でヒアリングした内容を設計書に落とし込んでいくのが基本設計フェーズです。

クライアントにとっての「理想」を明確にできても、実際のシステム開発でそれを「現実」にできなくては意味がありません。

クライアントの希望はできる限り盛り込むべきですが、システムとして実現できるかどうかの線引きはしっかりと行うべきでしょう。

仕様書を作成する段階から、この点について意識しておくことが大切です。

3.3. クライアントにとって分かりやすくなっているか?

基本設計はシステム開発の根幹を固めていく作業であるため、クライアント側も気になるところです。

開発工程がかなり進んだ後で「自分たちの希望とかけ離れている」と指摘した場合、修正にはかなりの手間が掛かってしまいます。

開発側だけでなく、顧客側にも大きな損害が出てしまうことでしょう。

基本設計フェーズの段階でも、クライアントと綿密な意思疎通を図っていくことが大切です。

無料見積もりはこちらから▶

4. 基本設計の主な項目


基本設計は、実際にシステムの仕様を決定する段階です。要件定義で決定したシステムの機能要件や非機能要件、制約条件、外部とのやり取りなどをより具体的な仕様にすることで、実際にプログラム可能な形にします。基本設計は五つの主な項目に分かれています。

4.1. 要件定義

要件定義のフェーズでは、発注元であるクライアントの希望をまとめていきます。

どういう機能を持った新システムを求めているのか」をヒアリングするため、コミュニケーション能力が大事になってくるのが特徴です。

4.2. 基本設計

要件定義で決まった内容を振り返りつつ、開発するシステムの全体像・概要についてまとめていくフェーズです。

顧客の目で見える部分の工程を設定していくことから、「外部設計」とも呼ばれます。

プログラムをどのように配置するかを検討する段階」と捉えても良いでしょう。

4.3. 詳細設計

基本設計では、システムをモジュール単位で分割し、各モジュールや使用するデータベースの設計を行います。具体的には、データの入出力、データベース同士のデータの受け渡し、ユーザーによる操作、帳票の出力などです。

また、画面のレイアウト、操作方法、帳票類の書式など、システムの使いやすさやユーザー満足度につながるインターフェース部分の仕様を決めるのも機能設計の役割です。

4.4. プログラム実装・単体テスト

基本設計詳細設計で生まれた設計書(ドキュメント)をもとに、エンジニアがプログラム作成を行なっていきます。

上の設計フェーズで生産された設計書通りに実装されていくため、設計書の質はとても重要です。

全ての完成を待ってからのテストだと細かい修正に対応できないため、実装と並行して「単体テスト」も適宜行われます。

4.5. 結合テスト

単体テストがクリアできたら、設計書通りにプログラムが組まれているかを検証します。

不備のあった箇所は適宜修正していくことになります。

結合テストの後に「受入テスト」を行い、問題点がなければクライアントに納品して完了です。

 

5. 基本設計の作り方


5.1. 業務フローの明確化

クライアント(ユーザー)が実際に行う業務内容を想定し、その流れを図で表現していきます。

縦軸に管轄部署・横軸に時間を設け、1つずつ流れに沿って記述していきます。

例えば商品発注システムのフローを説明する場合、「申込情報を取得」→「得た情報を入力」→「内容の確認」→「発注」といった具合です。

業務フローはシンプル・明確であることが望ましいとされています。複雑化しすぎるとクライアントが理解しにくいだけでなく、システムとしての実現も難易度は高くなってしまいます。

5.2. システム構成図を作る

システムの構造がパーツで構成され、それらが互いにどのように関連しているかを説明します。

まず、システムにおける、ハードウェア・ソフトウェア・ネットワークなどの構成図をそれぞれ作成する必要があります。

ソフトウェア構成では使用OSやミドルウェアの詳細等、ハードウェア構成ではルータやスイッチ等を明確に記述していきます。 

5.3. 機能一覧表の作成

機能一覧とは、システム化の対象を明確に表す資料です。プロジェクトの初期段階では機能の洗い出しが完璧にはできませんが、全体ボリュームを把握する必要があるので、作成する必要があります。

満たすべき機能要件を一覧化することで、開発担当のエンジニアが作業内容を把握しやすくなります。

見積範囲の明確化や、契約時には開発範囲の明確化にも利用できます。また、機能ごとの進捗管理を行う場合な活用されますどにも。

5.4. 非機能要件もまとめる

クライアントの業務内容に直接は影響しない非機能要件についても、基本設計書でまとめていきます。

そのシステムを継続的に使用することになる側にとっては、セキュリティ面・スピード面なども大切な要素です。

無料見積もりはこちらから▶

 

6. 基本設計書の必要なポイント


 

6.1. ドキュメントは作りすぎない

基本設計によって「基本設計書」が作られますが、ドキュメントを生産し過ぎてしまうことにも注意が必要です。全ての書類がしっかりとメンテナンスされているなら問題ありませんが、誤った情報が含まれていると開発フローに支障を来します。

そのため、求められるのはドキュメントの質であり、量ではありません。どの程度生産するかはクライアントとの折衝で判断していくべきでしょう。

6.2. 図表や数式表現をうまく使う

基本設計書は、顧客・エンジニア問わず多くの関係者が目にすることになるドキュメントです。文章ばかりだと理解に苦労するほか、仕様に誤解が生じてしまうことも考えられます。

開発を担うエンジニアにとっては、テキストよりも数式表現を使ったほうが作業する上でも負担が減るでしょう。

6.3. 設計する側にも技術力は求められる

基本設計書は、後工程のエンジニアが実装を行なう際に欠かせない書類です。なので、技術者がそれを利用するという前提で作成していくことになります。設計側にもある程度の技術力は必要です。上流工程を担うのは主にSEですが、SEも社内研修でIT技術の習得を行なう場合が殆どです。要件定義をメインに行うエンジニアはある意味「コンサル 」といえるものの、エンジニア要素もやはり関係してくることになります。

 

7. さいごに


基本設計は、情報システムのあるべき姿をベンダの言葉で作り上げてまとめる、とても大事な工程です。基本設計がお客様と合意されれば、お客様はそれが実現されるものと期待しながら、情報システムが出来上がるのを待ちます。基本設計は、お客様とベンダとの間での最後の約束ごとだと言ってもいいでしょう。

基本設計が上手くいくかは、基本設計を行う担当者の実力とスキルと意識の持ち方次第です。方法論はそれを補うものでしかありません。基本設計のレビューを行うチームやプロジェクトやベンダの総合力も問われます。また、基本設計ができる要員がいるかどうかが、情報システム構築の成否を分けるのです。

現在、私たちハチネット企業のエンジニアは、高い技術を持つだけでなく、お客様と日本語で直接にコミュニケーションをとることができます。そのため、書類面やお客様の希望で100%日本語をドキュメントの処理ができます。

私たちハチネットは、常に品質製品と顧客の満足度を重視している。ハチネットのサービスを選択すれば、製品が実装されてから納品されるまで安心できると信じます。



オフショア開発をご検討されている方々はぜひ一度ご相談ください。

※以下通り弊社の連絡先

アカウントマネージャー: クアン(日本語・英語対応可)

電話番号: (+84)2462 900 388

メール:  konnichiwa@hachinet.com

お電話でのご相談/お申し込み等、お気軽にご連絡くださいませ。

If you need advice regarding any of our services, please feel free to contact us.
  • Offshore Development
  • Engineer Staffing
  • Lab Development
  • Software Testing
*Our contact information is as follows:
Phone: (+84) 2462 900 388
Email: contact@hachinet.com
Please feel free to contact us for consultations or applications via phone.
Click here for a free quote.

Tags

If you have any questions or would like to collaborate with Hachinet, please leave your information here. We will get back to you shortly.

 Message is sending ...

Related Articles

 2026年05月11日

フロントエンド開発:現代UIの実装戦略を実務視点で徹底解説

現在のフロントエンド開発は、単に「画面を作る作業」ではありません。ReactやNext.jsの普及によって、UIはバックエンド・API・状態管理・アクセシビリティ・パフォーマンス最適化まで含めた“アプリケーション全体の設計領域”へ変化しています。特に大規模Webアプリでは、見た目だけ整ったUIよりも、「変更に強く、壊れにくく、チームで継続開発しやすい構造」を作れるかどうかが重要です。本記事では、現代フロントエンドに必要な実装戦略を、実務視点で体系的に整理します。

 2026年05月07日

開発フェーズ:効率的な実装プロセスを実務視点で徹底解説

Webアプリ開発では、技術力そのものよりも「どの順番で、どの粒度で、どのように実装を進めるか」が開発速度と品質を大きく左右します。実際の現場では、コードを書く時間よりも、仕様確認・設計の認識合わせ・レビュー対応・不具合修正に多くの時間が使われています。そのため、効率的な開発フェーズとは、単純に実装を高速化することではなく、「迷い・手戻り・認識ズレ」を減らしながら継続的に品質を積み上げる仕組みを作ることにあります。本記事では、Webアプリ開発における実装フェーズの考え方から、実務で使われる進め方、設計・レビュー・CI/CD・チーム開発までを体系的に整理します。

 2026年05月04日

要件定義:成功するWebアプリはここで決まる【実務フローと失敗しない設計】

Webアプリ開発において最も重要な工程は「要件定義」です。この段階でプロダクトの方向性、機能範囲、品質基準がほぼ決まります。実装フェーズでどれだけ優れた技術を使っても、要件が曖昧であれば価値のあるプロダクトにはなりません。特に近年は、AIによる自動生成開発が普及し、「何を作るか」を言語化する力そのものが成果に直結する時代になっています。本記事では、要件定義の基本から実務で使える具体的な進め方、さらにAI時代における要件設計の考え方までを体系的に解説します。

 2026年04月28日

Webアプリとは何か?仕組み・種類・アーキテクチャをコード付きで完全解説

なぜ今、多くのサービスがWebアプリとして提供されているのでしょうか。その理由は、「どのデバイスでも同じ体験を提供できる」という設計にあります。Webアプリはブラウザ上で動作し、インストール不要で利用できるだけでなく、開発者視点ではフロントエンド・バックエンド・API・データベースが連携するシステムとして構築されます。本記事では、初心者向けの基礎から、Node.jsとReactによる実装イメージまでを一貫した流れで解説します。

 2026年04月24日

iPhoneからAndroidへ乗り換える完全ガイド|データ移行・失敗回避・最適化まで網羅

iPhoneからAndroidへの乗り換えは、単なる機種変更ではなく、データ管理やアプリ環境を含めた「使い方そのもの」を切り替える作業です。最近では公式の移行ツールが整備され、基本的なデータは数十分で移せるようになりましたが、事前準備を怠るとメッセージの不具合やデータ欠損といった問題が発生する可能性があります。本記事では、初めての乗り換えでも迷わないように、準備から移行、設定、トラブル対処までを順序立てて解説します。

 2026年04月22日

AI時代のAndroid活用術|マルチステップ自動化で仕事と生活を最適化する方法

2026年現在、Androidは単なるスマートフォンではなく、AIエージェントが常時稼働する「処理基盤」へと進化しています。GeminiやChatGPTのようなマルチモーダルAIがOSレベルで統合されたことで、ユーザーはアプリを個別に操作する必要がなくなり、「意図」を伝えるだけで複数の処理が連続的に実行されるようになりました。この変化は単なる効率化ではなく、意思決定や情報整理といった知的作業そのものを再設計するものです。実際、AIを活用する人とそうでない人の間では、生産性で約10倍、収入面でも大きな差が生まれています。本記事では、この差を埋めるためのAndroid AI活用戦略を、具体的なツール構成と導入プロセスを含めて実践レベルで解説します。

 2026年04月21日

Android自動化で時間を増やす方法|知らないと損する効率化戦略

Androidの自動化を適切に活用すると、日常のルーチンタスクを大幅に削減できます。通知の確認や設定の切り替え、移動中の操作といった細かな作業は、1回あたりは短時間でも積み重なると無視できない負担になります。これらを自動化によって仕組み化すれば、手動操作の回数を減らし、思考や判断に使う時間を確保できます。本記事では、自動化の基本概念から具体的なツール、実践的な設定例、さらに段階的な導入戦略までを、現実的に再現できる形で整理します。

 2026年04月16日

MacroDroid入門 ― スマホ操作を自動化して“何もしない時間”を増やす方法

毎日スマートフォンで同じ操作を繰り返していませんか。Wi-Fi のオンオフ、サイレントモードの切り替え、特定の時間にアプリを開く――こうしたルーチン作業は一つひとつは小さくても、積み重なると大きな時間ロスになります。「できれば自動でやってほしい」と感じたことがある人も多いはずです。そんな願いを実現してくれるのが、Android の自動化アプリ MacroDroid です。本記事では、初心者でもすぐに使える MacroDroid の基本から、日常で役立つ自動化の具体例までを分かりやすく解説します。