VINXニューリテール・コラム

【重要で難しい!?】システム開発の要件定義を成功させる方法とは

【重要で難しい!?】システム開発の要件定義を成功させる方法とは

はじめに

近年は、流通小売業の業務システムにおいても、パッケージ製品を導入することが多くなりました。 ただし、パッケージをそのまま導入するのではなく、自社の業務に合わせて機能をカスタマイズするケースがほとんどです。

今回のコラムでは、機能のカスタマイズに必要な要件定義について、その重要性や成功させるためのポイントについてご紹介します。


システム開発における要件定義とは

要件定義とは、システムに求められる機能や操作性を定める工程です。開発プロジェクトの初期に実施され、ここで定義した条件を実現するためにプロジェクトは進んでいきます。


今回のコラムで考察するのは、流通小売業の業務システム開発において重要になる「業務要件」と「機能要件」の定義についてです。


要件定義はなぜ重要なのか

要件定義は、自社の業務の“理想的な姿”を思い描いてシステムについて考える工程のため、ある意味“夢のある作業”とも言えます。

しかし、要件定義を正しく行えないと、導入後に「業務の流れに合わず使いにくい…」「想定していたような効率化を実現できない…」といった問題が生じてしまうもの。要件定義に失敗すれば必ずシステム開発は失敗に終わると断言できるほど、重要性の高い工程なのです。


要件定義が難しい理由とは

重要性の高い要件定義ですが、正しく行うのが非常に難しい工程でもあります。そこにシステム開発の大きな落とし穴があるのです。なぜ要件定義は難しいのか。その理由は主に3つあると私は考えます。

① すべてを理解している人がいない

システム開発の要件定義を行うには、業務に関する知識とITの知識の両方が必要です。お客様は業務知識は持っているものの、ITの専門家ではありません。一方でシステム開発を請け負うITベンダーは、ITの知識は持っているものの流通小売業のプロではありません。

また、お客様のなかにも、すべての業務に精通している方はいないものです。システム開発の主担当となる情報システム部門が持つ知識・情報にも限りがあります。そのため、開発に関わるメンバーの間にも意識のズレが生じてしまいます。


② お客様は完成後のシステムをイメージしづらい

要件定義を行う際には、業務フローをドキュメントベースでまとめ、完成後のシステムの画面イメージを作成するなどして、お客様とITベンダーで意識のすり合わせをしながら進めていきます。
しかし、実際の開発プロジェクトにおいては、イメージにズレが生じていることに気づかずに進めてしまうケースも多く、完成後に「思っていたのと違う…」とお客様が感じてしまうのです。

③ 要件をまとめるのが難しい

開発プロジェクトを次の工程に進めるには、「求めている機能を実現できるか」「期待している導入効果を出せるか」「開発するシステムを利用することで業務全体を矛盾なく実施できるか」といった内容をまとめる必要があります。
しかし、要件定義を行うプロジェクトメンバーの意見が役職や部署によって異なることがあります。全体最適を考え、適切に取りまとめていくのは簡単ではないのです。

どうすれば要件定義を成功させられるのか

それでは、要件定義を正しくスムーズにまとめていくには、どのように進めればよいのか。私が重要なポイントとして考えるのは以下の3つです。


① プロジェクトのメンバー全員が業務を理解する

ITベンダーのメンバーを含めて全員がシステム化の対象となる業務をしっかり理解すれば、適切に要件定義を進めやすくなります。

流通小売業のシステムを構築した経験が豊富なITベンダーであれば、業務知識を基礎から説明する必要がなく、スムーズに要件定義を進めていけるでしょう。ただし、流通小売業の開発経験が豊富なITベンダーであっても、そしてお客様のプロジェクトメンバーでも、すべての業務を詳しく理解している人はいません。そのため、システム化の対象となる業務内容をきちんと“見える化”して共有することが大切です。

② できあがりのイメージを一致させる

「きっと相手側にこちらのイメージが伝わっているはず」ではなく、「相手側とイメージがズレているところがあるはず」と考えて、要件定義の内容をブラッシュアップしていくことが重要です。


プロジェクトに関わるメンバー全員がイメージしやすいように、できるだけITの専門的な用語は使わないようにしましょう。「売価を確認したい場合には…」といったように、業務部門の方がわかりやすい表現で共有すると誰もがイメージしやすいはずです。

③ 要件を決定できるルールと体制を整える

要件定義を行う際には、役職や部署にかかわらずメンバー全員が自由に意見を出し合うことが不可欠です。それぞれの意見を尊重し、全体最適を考えたうえで最終的な要件定義をまとめるようにしましょう。

また、意見がわかれたときにも要件を定められるように、最初にシステム導入の目的や方針について丁寧に議論しておく必要があります。最終決定を行うのはあくまでもお客様ですが、ITベンダーは判断のための情報を提示するなどのサポートを行わなくてはなりません。

要件定義の適正化に向けた手法例

私がプロジェクトメンバーの一員となった場合には、例えば以下のような手法を取って要件定義を行うようにしています。

・業務の現場を自分で見る

実際にシステムを利用する現場を見せていただきます。そうすることで、より深く業務を理解し、お客様のご担当者でも認識していなかった業務の特徴などを把握するようにしています。
同じ業務でも、企業によって実施内容や方針は異なります。例えば発注業務の場合、「できるだけ自動化・効率化し、その分の時間を販売業務にあてたい」と考える企業もあれば、「AIなどによる自動化で効率化・精度向上は目指すものの、最終的な発注数は担当者の意思で決めるべき」という企業もあります。そうした各企業の文化や業務実態に最適化し、システムの画面構成などをご提案するようにしています。

・業務フローをもとに完成イメージを伝える

画面イメージを見せて「このボタンを押すと…」という機能ベースの説明では、業務を実際に行っている方には導入後の業務のしやすさなどを理解しづらいものです。
そのため、「この業務を行うときには、このボタンを押してから…」というように、業務の流れに合わせて完成後のイメージを伝えるようにしています。そうすることで実際に業務を行ううえで不便な点があれば指摘していただき、イメージのすり合わせを行っているのです。

おわりに

今回のコラムが、みなさんのより良いシステム導入につながれば幸いです。
流通小売業のシステム開発を手掛けてきたヴィンクスでは、これまでに培った深い業務知識を強みにお客様のシステム導入をご支援しています。なにかお困りの際には、お気軽にご相談ください。





\このコラムに関連する記事/



関連コラム「【対策も解説!】プロジェクトにおけるコミュニケーションの重要性 」を読む



関連コラム「【DXプロジェクトにも不可欠!】チームビルディングの考え方とは 」を読む


 

この記事へのお問合せ

鈴木 啓之 Hiroyuki Suzuki

MDソリューション事業本部
MDシステム1部
第1課
課長

詳しくはこちら