そもそもなぜ双方向データ連携をすることになったのか
株式会社うるるはCGS(Crowd Generated Service)事業、クラウドソーシング事業、BPO事業でシナジーを生み出し、労働力不足の解決に挑戦している。今回は同社 NJSS事業本部 事業開発部 開発課 チームリーダーの河本周時氏が、システムリプレイスに伴う新旧システムの並行稼働と切り戻しの経緯をリーダーの目線で紹介する。
まずはそもそも新旧システムの並行稼働するに至った背景について。今回のシステムリプレイスではバックエンド、フロントエンド、インフラ、データベース、ほぼまるごと刷新することになっていた。ただしビッグバンリリースは避け、段階リリースを選択することにした。その過程でデータベースを役割で分割することになり、新旧データベースでデータ連携する必要が出てきた。河本氏は「双方向データ連携は一般的にアンチパターンと言われていますが、それを踏み抜きにいきました」と言う。
新旧システムでは構成が異なる。旧システムではWebアプリケーション1台とデータベース1台にしていたところ、新システムではWebアプリケーション2台とデータベース2台にした。旧システムではデータ入力も閲覧も1台でこなしていたところ、新システムではデータ入力と閲覧で分けるため2台とした。ただしリリース当初は、データ閲覧は旧システムが担い、データ入力は新システムから行うため(新システムのデータ閲覧は後からリリースする)、データを新旧で連携する必要があった。