既存システムとの連携開発|APIがない相手とどうつなぐか
連携でつまずくのは技術的な難しさより、「どちらのデータを正とするか」を決めていないことが原因です。ここを最初に決めれば、方法は後から選べます。
結論から
- 連携方法はAPI・CSV・画面操作の自動化の3つ。相手の事情で決まる
- どちらを正とするかを先に決める。両方が正になると必ず不整合が起きる
- 失敗したときにどう気づくかを、最初から設計に入れる
3つの連携方法
| 方法 | 条件 | 特徴 |
|---|---|---|
| API連携 | 相手がAPIを公開している | 最も安定する。リアルタイムに近い |
| CSV連携 | 書き出し・取り込みができる | 多くのシステムで使える。時間差が出る |
| 画面操作の自動化 | 上記が両方できない | 相手の画面変更に弱く、保守が必要 |
設計で必ず決めること
- どちらのシステムを正しいデータの置き場所にするか
- どのタイミングで同期するか(即時か、1日1回か)
- 同じデータが両方で更新されたときにどちらを優先するか
- 連携が失敗したときに誰がどう気づくか
- 止まっていた分を後から取り戻せるか
失敗の検知を最初から入れる
連携は必ずいつか止まります。相手のメンテナンス、仕様変更、ネットワーク障害など、原因は様々です。重要なのは、止まったことにその日のうちに気づける仕組みを持つことです。
件数が想定より極端に少ない、一定時間データが来ていない、といった条件で通知する仕組みを入れておきます。
よくあるご質問
- 相手のシステムにAPIがあるか分かりません
- ベンダーに確認するか、管理画面に「API」「連携」「エクスポート」の項目があるかを見ます。調査からお手伝いできます。
- 古いシステムでも連携できますか
- CSVの出力ができれば、多くの場合は連携できます。それも難しい場合は画面操作の自動化を検討します。