2022年829

【コンサルタント散歩】

フロントエンドのシステム開発について


システム開発のプロジェクトにおいて、フロントエンドのシステム開発を行ったことがありますか。今回はフロントエンドのシステムに入力したデータをバックエンドのシステムにデータ連携する際の大切なポイントについて記載します。


まずは、アクターがフロントエンドのシステムをどのように利用するのかをはっきりさせることが大切です。これはどのシステム開発においてもポイントになりますが、フロントエンドで入力したデータを他システムに必ずデータ連携する場合は、さらに重要になります。

フロントエンドのシステムをアクターがどのように利用するかを決めることによって、他システムへ連携するデータのデータパターンや連携粒度、データ項目について仕様を決めることができます。このアクターがどのようにシステムを利用するかが要件定義で曖昧な場合に、フロントエンドのシステムとして不必要な自由度のあるシステムになりがちです。

例えば、

○ アクターとなるユーザが業務を進めるうえで重要な情報(A,B,C)がある。フロントエンドのシステムに情報(A,B,C)を入力しなくてもバックエンドのシステムにデータの連携が行える。


○ ユーザが業務aという作業を行っている最中は、フロントエンドのシステム項目Aという情報が分からない。業務bという作業を行うとシステム項目Aの情報が分かる。これを前提に、本来はシステム項目Aが入力された状態でデータ連携を行いたいが、システム項目Aが入力されていない状態でもフロントエンドのシステムからバックエンドのシステムに連携できる。


○ フロントエンドのシステムに入力項目として分類を入力する項目がある。分類がどの程度あるのか把握できていないなどの理由から、フロントエンドの入力項目としては、ある特定の項目からプルダウンで選択する形式と自由に入力できるようにするなどがある。

フロントエンドのシステムに不必要な自由度を持たせると、当システムからデータ連携する先のシステムにまで影響が出てしまうので、連携するデータパターンや粒度、データ項目についても考慮する必要があります。その結果、連携先のシステムでは連携されてくるデータを考慮してシステムの開発を行わないといけないため、連携先のシステムの開発期間や難易度が上がります。また、データ連携のテストなど、後工程のテストになればなるほど想定していないデータパターンや粒度などにより、連携先のシステムとの間に障害が発生するため、不必要な自由度を持たせるシステム開発はお勧めしません。もし自由度を持たせたシステム開発を行いたいなら、リスクがあることを踏まえたうえで開発を進めなければなりません。

要件定義でアクターとなるユーザにヒアリングを行い、要件をしっかりと決めてフロントエンドのシステムに不必要な自由度を持たせないようにしましょう。ヒアリングした際に次期システムがないのでイメージがつかないなどの回答を貰うことがありますが、その際には画面イメージを作成し、ユーザにもイメージが分かりやすい形で認識の齟齬がないようにします。

2022年8月

【佐藤善哉のコラム】

▶ コンサルタント散歩