システム開発の要件定義って?重要性やポイントについて解説!
システム開発における要件定義について
発注者の要求をまとめる作業を「要求定義」といい、それをシステム要件にまとめる作業を「要件定義」と一般的にいいます。しかし、両者を一括りにして要件定義とされることも少なくありません。
システム開発の要件定義は設計や実装作業の前工程として行われる作業です。要件定義では、システムの目的やシステムの必要性、発注者がシステムを利用して行いたいことに基づいて分析や検討を行います。そして、その実現に向けて、実装が必要な機能や性能などを明確にします。
発注者はイメージ通りのシステムを納品してもらうために、求める要求をより具体的に示さなければなりません。また、開発サイドは発注者の要望を正しく理解し、性能や機能などの技術的な要件にまとめる必要があります。発注者と開発者の間では密にコミュニケーションを取ることが求められます。
システム開発についての開発手順や成功事例、注意点などについてはこちらの記事で詳しく解説しています。
システム開発の工程における位置づけ
システム開発は次の流れで行います。
- 企画:発注者側は制作を依頼するシステムの内容を企画する
- 要件定義:発注者の希望、及び要求を実現できるシステム要件に落とし込む
- 設計:要件定義を基盤にして、システムの見える部分を具体化し、設計する
- 開発:開発を行ったシステムが正しく作動するかテストを行う
- システムの稼働:検収後、リリースする
システム開発の要件定義では「Why」と「What」を明確にします。「Why」と「What」の明確化はプロジェクトが成功できるか否かを握る鍵となるものです。
次は、ウォーターフォール型開発モデルの開発工程例です。
- 企画
- 業務設計
- 要求定義
- 要件定義
- 仕様確定
- 基本・詳細設計
- プログラミング
- テスト
- 納品・リリース
- 運用・保守
上記のように、開発工程では企画から運用・保守までの流れを細かく書き出すことがポイントです。
要求定義との違いについて
「要件定義」とよく似た言葉として、「要求定義」という言葉があります。しかし、これら二つの言葉は意味が違いますので注意が必要です。
要件定義は開発者が行うもので、発注者のニーズに応えるため必要な機能などを明確にすることです。
一方、要求定義は発注者が行い、システム開発で実現したいことや必要なシステムを明確にすることをいいます。ただし、開発会社によってはヒアリング形式で、顧客のニーズや実現したいことを聞き出すこともあります。自社で要求定義に対応できない場合は、開発会社に相談してみてもよいでしょう。
要件定義書について
要件定義書には次の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」の認証を取得しており、国際標準規格に則った品質管理体制を提供しています。
- 株式会社マイナビが運営するベトナムITエンジニア専門の求人サイトITviecは、給与・教育・マネージメント・企業文化・オフィス環境の観点から、Best Companyを選定。Hbrid technologies Vietnam Co., Ltdは、2019年と2020年に、日系企業で最高位に選出されました。
- 過去の当社へ応募頂いた開発候補者のリストです。応募のタイミングでリクルートシステムに登録し、常にそのリストから候補者へのリサーチできる体制を持っています。
システム開発の成功事例
システム開発での成功事例をご紹介します。
外国人の方の利用に特化した就職・進学ポータルサイト(株式会社GIG)
サービス内容
外国人の方の利用に特化した就職・進学ポータルサイト
サービス上の課題/目指したいサービス
課題
今まで運用していたサイトが古く、メンテナンスが困難な状況だったことに加え、手作業で行っている部分が多くあるという背景からフルリニューアルで刷新することが課題であった。
目指したいサービス
今回開発する外国人向け就職・進学ポータルサイトにより、管理側および利用ユーザーにおいて以下の価値の提供を可能にすること。
・管理側は、アカウント情報の管理をシステム化し業務効率化を図ることができること。
・利用ユーザーは、多言語に対応した的確な情報をもとに就職・進学の手厚いサポートが受けられること。
クライアントの課題/要望
・開発部分のリソースが不足している
・予算やスケジュールに柔軟に対応していきたい
当社を選択していただいた理由
当社の幅広いリソースとスピード感を持った開発体制を評価いただいたこと
当社ご提案内容
外国人向け就職・進学ポータルサイトの開発
デザインや設計といった上流部分は、GIG社を中心に担当し、実装フェーズに移った際、円滑なスタートができるよう要件定義フェーズの一部において、日本人PMをアサインし、サポートしました。
実装フェーズではGIG社のライブラリを活用しつつ、ベトナムBrSEを中心にバックエンド、フロントエンドの開発を行いました。
まぐまぐ!リーダーアプリ (株式会社まぐまぐ)
https://www.mag2.com/app/reader/
サービス内容
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が運営するメディアを手軽かつシームレスに閲覧できるスマートフォンアプリ「まぐまぐリーダー」
サービス上の課題/目指したいサービス
課題
メルマガはメールのみ、メディアもそれぞれ独自のWebを持っているためユーザービリティが良くない点
目指したいサービス
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が提供する4つのニュースメディアを横断して手軽かつシームレスに閲覧できるサービス
クライアントの課題/要望
・新規アプリ開発リソースの不足
当社を選択していただいた理由
内製での開発リソースを保持されていないことと、当社の幅広いリソースとスピード感を持った開発体制が、まぐまぐ様の開発ニーズに合致したため、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発+保守にて提案
1.メルマガやニュースメディアといった多様なユースケースに、細やかに対応する開発体制
メールマガジン配信プラットフォーム事業の理解と学習から始まり、要件定義・設計・開発までをアジャイルスクラム開発で担当し、1週間ごとにクライアント様と成果物のレビュー会を行うことで、フィードバックを早いサイクルで受けることで、ユーザーの期待を超える価値体験を追求いたしました。 記事を読むという観点ではニュースサイトなどのメディアに分類されるサービスではありますが、既存の媒体がメールであるためにユースケースには多様性がありました。
2.毎日読む情報収集アプリとしてのファインダビリティとユーザービリティを考慮したUX・UI設計
メールアプリで閲覧するものだったメルマガをスマートフォンアプリで軽快に閲覧できる機能と、まぐまぐ社が提供する4つのニュースメディアを横断して閲覧できる機能を両立しつつ、スムーズに情報収集を行えるUX・UI設計を行いました。メインペルソナである多忙なサラリーマンの方の情報収集アプリとして、短時間での閲覧でも読みやすい視認性や可読性を重視した白基調の配色とタイポグラフィの設定を行い、ボタン類のアクション要素は見落とされない配色設計や、押しやすいサイズ設計、リアルタイムデータベースを使用した同期的な処理、まとめ読みや読み返しが快適にできるようにローカルデータベースを使用したオフラインファーストな設計をすることで既存サービスのユーザー体験をスマートフォンアプリでも損なわないように配慮しました。
Fimple Credit (H.I.F.株式会社)
https://www.hifcorp.co.jp/fimple-credit/
サービス内容
与信における企業信頼度を可視化するWEBサービス
サービス上の課題/目指したいサービス
課題
難解な債権回収リスクの与信判断を、AIを活用して効率化・高精度化できるかという点
目指したいサービス
H.I.F社が独自に収集したデータを元に各企業の与信における信頼度をスコア化し、Web上で手軽に検索・確認することを可能にするサービスを目指しました。
クライアントの課題/要望
・開発リソースの不足
当社を選択していただいた理由
別案件での提案の際のデザイン案が非常に良かったことがあり、短納期の中でも充分に任せられるスピードとクオリティと判断頂き、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発にて提案
密なコミニケーションで最適な上流設計を提案
デザイン作成と合わせて画面遷移図と、各画面の要件定義資料の作成を実施。開発フェーズを担当するベンダーへの詳細説明まで弊社が行うことでお客様のシステム開発全体が滞りなく進むよう配慮いたしました。 また短納期ということもあり、お客様からフィードバックをいただく機会を通常以上に密に設けました。早い段階での問題発見・方向修正を心がけ、最適なユーザー体験をクライアント企業様と一緒に、練り上げることができました。
Web 相談予約システムの新規構築(大手物流会社)
サービス内容
窓口相談を事前に予約できるWebアプリ
窓口での相談日時を利用者が事前に予約できるようにし、企業と顧客双方にとって利便性を向上するWebアプリの開発案件です。
サービス上の課題/目指したいサービス
課題
利用者からの問い合わせは、常に窓口で対応している背景があり、
窓口で順に受け付けていたが、待ち時間が長く、顧客から不満の声が上がっていた。
目指したいサービス
・顧客の利便性(満足度)を向上すること。
・システム導入の周知により金融相談業務の認知度を向上させること
・システム導入による効率的な要員配置を目的として、顧客がWeb 上で事前に金融商品に関する相談日時を予約できるシステムを新たに構築すること
クライアントの課題/要望
・社内で開発体制を保持していないこと
・Salesforceを業務の基幹システムとして利用されているため、Saleforceでの機能開発が必須
・金額をミニマムに抑えながら安定的な運用を実現したい
当社を選択していただいた理由
・日本国内での開発より大きな価格メリットがあったこと
当社ご提案内容
受託型開発(フロー)にて提案
1.Salesforceを活用し、ミニマムコストでスピード感を持った機能開発
Salesforceを活用することで0からインフラを構築せずに素早く開発環境を作成することが出来ます。Salesforceの標準機能を基に必要な機能をカスタマイズして開発することで、スピーディな開発〜実装を可能としました。
2.プログラム実装前にプロトタイプ作成し、スピードを保ちつつ認識ギャップを防止
プログラム実装前にプロトタイプを作成することで、リリースというゴールまでスピード感を保ち、的確にコミュニケーションをおこないながら、認識ずれが生じないよう努めました。
3.Salesforce準拠のセキュリティ基準を担保
開発と合わせ、Salesforce準拠のテストコードを作成し、テストを実施することで、リリース後の不具合が発生しにくく、運用保守コストも抑えることができます。またすでにクライアント様が使用されているSalesforceの機能拡張のため、セキュリティー面は今までと同様のものが担保されます。安心感を持ってシステムをご使用いただき、クライアント様、エンドユーザー様双方からご好評いただいています。
その他システム開発事例
ハイブリッドテクノロジーズでは、その他にもモバイルアプリや業務用アプリケーションまで、多種多様な290社以上の制作実績がございます。
システム開発をご検討の方はぜひ一度お問い合わせください。
まとめ
システム開発の外注が成功するかどうかは、経験やスキルが豊富な開発会社を選択できるかといった点に大きく左右されます。また、希望するシステムの機能を説明し、認識をすり合わせる工程も欠かせません。
開発側のスキルはもちろんですが、依頼者側がシステム開発について基本的な知識を身につけておくことも大切なポイントです。本記事でご紹介したシステム開発の流れや、携わる役割などを把握し、円滑な打ち合わせを目指しましょう。開発会社選びで失敗してしまう可能性も減らせるかもしれません。
システム開発の外注先でお困りの方は、ハイブリッドテクノロジーズへの相談もぜひご検討ください。