他システム連携でなぜ障害が起こるのか?
INDEX LINK
はじめに
ERPは「ヒト・モノ・カネ」の動きをリアルタイムに把握し、これら経営資源を一元的に管理する仕組みです。
ただし、近年はSAP ERP単体ですべての経営資源を把握するのではなく、外部システムとの連携によって実現する動きが主流になっています。
しかし、ITシステムは「機能の境界線」で不具合が起こりやすいというセオリーがあります。SAP ERPも例外ではなく、他システム連携は鬼門中の鬼門とされることが珍しくありません。
そこで今回は、他システム連携で不具合が発生する原因を具体的にまとめてみたいと思います。
1. そもそもなぜ他システム連携はなぜ必要なのか
まず、他システム連携が必要な理由を整理してみましょう。
1-1. 複数の組織からのデータインプットがある
例えば、支社や販社で計上した売り上げデータをグループ全体の連結決算に使う場合などでは、本社にデータを集める必要があります。
支社・販社すべてがSAPで動いていれば良いのですが、実際にはそうもいきません。単純に売上を算出するだけのシステムであれば外部システムのほうが安上がりだったりしますから。
こうした事情から、どうしても他システムとの連携が必要になるケースがあります。
1-2. 分析、計算系は外部化している
ERPのコアな機能のひとつにMRPがありますが、日本企業はMRP(もしくはそれに準じた機能)を独自に構築している場合があります。
また、近年はBI系のシステムが増えましたので、こうした分析・計算系のシステムは外部システムになりやすいですね。
当然ながらこれら外部システムのデータはERPでも必要とされますし、その逆もあり得ます。
1-3. CRMおよびSFAなどとの連動
10年ほど前まではエンタープライズITの王者といえばERPでした。
しかし近年は、CRMにその座を奪われつつあります。同時に、営業・マーケティングなど「攻め」の領域を自動化するSFAやMAといったソリューションも台頭してきました。
これらは基幹系のデータ(部品情報や製品仕様など)を参照することも多く、相互連携が必要です。
NetSuiteのように初めからCRMやSFAの機能を一部内包しているERPもありますからね。ERPも単体では動かせない時代です。
2. 他システムの連携で起こる障害の例
このようにSAP ERPは、必ずと言って良いほど他システムとの連携が必要になります。
そのためか、実際にプロジェクトに参加すると、連携テストで障害が発生する可能性はかなり高いですよね。
ではなぜ障害が発生してしまうのでしょうか。
まず、他システム連携で起こる障害の例を確認しておきましょう。
2-1. インタフェースの非互換性によるデータ変換エラー
SAP ERPと他システムが異なるデータ形式やプロトコルを使用している場合、データの変換が必要になります。
しかし、インタフェースやデータ構造の非互換性により、データ変換エラーが発生することがあります。
これにより、データの欠落や不正確なデータの連携が生じ、障害に発展してしまうわけです。
2-2. アクセス権限の不整合によるデータの制限
SAP ERPと他のシステムの間で権限に対する考え方が一致しておらず、データ共有時のアクセスがうまくいかないケースです。
あるユーザーで実行した処理が、アクセス権限の関係からうまくいかず(データにアクセスできない)、処理が中断してしまうなど想定外の事象に発展することも珍しくありません。
2-3. システムのアップグレードや更新による非互換性
SAP ERPや他のシステムのアップグレードや更新が行われると、既存の連携インタフェースやAPIが非互換となる可能性が出てきます。これにより、互換性が維持できずに障害に発展してしまうことがあります。
2-4. セキュリティ侵害によるデータ漏洩
システム間連携で近年よく話題に上がるのが、セキュリティの脆弱性や不正アクセスのリスクです。
いずれかのシステムにセキュリティインシデントが発生すると、連鎖的に機密情報や個人情報が漏洩する可能性があります。
「障害」と言えるかどうかは微妙なところなのですが、情報漏えいは企業にとって信頼性や信用性の低下、法的な問題の発生、顧客の信頼喪失などを引き起こすため、リスクが発生した時点で何らかの対策が必要になるでしょう。
2-5. システム間の処理時間の違いで起こる連携不具合
SAP ERPと他のシステムの処理時間に大きな差がある場合、遅延が生じ、データの同期や更新が遅れるといった事象が発生します。
S/4 HANAのようのインメモリDBを採用した高速なシステムと、レガシーシステムを連携させる場合などに起こりやすくなります。
3. なぜ他システム連携で障害が発生するのか
こうした障害が発生する原因を整理していくと、次のようにまとめられそうです。
3-1. インタフェース仕様の調整が不十分
SAPのモジュールごと、もしくは業務領域ごとに独立して開発が進んだ結果、周辺システムとのデータ連携に関して合意が形成されないままプロジェクトが進んでしまいます。
結果的に、プロジェクト終盤になって急造の「連携チーム」などが組成されるのですが、情報も人手も足りないため、十分な調整が行われません。
特にプロジェクトの規模が大きく工期も長い場合は、連携仕様の確認・周知が延び延びになり、結果として「考慮漏れ」になってしまうことがあります。
3-2. 開発要員の間で引継ぎが行われていない
SAP技術者のリソースは限られています。
そのため、SAP導入プロジェクトでは開発要員が短期間でアサインとリリースを繰り返すことも珍しくありません。
2年間のプロジェクトにおいて、開発要員の総入れ替えが3回以上もあり、当初の要件を把握している者がほとんどいない…といった状況もあり得ます。
こうした状況では、要員間でしっかりと引継ぎが行われておらず、連携仕様の変化に気が付かない可能性があるわけです。
これは言い換えると「変更管理の欠如」です。プロジェクトの進行中に行われる変更や修正の管理が不十分な場合、
システムの安定性や互換性に問題が生じるのはSAP ERP以外でも当然のことでしょう。
しかし、変更管理にはまた別のリソースが必要であり、そもそもリソースが不足気味のプロジェクトでは往々にしてこうした問題が起こりえます。
3-3. 連携基盤が設けられていない
周辺システムとのデータ連携には、SAP ERPだけでなく周辺システムへの連携手法も検討する必要があります。
しかしこれらの連携手法は、周辺システムごとに異なる場合があり、システムが増えるほど連携に関する調整は難しくなります。こうした連携に関する調整を簡略化するのがデータ連携基盤の役割なのですが、そもそもデータ連携基盤が存在しないシステムもあるわけです。
ご存じの方も多いと思いますが、連携基盤に関する課題は「ASTERIA Warp」や「DataSpider」のような連携ツールを導入することで解決可能です。
3-4. 「安定したリソース供給がないこと」が原因
少し乱暴な物言いになってしまいますが、結局は「調整・引継ぎ・考慮」にかけられる人と時間が足りていないことが障害の原因です。障害に対しては、データ連携のプロセスやインタフェースの設計、モニタリング、適切なセキュリティ対策の実施など、やるべきことが沢山あります。
しかし、プロジェクトを何とか進めるだけで手いっぱいといった状況では、どうしても「調整・引継ぎ・考慮」に漏れが生じてしまうわけです。
4. リソース不足のプロジェクトはチャンスかもしれない
今回はSAP ERPと他システム連携における障害の例と原因についてまとめました。2025年/2027年のEOSを目前に控え、リソース不足のプロジェクトは増えていくと考えられます。
しかし、リソースが潤沢にあるプロジェクトのほうが稀ですし、リソース不足な環境だからこそ何でも任せてもらえるチャンスがある…とプラスに考えることもできます。
他システム連携にかかる開発は、コミュニケーション能力や調整力、ファシリテーション力などを磨く良い機会です。もし関わる機会がありそうなら、積極的にチャレンジしてみてはいかがでしょうか。