この記事の要点
- 要件定義は、使う側の目線で「何ができればよいか」を決め、文書にする作業です
- 業務の流れ・機能・画面・データ・非機能の5つに分けて考えると、抜けが少なくなります
- 発注する側は、目的・いまの業務のやり方・判断する人を準備しておくと進めやすくなります
要件定義では、システムを作る前に「何のために作るのか」「何ができればよいのか」を決めます。決めることは、業務の流れ・機能・画面・データ・非機能の5つに分けると整理しやすくなります。
はじめてシステム開発を頼むと、「どこまで決めればよいのか」「何を準備すればよいのか」で迷うことが多いものです。専門用語をできるだけ使わずに、要件定義の中身と、発注する側の準備を説明します。
要件定義とは
要件定義とは、システムを使う人と作る人の間で、システムに求めることを決めて文書にする作業です。家づくりでいえば、何人で住むか、部屋はいくつ要るか、予算はいくらか、を設計の前に決める段階に当たります。
要件定義で決めたことは、その後の設計・開発・テストの基準になります。作る側は文書をもとに設計し、完成したときには、決めたとおりにできているかを確かめます。
なぜ大切なのか
要件定義があいまいなまま進むと、完成した後に「思っていたものと違う」という食い違いが起こりやすくなります。
作り始めてから中身を変えると、すでに作った部分を直す手間がかかります。後の段階で気づくほど、直す範囲は広がり、費用と時間も増えます。最初に時間をかけて決めておくことが、結果として近道になります。
中身を変える時期と、直す手間
最初に時間をかけて決めておくことが、結果として近道になります
決める5つのこと
要件定義で決めることは、次の5つに分けて考えると、抜けが少なくなります。
| 決めること | 中身の例 |
|---|---|
| 業務の流れ | だれが、いつ、何をするか。システムを使う前と後でどう変わるか |
| 機能 | 登録する、探す、計算する、知らせる、など、システムにしてほしいこと |
| 画面 | どんな画面があり、何を表示し、何を入力するか。帳票やメールも含む |
| データ | どんな情報をためるか。いまのExcelやシステムからどう移すか |
| 非機能 | 速さ、使える時間帯、安全性、使う人の数、使う端末 |
業務の流れ
はじめに、システムを使う業務の流れを書き出します。受注から出荷まで、申請から承認まで、のように、だれが何をして次の人に渡すかを順に並べます。システムを入れた後に、どの作業がなくなり、どの作業が変わるかも書いておきます。
機能
機能とは、システムにしてほしいことです。「注文を登録する」「過去の注文を探す」「在庫が減ったら知らせる」のように、動きの言葉で書くと分かりやすくなります。あったら便利なものと、なくては困るものを分けておくと、後で予算と相談しやすくなります。
画面
画面では、どんな画面があり、それぞれに何を表示し、何を入力するかを決めます。手書きの絵でも、いまの画面や書類に書き込んだものでも十分です。印刷する帳票や、自動で送るメールも、ここで決めておきます。
データ
データでは、システムにためる情報と、その出どころを決めます。顧客、商品、注文などの情報を、いまどこで管理しているか、新しいシステムにどう移すかを確かめます。古いデータの中に、書き方の揺れや重なりがないかも見ておきます。
非機能
非機能とは、機能そのものではなく、安心して使い続けるための条件のことです。画面が表示されるまでの速さ、使える時間帯、止まったときの対応、だれがどの情報を見てよいか、などが当たります。見落とされやすい部分なので、作る側に質問してもらいながら決めると安心です。
発注する側が準備すること
要件定義は作る側と一緒に進めますが、発注する側にしか分からないことがたくさんあります。次のものを準備しておくと、話が進めやすくなります。
- 目的:何に困っていて、何がよくなればよいか
- いまのやり方:使っている書類やExcel、手順書、例外の対応
- 現場の声:実際に使う担当者に、打ち合わせに加わってもらう
- 判断する人:意見が分かれたときに決める人
- 優先順位:なくては困るものと、あとからでもよいもの
外部の会社に頼む場合、これらをまとめた依頼の文書を作っておくと、見積もりや提案も比べやすくなります。書き方はRFP(提案依頼書)の書き方で説明しています。
進めるときのコツ
要件定義では、「どう作るか」より「何ができればよいか」を言葉にすることに力を使います。作り方は、作る側が専門の知識で考えてくれます。
文章だけでは伝わりにくい部分は、画面の試作(プロトタイプ)を見ながら確かめると、思い違いに早く気づけます。決めたことは文書に残し、関係者で読み合わせておきます。
AIを使うシステムでは、どのくらいの正しさなら業務で使えるか、AIが間違えたときにだれが直すか、も決めておきます。実際のデータで小さく試すPoCの結果を見てから、要件を見直すこともあります。
最初にすべてを決めきらず、作りながら決めていく進め方もあります。2つの進め方の違いはアジャイル開発とウォーターフォール開発の違いをご覧ください。
当社のご支援
当社の現場に入るFDEは、技術者がお客様の業務の場に入り、使う方と同じ目線で課題をつかみながら、要件定義から開発・運用までを担います。何をシステムやAIに任せるかの整理から始めたい場合は、AI・DXコンサルティングをご覧ください。ご相談はお問い合わせから承ります。
- 要件定義
- システム開発
- 発注
この記事に出てくる用語
このコラムは一般的な情報の提供を目的としたもので、個別の状況への助言ではありません。製品・サービスの名前と内容は、記事の更新日の時点のものです。