ホーム > V-BLOG > V-JOURNAL

要件定義ってなに?システム開発の進め方

2021/02/17

システム開発における「要件定義」とは、ユーザの希望や要求を明確にし、どのような機能をシステムに盛り込むのかを定義する作業です。システム開発では、設計の前工程としてこの要件定義があり、要求定義の成否いかんでシステム開発の成否が決まるといっても過言ではありません。なぜなら、要件定義をきちんと行っていないと、手戻りが多く発生したり、ユーザの要求を満たすシステムが実現できなかったりする可能性があるからです。


***

・要件定義とはユーザと開発者の合意文書

ユーザがシステムに希望する仕様は、ざっくりとしたものから詳細に考えられたものまでさまざま。たとえば、「このデータを入力するとこのように表示してほしい」「この場合はこういう処理をしてほしい」「入力項目は○つ、出力項目は△つ」など、端的にいえばインプットとアウトプットをメインに要求してきます。もちろん「こんなことができないか?」といった漠然とした要求の場合もあります。

しかし、どのような場合でも、「そのシステムの目的は何か」「どのようなことをするためのシステムなのか」がはっきりしないと、最終的にどの機能まで搭載するのか、それを実現するためにはどのような機能設計が必要なのかということが決められません

そのために、まずは「そのシステムの目的は何か?」「そのシステムで何がしたいのか、何ができればよいのか」を、ユーザ側と開発者側が意見を交し、明確にしていくことが重要です。何のためにシステムを開発するのか?(=システムの目的)が明確になっていない場合、開発していく途中でもブレが生じてしまい、「やりたいことができない」システムができあがってしまう可能性もあります。

このような、システムの目的をはじめとするユーザ側の要求は「要求定義」と呼ばれることもあります。

要件定義


ユーザ側の要求が明確になれば、次はそれを実現するためにどのような機能を盛り込めばいいのか、満たすべき性能はどの程度なのかを、開発者側が技術的な要件に落とし込んでいきます。

このようにして要件定義を行い、要件定義書にまとめます。システム開発はここから本格的に動き出すのです。

要件定義をなおざりにすると、後になって「こんな機能も入れてほしい」と追加要求をどんどん入れられたり、「こんなことはいっていない」と、言った・言わないのトラブルが発生したりする可能性もあります。

 

・要件定義は「ユーザの要求をすべて盛り込む必要があるか?」を意識すべき

要件定義を行う際、あるいはユーザの要求をヒアリングしている際に、「あれもこれも」と出てくるユーザからの要求をすべて盛り込むことは、かならずしも最善策とはいえません。要求された機能をすべて盛り込んだ結果、コストがかさむ・納期が厳しくなる・かえって使いにくいシステムになるといったことも考えられます。

ユーザがしたいことは何か、システムの真の目的は何かを明確にすれば、本当に必要な機能とそうでない機能の切り分けが見えてくるもの。それらを掘り下げ、分析し、ユーザにフィードバックするという作業を通して、要件定義書にまとめましょう。

 

・システム開発の進め方

最後に、システム開発の進め方を簡単にご紹介します。

システム開発は、次のような工程に分けられます。基本的には、1つの工程が完了すれば次の工程に進むという流れで進みます。

1.要件定義

2.設計(外部設計・内部設計)

3.プログラミング

4.システムテスト・運用テスト

5.納品

これを見ても、要件定義がきちんと完了しないと次に進めないということがわかりますね。

 

【まとめ】要件定義書はシステム開発の指南書

システム開発はいくつかの工程を経て進められていくため、さまざまなタイミングでトラブルが発生しがちです。そんなときに、システムの要件がきちんと定義されていれば、ブレることなく正しい方向にトラブルを解決することができます。

また、工程ごとに開発メンバーが変わったり、メンバーの変更があったりした場合でも、システムの目的を含む要件定義が明確であれば、目指す方向を即座に理解できるはずです。

このようなことからも、システム開発において要件定義はとても重要なものであり、要件定義書はシステム開発の指南書だということがいえるでしょう。

 
book

今すぐ
会社紹介・事例資料
を見る

サービスに関する

お問い合わせ