SFAをはじめとするCRMツールの多くは、ノーコードやローコード開発を前提としており、プログラミングによるハードコーディングを行わなくても、ある程度の業務要件に対応できるよう設計されています。
しかし、こうしたSaaSを実際に業務で使い込んでいくと、「ここだけはプログラムで作り込みたい」といった要望が出てくることも珍しくありません。
ハードコーディングは柔軟な対応ができる一方で、開発工数や保守、品質管理の負荷が大きくなります。そのため、可能であれば避けたい選択肢であることも多いです。
今回は、ハードコーディングが必要そうに見える要件が出てきたときに、業務の観点から考えておきたいポイントについて解説します。
業務の必要性の再評価
まず最初に考えるべきなのは、「その業務自体が本当に必要なのか」という点です。
要件定義の場では、ユーザーからさまざまな要望が出てきますが、それらを無条件ですべてシステムに反映してしまうと、本来あるべき業務プロセスからかえって遠ざかってしまうことがあります。
ユーザーの要望は、あくまでその人の立場や業務の一部を切り取った視点から出てくるものです。業務全体や組織全体の最適化という観点で見たときに、本当にその機能が必要なのかを一度立ち止まって考える必要があります。
SaaS業務標準からの乖離の考慮
仮に業務として必要だと判断できたとしても、そのやり方がSaaSの想定する標準的な使い方から外れていないかを確認することが重要です。
SaaSはゼロから自由に設計されたツールではありません。開発者側が想定した業務フローやベストプラクティスがあり、それを効率的に実現するために機能が設計されています。
ローコードやノーコードで実現できないということは、そのSaaSが前提としている使い方から外れた運用をしようとしている可能性が高いということです。
その場合、自分たちが作ろうとしている機能が、そのツールの本来の強みや効果を損なっていないか、冷静に見直す必要があります。
運用でカバーする場合の労力との比較
どうしても必要な業務であり、なおかつ標準機能では対応できないと判断できたとしても、次に考えるべきなのは「運用で代替できないか」という点です。
例えば、年に数回しか発生しないような情報更新のためにハードコーディングを行う必要があるのであれば、手作業や簡易的な運用ルールで対応できないかを検討すべきです。
システム化しなくても、人の手による運用で十分にカバーできる業務は意外と多いものです。開発コストや保守負荷を考えると、シンプルな運用のほうが結果的に合理的な場合も少なくありません。
まずは業務を疑うことから
ハードコーディングが必要そうな要件が出てくると、つい「技術的に実現できるか」という方向から検討を始めてしまいがちです。
しかし、技術的にできるかどうかの前に、「その業務は本当にやるべきなのか」「そのやり方でなければならないのか」を業務の視点で見直すことが重要です。
まずは業務を疑い、その上で本当に必要だと判断できたものだけをシステムで作り込む。この姿勢が、SaaSを長く健全に使い続けるためのポイントになります。

ソフトバンクに新卒入社後、法人向けセールスとしてキャリアをスタート。その後は法人マーケティングチームの立ち上げに携わり、ユーザーとしてSalesforceの活用を経験。以降、アビームおよびPwCにてSalesforceを中心としたCRM領域のDXプロジェクトに参画。構想策定から要件定義、開発、実装まで、幅広いフェーズでシステム導入プロジェクトに従事
