MENU

03-6222-9506

受付時間 平日 : 9:00〜18:00(日本語対応)

Contactお問い合わせ
   

ホーム

     

ブログ

システム開発の要件定義って?重要性やポイントについて解説!

   

システム開発の要件定義って?重要性やポイントについて解説!

サムネイル画像

システム開発における要件定義について

 

発注者の要求をまとめる作業を「要求定義」といい、それをシステム要件にまとめる作業を「要件定義」と一般的にいいます。しかし、両者を一括りにして要件定義とされることも少なくありません。

システム開発の要件定義は設計や実装作業の前工程として行われる作業です。要件定義では、システムの目的やシステムの必要性、発注者がシステムを利用して行いたいことに基づいて分析や検討を行います。そして、その実現に向けて、実装が必要な機能や性能などを明確にします。

発注者はイメージ通りのシステムを納品してもらうために、求める要求をより具体的に示さなければなりません。また、開発サイドは発注者の要望を正しく理解し、性能や機能などの技術的な要件にまとめる必要があります。発注者と開発者の間では密にコミュニケーションを取ることが求められます。

システム開発についての開発手順や成功事例、注意点などについてはこちらの記事で詳しく解説しています。

システム開発って?開発手順や成功事例・注意点を解説

システム開発の工程における位置づけ

システム開発は次の流れで行います。

  1. 企画:発注者側は制作を依頼するシステムの内容を企画する
  2. 要件定義:発注者の希望、及び要求を実現できるシステム要件に落とし込む
  3. 設計:要件定義を基盤にして、システムの見える部分を具体化し、設計する
  4. 開発:開発を行ったシステムが正しく作動するかテストを行う
  5. システムの稼働:検収後、リリースする

システム開発の要件定義では「Why」と「What」を明確にします。「Why」と「What」の明確化はプロジェクトが成功できるか否かを握る鍵となるものです。

次は、ウォーターフォール型開発モデルの開発工程例です。

  1. 企画
  2.  業務設計
  3. 要求定義
  4. 要件定義
  5.  仕様確定
  6. 基本・詳細設計
  7. プログラミング
  8. テスト
  9. 納品・リリース
  10. 運用・保守

上記のように、開発工程では企画から運用・保守までの流れを細かく書き出すことがポイントです。

要求定義との違いについて

「要件定義」とよく似た言葉として、「要求定義」という言葉があります。しかし、これら二つの言葉は意味が違いますので注意が必要です。

要件定義は開発者が行うもので、発注者のニーズに応えるため必要な機能などを明確にすることです。

一方、要求定義は発注者が行い、システム開発で実現したいことや必要なシステムを明確にすることをいいます。ただし、開発会社によってはヒアリング形式で、顧客のニーズや実現したいことを聞き出すこともあります。自社で要求定義に対応できない場合は、開発会社に相談してみてもよいでしょう。

要件定義書について

要件定義書には次の3つの役割が主にあります。

  1. 発注者と開発会社が合意した要件の確認
  2. 開発チームの指標
  3. 基本設計や詳細設計のベース

要件定義書は発注者と開発会社の認識の相違を防ぐためにも重要です。また、開発者は要件定義書に基づいて開発を行い、テストを行います。

要件定義書はシステム開発における土台になる部分といえるでしょう。

 

要件定義の重要性

 

要件定義をきちんと行わないと、以下のような問題が生じると考えられます。

  • 開発したシステムが役に立たない
  • 開発に予想以上に時間を要する
  • 必要以上に高機能となり、予算オーバーとなる

発注後、上記のようなトラブルが生じることを防ぐためにも要件定義は重要です。要件定義はシステム開発の成功を決めるうえで、鍵となる段階といえるでしょう。

また、発注者は開発会社と話し合いを行うことで、自分では思いつかなかった必要な機能が明らかになることもあります。

要件定義の流れについて

ヒアリング

開発するシステムを使う発注者へのヒアリングは要件定義を行ううえで基本です。発注者から搭載を希望している機能や必要な内容などを聞き出し、まとめていきます。

ヒアリングに不足があった場合、開発途中にシステムの中身が曖昧になったり、納品後に希望していたシステムと違うといったクレームにつながったりするため注意が必要です。

また、ヒアリングの段階で、セキュリティ面の機能についてもしっかりと打ち合わせしておきましょう。

要求内容の整理

発注者の希望をヒアリングしたら、発注者の希望を吟味し、実現性の検討を行います。発注者の希望は理論的事情や予算の都合などで、すべて実現対象になるとは限りません。

発注者の希望が複数ある場合は実現性の高さや導入のしやすさなどを考慮し、優先順位をつけてみてください。

要件定義書作成

発注者が求める内容をヒアリングし、要求内容の整理を行ったら、ここまでで決まった内容を要件定義書に落とし込んでいきます。

落とし込む際の内容として次の8つのものがあります。

  • システムの概要
  • 導入目的
  • システム導入後の業務フロー
  • 発注者の要求
  • システム要件
  • 機能要件
  • 非機能要件
  • 必須条件

これらの内容を基本とし、システムの詳細設計などの作業を行いましょう。

 

要件定義で決める内容

1.システム要件

システム要件とは現状の業務の流れと新規における業務の流れとのギャップを踏まえ、それらをどういった方法でシステムに落とし込んでいくのか決める作業です。システム要件では、洗い出した新規業務フローからシステム化するものと、しないものを分けます。

発注者が希望する業務要件をすべて実現しようとしても、実現できないものが含まれていたり、予算オーバーになったりするケースも珍しくありません。そのため、開発者側でシステム化するものとしないものを分類する作業は不可欠です。

システム要件では、システム開発の目的やゴールを念頭に置き、優先順位をつけて行うことがポイントです。

2.機能要件

機能要件ではシステム要件で決定した方向性に基づいて、発注者が望む機能をどういったかたちで実装していくかを決めていきます。

機能要件は要件定義書に記されている内容を定義します。例えば、システムの構造や機能、処理可能な内容、帳票要件、データの種類、バッチ要件などです。

3.非機能要件

非機能要件とはシステム要件や機能要件など機能面以外で検討を行う、要件全般です。非機能要件には機能要件のみならず、システムのパフォーマンスや拡張性なども含まれます。

非機能要件は機能を除くすべてが含まれているため、対象範囲の幅広さも特徴です。そのため、非機能要件の項目の設定について悩まれる方もいるのではないでしょうか。そこで以下では情報処理推進機構(IPA)が策定した「非機能要求グレード」の6項目を紹介します。

非機能要求項目 概要 要求例
可用性(アベイラビリティ) システムを継続的に利用するための要件 運用スケジュール
障害時の稼働目標
災害時の稼働目標
ダウンタイムなど
性能・拡張性 システムの性能、及び将来的拡張に関連する要件 業務特性を見通した性能目標業務量の増加、及び変化への対応力
運用・保守性 システムの運用、及び保守サービスに関係する要件 運用中の稼働レベル、及び問題発生時の対応監視手段、及びバックアップ方法など
移行性 既存システムのデータ資産などの移行に関係する要件 新システムへの移行スケジュール、及び方法データ資産の種類、及び移行量など
セキュリティ システムの安全性に関連する要件 ログイン、及びアクセス制限などのシステム利用制限不正アクセス防止方法など
システム環境・エコロジー システムの設置環境、及びエコロジーに関連する要件 耐震、温度、重量、騒音CO2排出量・消費エネルギーなど

参考:https://www.ipa.go.jp/files/000005076.pdf

4.技術要件

IPAの非機能要求グレードの他、近年では技術要件の設定を行うケースも多い傾向にあります。技術要件の内容としてはシステムの基盤となるプラットフォームや、特定のフレームワークなどを採用する技術、採用するデータベース、システムを構築するために活用される開発言語です。

最近では、パブリッククラウドの活用が行われることも増えています。これらの要素は可用性や拡張性などの要件において触れられるケースも多いです。しかし、技術要件としてまとめておくことで確認しやすくなるでしょう。

5.その他要件

開発を行うシステムについて、法律を確認するようにしましょう。法律に関連する要件を規制要件として一括にまとめる方法もあります。

例えば、知的財産権への抵触や、個人情報保護法、輸出禁止技術の活用などに注意してください。

 

要件定義で用いられるツール

機能情報関連図(DFD:Data Flow Diagram)

機能情報関連図は業務の流れや業務同士の関連性を可視化したもので、DFD(Data Flow Diagram)ともいわれています。

業務の仕組み改善や課題解決などに活用される白地図・基盤図として活用されます。システム開発では、プロジェクトにおいて課題となっている業務機能の特定、プロジェクトの対象範囲の把握を目的にDFDが活用されることがほとんどです。

ER図(Entity Relationship Diagram)

ER図はEntity Relationship Diagramの略語で、システムで扱うデータを図で明確化したものです。システムが処理を行うデータ同士の関連性について図式化した、データベース設計図として利用されています。

例えば、顧客と商品の間には売買の関係が成立しますが、この関係性を図式化するER図を用いることで、大規模システムもデータ間の処理構造をシンプルに表現可能です。

業務フロー図

DFDで明らかになった課題を業務手順まで落とし込み、図式化したものを業務フロー図といいます。

業務フロー図は業務を処理する組織や手順、手段を見える化したものともいえるでしょう。人間の手で行う作業とコンピューターが行う作業を区別することもできます。

要件定義では「As-Is」という既存業務フロー図を作成し、「To-Be」という新規業務フロー図が作成されます。

 

ハイブリッドテクノロジーズの提供サービス

ハイブリッドテクノロジーズは、高い品質管理のもと、アプリケーション開発、システム開発の設計、デザインなどの上流工程から開発、運用、保守に至る全ての工程をトータルでご提供することで、クライアント企業のデジタルトランスフォーメーション(DX)推進をサポートいたします。

お客様の要望に合わせて、アジャイル開発やウォーターフォール開発等の開発手法やラボ(ストック)型サービスや受託(フロー)型サービスを柔軟に組み合わせて対応させていただきます。

【アジャイル開発ご希望のお客様】
・アジャイル開発についてはこちら

【ウォーターフォール開発ご希望のお客様】
・ウォーターフォール開発についてはこちら

【ラボ(ストック)型開発サービスご希望のお客様】
・ラボ(ストック)型開発サービスについてはこちら

【受託(フロー)型開発サービスご希望のお客様】
・受託(フロー)型開発サービスについてはこちら

ハイブリッドテクノロジーズが選ばれる理由

01 ビジネス設計〜実装・保守までワンストップで提供できるサービス体制
既存サービスの変革や新規サービスを成功を導くための顧客体験発想による設計からプロジェクトをスタートし、MVP開発を通して顧客のビジネスグロースを一緒に共創していくサービスを提供します。

02 UCS(ユーザー中心設計)によるUI/UXデザイン
実際にそのサービスを使うユーザーを調査、分析しながら、人間中心設計を元にデザインを行なっていきます。

03 スピード感をもった開発体制の構築
要件定義で定めた機能の中から優先度の高い重要なものから、アジャイル・スクラム開発を用いて開発することでサービスインまでの期間を短縮。素早いリリースを実現し、機能の追加などのブラッシュアップを行います。
ベトナムにおける日系No1*1という知名度の高さと20,000人以上*2の候補者リスト*2を元に必要な人員リソースの確保が可能なため、スピード感をもった開発の実行が可能です。

04 累計290社の顧客のプロダクト開発実績
当社が創業以来、豊富なシステム開発・アプリ制作の実績があり、それらを通じて蓄積した知見やノウハウを持ち合わせています。企画段階から要件定義・デザイン・開発まで担当し、プロジェクトを成功に導きます。

05 低コストかつ自由度の高い開発
フルスクラッチ開発とパッケージ開発のいいところどりを実現。 フルスクラッチ開発だとコストが上がる傾向にありますが、当社はベトナムのリソースを活用することでコストを抑えられます。
また、パッケージ開発だと自由度が失われる傾向がありますが、当社はスクラッチ開発で顧客予算に合わせて、スコープを見定めながら、進めることができるので、低コストで自由度の高い開発が実現できます。

06 国際標準規格に則った品質管理体制
情報セキュリティマネジメントシステムの国際規格「ISO9001」、「ISMS(ISO/IEC270001)」、ソフトウェア・テストの国際規「ISTQB Platinum Partner」の認証を取得しており、国際標準規格に則った品質管理体制を提供しています。

  1. 株式会社マイナビが運営するベトナムITエンジニア専門の求人サイトITviecは、給与・教育・マネージメント・企業文化・オフィス環境の観点から、Best Companyを選定。Hbrid technologies Vietnam Co., Ltdは、2019年と2020年に、日系企業で最高位に選出されました。
  2. 過去の当社へ応募頂いた開発候補者のリストです。応募のタイミングでリクルートシステムに登録し、常にそのリストから候補者へのリサーチできる体制を持っています。

その他システム開発事例

ハイブリッドテクノロジーズでは、その他にもモバイルアプリや業務用アプリケーションまで、多種多様な290社以上の制作実績がございます。
システム開発をご検討の方はぜひ一度お問い合わせください。

 

まとめ

 

システム開発の外注が成功するかどうかは、経験やスキルが豊富な開発会社を選択できるかといった点に大きく左右されます。また、希望するシステムの機能を説明し、認識をすり合わせる工程も欠かせません。
開発側のスキルはもちろんですが、依頼者側がシステム開発について基本的な知識を身につけておくことも大切なポイントです。本記事でご紹介したシステム開発の流れや、携わる役割などを把握し、円滑な打ち合わせを目指しましょう。開発会社選びで失敗してしまう可能性も減らせるかもしれません。
システム開発の外注先でお困りの方は、ハイブリッドテクノロジーズへの相談もぜひご検討ください。

 

  • この記事を書いた人
  • この記事の監修者
執筆者画像

窪田 陽介

はじめまして!ハイブリッドテクノロジーズの窪田です。 当社は、次世代テクノロジー開発で世界をリードするベトナム人エンジニア700名(日系企業最大規模)を有し、ビジネスデザインを日本国内で、開発をベトナムで行う「ハイブリッド型開発」により、EC、モバイルアプリケーション、HRシステム、ポータルサイトなど長期運用が必要とされるサービス提供を行う企業のシステム設計、開発、運用業務に加え、デジタルトランスフォーメーション(DX)推進によるお客様の事業成功をコミットしています。

監修者画像

窪田 陽介

はじめまして!ハイブリッドテクノロジーズの窪田です。 当社は、次世代テクノロジー開発で世界をリードするベトナム人エンジニア700名(日系企業最大規模)を有し、ビジネスデザインを日本国内で、開発をベトナムで行う「ハイブリッド型開発」により、EC、モバイルアプリケーション、HRシステム、ポータルサイトなど長期運用が必要とされるサービス提供を行う企業のシステム設計、開発、運用業務に加え、デジタルトランスフォーメーション(DX)推進によるお客様の事業成功をコミットしています。

Download

ダウンロード

ダウンロードバナー画像

この資料をダウンロード

ご相談、資料請求はお気軽にお問合せください。

   Contactお問い合わせ