Webアプリや予約サイトなどのシステム開発は、どのような流れで制作されているかを知る機会は少ないと言えます。
実際にはエンジニアを中心としたスキーム(枠組み)で開発されますが、大まかな流れを知ることで依頼する際にスムーズに進めることが可能です。
本記事ではシステム開発の流れを解説し、開発の基礎知識や仕組み・手順を詳しくご紹介します。
目次
システム開発の種類は?
システム開発には、企業の業務効率化をサポートするITシステムやECサイト・予約システムなどインターネットを通じた情報処理システムなどがあります。
おもなシステム開発の種類は以下の種類に分かれます。
- 経営の中枢「基幹システム」
会計や販売など、企業が経営する中枢を担う業務に使用されるシステムです。
例 : 人事・生産・販売・財務管理システム
- 業務サポート「ERPシステム」
顧客情報の管理や営業をサポートする目的で使用される「ERP」システムです。
例 : 顧客管理ツール(MA・SFA、CRM)システム
- インターネットを活用「Webシステム」
ネットショップや医療、飲食店の予約、人材のマッチングなどの業務をインターネットを活用し情報処理を行うシステムです。
例 : ECサイト、CMS、店舗予約、マッチングシステム
- 電子機器に活用「制御系システム」
自動車や家電製品、医療機器などの電子機器に組込み、機能・制御を目的とするシステムです。
例 : エアコン、カーナビ、OA機器、オーディオ機器など
このようにシステム開発では業務や種類ごとに異なる開発が行われています。
また、最近ではスマートフォンなどで使用するアプリ開発も活発に行われていますが、こちらはWeb開発の分野に含まれます。
実際の開発では、それぞれのシステムに合わせた設計が行われますが「開発の流れ」は共通する部分も多くあります。
まずは大まかなシステム開発の流れについて確認してみましょう。
システム開発の流れを解説
システム開発ではどのような種類のシステムを開発するかを決め、一定の流れを経て実用段階まで辿り着きます。
ここではシステム開発の流れについて解説します。
システム開発の流れ
システム開発では、企画〜検収までの工程に分けて作業が行われます。
各工程の概要・流れについてご紹介します。
- アイデアから企画する
システム開発の開発元の企業と依頼主のやり取りでアイデアを出し合い、どのようなシステムを開発するかを企画します。
- 必要な要素を要件定義
システム開発に必要な費用、機能的な要素、作業を担当する人員、スケジュールなどを決める作業でこれらの開発に必要な要素を「要件定義」と呼びます。
- 基本設計を決める
扱うシステムのデータを整理し、図案などにまとめた基本設計を決める作業です。
この時、画面のレイアウトなど具体的なイメージをもとに必要なデータも合わせて決めることになります。
- プログラミングでの開発
システムで動く機能を実際にプログラミング言語で制作するプログラミングでの開発作業です。
- 実際にテストする
開発したシステムを動かし動作に問題がないか、新たな機能が必要かなどを実際にテストします。
- 完成〜検収
テストが終わった段階で、依頼主が使ってみて問題がないか、操作やマニュアルに誤りがないかなどユーザー目線で確認します。
すべて問題がなければ検収し開発完了となります。
このようにシステム開発では、企画から開発、完成まで一定の流れがあることが分かります。
システム開発を依頼する際、まずは流れの概要を参考にそれぞれの役割りについて考えてみることから始めてみるとよいでしょう。
システム開発の流れを知るべき理由は?
システム開発の流れを知るべき理由はあるのでしょうか?
主な理由として「依頼主にどのような関わりがあるのか」を把握するためです。
流れが把握できない場合のデメリット
システム開発の流れを把握できない場合、開発会社に丸投げしてしまうケースがあります。
開発を丸投げしてしまうと希望する機能が実装されないケースや、スケジュール管理に無理が生じ開発費用が嵩む可能性があります。
また、開発会社とうまくコミュニケーションが取れない場合や機能の修正、納期遅れの原因となるためトラブルに発展しやすくなるでしょう。
流れが把握できた場合のメリット
一方システム開発の流れを把握しておくと、各工程で必要な作業内容が分かるため開発会社との連携も取りやすくなります。
開発会社とコミュニケーションを取ることで納期通りに工程が進めることや、費用も予算内に納めやすくなるでしょう。
また、開発前の準備を整えることで機能や利便性を希望の使用に近づけることが可能になります。
このようにシステム開発の流れを知ることで、開発効率を高めることやさまざまなメリットが生まれます。
システム開発の種類について
システム開発には、いくつかのシステムの種類があります。
システムの種類によって、開発の進め方や流れも異なりますのでご紹介します。
- 順番にこなす「ウォーターフォール型」
滝を意味するウォーターフォール型は、決められた手順・工程をひとつずつ順番にこなす方法です。
- 現場で調整「アジャイル型」
アジャイル型は最低限の基本機能を開発し、テスト発注者側でテストを繰り返しデータを集める方法です。
- 試作機をテストする「プロトタイプ型」
開発前の段階で試作機を作成し、依頼主がテストし改善策を確認後、開発を行う方法です。
- 機能別の「スパイラル型」
開発するシステムの工程を機能(サブシステム)別に整理し、重要なパートから開発する方法です。
このようにシステム開発では、さまざまな方法で開発が行われます。
今回開発の流れ・手順をご紹介しているのは順番に開発を進める「ウォーターフォール型」になります。
システム開発の流れを詳しく解説
システム開発を行う際、大きく分けて3つの手順があります。
ここでは開発の流れを詳しく解説していきます。
契約までの流れ
システム開発を依頼する場合、最初の流れとして必要なシステムについて考える必要があります。
例えば以下の内容があるでしょう。
[システム開発のポイント]
- 現在の業務で困っている箇所→課題
- 改善できる箇所→理想
- どのような機能で解決できるか→機能
このように現状の課題・問題点を確認し、どのようなシステムが必要なのかを決めていきます。
この時開発を担当するIT部門だけでなく、実際に業務に携わる担当者に要望を聞き取り実現可能かを検証してみるとよいでしょう。
- 見積り・提案書作成
必要なシステムのイメージが出た段階で、開発会社に見積り・提案書の作成を依頼します。
この時のポイントは以下の3つがあります。
- 分からない点は納得できるまで質問する
- 見積り金額だけで判断しない
- 3〜4社に相見積りを依頼する
専門知識が必要なシステム設計では、分からない点は必ず質問しましょう。
すべてお任せした場合、余分な機能が入り追加の費用が発生するケースもあります。
他にも見積り金額の安さだけで決めてしまうと、当初の目標をクリアできない可能性もあります。
また、設計の違いや見積り金額を比べる意味でも3〜4社に依頼することをお勧めします。
- 2段階見積りとは?
システム開発では開発に人員や納期が掛かるため、最近では「2段階見積り」を実施する企業が増えています。
2段階見積りとは、希望するシステムを聞き取り最初は大まかな見積りを作成します。
次にシステム設計が始まった段階で詳細な見積りを行う方法です。
この時、最初に出される見積りはある程度の目安として考えるようにしましょう。
- 契約・発注
開発企業から受取った見積りの比較・検討を終え後、依頼先を決め正式発注を依頼します。
この時開発企業と契約することになりますが、システム開発は契約内容が難しいケースが多いため注意が必要です。
例えば開発時間に対して費用が発生する「準委任契約」や受注案件に責任が発生する「請負契約」などがあります。
また開発するシステムの規模や予算によっても契約内容は異なるため、契約条件を確認の上契約することをおすすめします。
設計〜開発までの流れ
契約後、設計〜開発までの流れでは、主に開発企業が行う業務が中心となります。
各項目の手順についてご紹介します。
- 要件定義を作成
システム開発の最初の段階では、設計図を作成前に「要件定義」を作成します。
要件定義とは、希望するシステムを作成するために必要な要素を確認する作業で、例えば下記の内容があります。
- システムに必要な機能
- 技術的で用いる仕様
- 制作期間(スケジュール)
- 開発人員
このようにシステム開発に必要な要素を設定する作業ですが、プロジェクトの基幹となる重要な部分でもあります。
このためリスクを考慮しながら、納得がいくまで打合せすることが大切です。
また譲れない機能やポイントは、要件定義の際に必ず設定するようにしましょう。
- 設計書の作成
システム開発の設計書は、依頼主が見ても分かる「基本設計者」とプログラマーが使用する「詳細設計書」の2種類があります。
- 基本設計
要件定義をもとに、必要となる機能・データの仕様を明確化する作業です。
この時、システム画面のレイアウトや扱うデータの整理も設計書に明記します。
- 詳細設計
プログラマーが使用する詳細設計は「DD(Detail Design)」という名称で呼ばれる、おもに設計図を作る作業です。
詳細設計には、開発時に必要となるプログラムの詳細な仕様等が記載されています。
- 開発作業(プログラミング)
システムの詳細を定めた詳細設計をもとに、プログラミングを行う開発作業です。
プログラミングは、HTMLやCSS、JavaScriptなどの言語を用いシステムを動かす開発を行います。
- テスト
プログラミングの作業を終えたのち、開発企業内でシステムの動作テストを行います。
動作テストではバグチェックやプログラムの欠陥について確認し、不具合が見つかった場合都度修正作業を実施します。
動作に不具合や問題がなければ、最後に依頼主が受け入れテストを行い受注した機能や操作感を検証します。
- 検収
納品されたシステムが、受注した機能や動作・仕様を満たしているかを依頼主側が確認する検査を意味します。
システムに問題がなければ、「検収書」を発行し開発は終了となります。
導入〜運営の流れ
システムが完成した後は、導入し実際にシステムを運営する流れに入ります。
- 導入
システムを導入する際は、開発企業側で初期設定を行うケースが多く、操作説明やマニュアルを用意し説明会なども行われます。
また、旧システムを利用している場合はシステム移行の作業も行います。
- 運営(リリース)
システムは実際に使用された後も、定期的に保守・点検を行い運営する必要があります。
安定して継続させるためには、不具合や障害が発生した場合に都度修正作業を行うことが大切です。
このようにシステム開発の流れでは契約〜制作、検収〜運営までさまざまな工程を経て導入されています。
システム開発全体の流れを知っておくことで、必要な期間や準備を揃えることが可能になりますので是非参考に実践してみましょう。
※MVV(ミッション・ビジョン・バリュー)についてはコチラ
MVV(ミッション・ビジョン・バリュー)とは?必要性からつくり方のステップまで紹介
picks designにお任せください
WebアプリやECサイト・予約サイトなどシステム開発をご検討の際は、picks designにお任せください。
picks designでは、ご希望の機能やUI/UXに優れたシステム開発を全力でサポート致します。
具体的な戦略、ストーリーをもとに「デザイン×ビジネス」の視点から顧客体験を強化し、顧客支持を得られるシステム開発を進めていきますので、是非お気軽にご相談ください。
また、現在最新情報をメルマガにて配信していますので、この機会にご登録ください。
→メルマガ登録はコチラ
まとめ
今回は、システム開発の流れを解説し、開発の基礎知識や仕組み・手順を詳しくご紹介しました。
システム開発全体の流れを把握することで、それぞれの工程ごとに必要な作業をご覧頂きました。
開発中分からないことは開発企業に尋ね、ひとつずつ課題をクリアしていくことが大切です。
システム開発をご要望の際は、picks designに是非お任せください。