システム移行のフルスクラッチ・オーダーメイド開発について

システム移行では、移行ツールや移行スクリプトを既製のETLツールで済ませるか、自社データに合わせてフルスクラッチで開発するかを選ぶ必要があります。

  • 既製ツールの活用と、移行スクリプトのフルスクラッチ開発
  • 既製ETLツールを選ぶべき基準
  • ダウンタイムを最小化するCDC(Change Data Capture)技術

判断基準からCDC技術、費用の目安、低予算の工夫まで順に見ていきます。独自データを移す担当者にも、判断の目安が身に付く内容です。

本テーマの全体像は、以下の記事をご覧ください。

▼全体ガイドの記事
・システム移行の完全ガイド

システム移行における「既製ツール活用」と「移行スクリプトのフルスクラッチ開発」という選択の位置づけ

システム移行を検討する際、多くの現場が直面するのが「移行作業そのものを、市販のツールに任せるべきか、自社のために個別開発すべきか」という選択です。

新システム本体をパッケージにするか自社開発にするかという上流の判断とは別に、移行という実行フェーズにも、同じ構造の「作るか、使うか」という判断が独立して存在します。

この前提を取り違えると、どちらの方向にも損が出ます。標準的なツールで足りる移行に大掛かりなオーダーメイド開発を選べば、予算と期間を浪費します。逆に、自社データの特殊性を無視して既製ツールに固執すると、変換しきれないデータが本番直前に大量に発覚しかねません。

移行プロジェクトの分岐点になる理由

この選択が分岐点になるのは、既製ツールと個別開発とで、対応できるデータの範囲も、必要になる期間と費用もまったく異なるためです。既製のETL(データ抽出・変換・ロード)ツールは、データ構造が標準的で、移行元と移行先の組み合わせも一般的であれば、画面上の設定だけで短期間・低コストに移行できます。

一方で、レガシーな独自フォーマットや特殊な文字コード、業務ルールが複雑に絡んだコード変換が必要な場合は、既製ツールでは吸収しきれません。そのため、自社データの特殊性に合わせた移行スクリプトを、個別に開発することになります。

自社の移行対象データがどちらの前提に近いかを、早い段階で見極めることが、無駄な手戻りを避ける第一歩です。

「モダナイゼーション」「刷新」「更改」「リニューアル」「リアーキテクチャ」「リプレイス」「改修」との違いと本記事の焦点

姉妹記事は、それぞれ別の観点に重心を置いています。「システムのモダナイゼーション」のリビルドは、クラウドネイティブな技術基盤への刷新という技術面にあります。「システム刷新」のフルスクラッチは、業務要件への完全適合という経営・業務面にあります。

「システムリプレイス」のビルド・バイ判断は、新システム本体を自社開発するか他社製品へ乗り換えるかという製品選定です。「システム改修」のフルスクラッチは、パッチ的な改修かミニリビルドかという対象範囲の選択です。

一方、本記事が扱うシステム移行のフルスクラッチ・オーダーメイドは、これらとは異なります。焦点を当てるのは、データを移すための移行ツールや移行スクリプトという、実行フェーズに固有の裏方の選択です。

既製ETLツールを選ぶべき基準 vs 移行スクリプトをフルスクラッチ開発すべき基準

既製ETLツールと移行スクリプトを、データ構造と自動化・検証の観点で左右に対比した図。
標準的なデータ構造か、独自の対応が必要かが分岐点です。

どちらを選ぶべきかは、主に「データ構造の標準度合い」と「求める自動化・検証の粒度」という2つの観点で判断します。

既製ETLツールが適する場合(標準的なデータ構造・視覚的な自動化)

既製のETLツールは、抽出・変換・ロードの各工程を画面上で設計し、自動で実行したい場合に向いています。

コード変換テーブルを参照した新コードへの変換は、ツール上で定義できます。さらに、変換エラーのログ出力やエラーデータの自動抽出機能を備えているため、移行の効率と品質を同時に高めやすいという特長があります。

たとえば、移行元と移行先がどちらもメジャーなデータベース製品やクラウドサービスで、データ構造も比較的シンプルな標準業務システムの移行であれば、既製ツールをそのまま使えます。その場合は、開発期間と費用の両方を抑えられます。

フルスクラッチ開発が必要になる場合(特殊レガシーコード・独自検証ロジック)

一方、COBOLなどのレガシーシステム特有の独自データフォーマットや、業界固有の複雑なコード体系を扱う場合には、自社開発の移行スクリプトが必要になります。件数比較や金額フィールドの合計値比較、孤立レコードの抽出といった自社固有の検証ロジックを自動化したい場合も、自社開発が前提になります。

移行スクリプトをフルスクラッチで開発する場合も、通常のシステム開発と同じく、移行要件を明確にし、仕様書と設計書を作り、コーディングとテストを行う工程が必要です。この点は見落とされがちです。

「スクリプトだから簡単」と思い込んで軽く見積もると、複雑な変換ロジックのテストに想定以上の期間がかかり、移行実行フェーズ全体のスケジュールを圧迫します。

ポイント

迷ったときは、移行対象のデータが標準的な構造に収まるかを先に確かめます。収まらないなら、フルスクラッチの移行スクリプトを検討することになります。

ダウンタイムを最小化するCDC(Change Data Capture)技術という選択肢

初期ロード、差分同期、切り替えの順に進むCDC移行の流れと、ダウンタイムの目安を示す図。
変更分を追いかけてから切り替えることで停止時間を短くできます。

既製ツールか個別開発かの選択とあわせて検討したいのが、業務停止をほぼゼロに抑えたい場合に使われる「CDC(Change Data Capture)」という技術です。

CDCの仕組み(初期ロード+差分同期でダウンタイムを数分〜数十分に圧縮)

CDCは、データベースで発生した変更(登録・更新・削除)をリアルタイムに検知・取得する技術です。

まず、移行元システムを稼働させたまま既存データを一括で転送する「初期ロード」を行います。その間に発生した変更は、CDCで継続的に取り込んで移行先に反映する「差分同期」で追いかけ、同期が追いついた時点で切り替えます。そのため、この方式では実際のダウンタイムが最後の差分適用と切替作業だけになり、数分〜数十分程度まで縮められます。

なかでも、データベースのトランザクションログを読み取る「ログベースCDC」は、移行元システムへの負荷が最も低く、移行に最適な手法とされています。

CDC導入のコスト増(通常移行の1.5〜3倍)と適用すべき対象の見極め

CDCによるゼロダウンタイム移行は強力な選択肢です。一方で、高度な設計と構築が必要になるため、通常の移行に比べて1.5〜3倍程度の費用がかかるとされています。

あらゆる移行に使うより、業務停止が本当に許されない基幹システムや、顧客影響が大きい対外サービス系のシステムに絞ってCDCを適用するのが現実的です。

逆に、夜間や休日にまとまったダウンタイムを確保できる業務システムでは、無理にCDCを導入する必要はありません。シンプルな一斉移行とバッチ処理による移行で足りるケースも多く、対象システムの業務停止の許容度を早期に見極めることが、無駄な投資を避ける鍵になります。

ポイント

CDCは、業務停止が本当に許されない基幹系や、顧客影響の大きい対外サービス系に絞って使うのが現実的です。夜間や休日にまとまった停止時間を取れるなら、CDCを使わない移行で足りるかを先に検討します。

オーダーメイド移行ツール開発のコスト・期間目安

小規模、中規模、大規模の3つの移行プロジェクトについて、それぞれの外注費用目安を並べた図。
対象データや部門の広がりに応じて費用の桁が変わります。

フルスクラッチで移行スクリプトを開発する場合、どれくらいのコストと期間を見込んでおけばよいのか、規模別の目安を確認しておきます。

規模別のコスト目安(小規模数百万円台〜大規模数千万〜数億円規模)

移行スクリプトの開発だけを切り出した相場は、公開されにくいのが実情です。そのため、変換ロジックの設計・開発・テストを含む移行プロジェクト全体の外注費用から類推します。

その目安は、対象データが数十万レコード程度に収まる小規模な一斉移行では数百万円台、複数部門・複数機能にまたがる中規模な段階移行では数千万円規模です。数千万レコード・複数テーブルが絡む大規模な基幹系の並行稼働移行では、数千万〜数億円規模に達することがあります。

フルスクラッチ開発の比重が大きくなるほど、変換ロジックの設計・実装・テストが費用に占める割合も増えます。そこで、見積もりを受け取ったら、「どこまでが既製ツールの利用料で、どこからが個別開発の人件費か」に分けて確認すると、費用の妥当性を判断しやすくなります。

開発期間と移行スケジュールへの組み込み方

期間は対象データ量に連動し、数十万レコード程度の小規模なデータなら数週間〜1ヶ月、数千万レコード規模の大規模な基幹系データなら3〜6ヶ月以上を見込んでおく必要があります。

移行スクリプトのフルスクラッチ開発も、通常のシステム開発と同じく要件定義・設計・実装・テストの工程を経ます。そのため、この期間は、前段のシステム設計・構築の完了を待ってまとめて確保するより、新システムの開発と並行して早めに着手しておくことが望ましいとされています。

移行スクリプトの完成を新システムの開発完了後に置くと、移行実行フェーズ全体のスケジュールが後ろ倒しになります。その結果、本記事群の姉妹記事「システム移行の開発期間・スケジュール・納期について」で解説したカットオーバー計画に、直接影響が出ます。

ポイント

見積もりは、既製ツールの利用料と個別開発の人件費に分けて見るのが近道です。移行スクリプトは、新システムの開発と並行して早めに着手すると、後ろ倒しを防げます。

低予算でオーダーメイドの移行を実現する工夫

予算が限られていても、自社データの特殊性に合わせたオーダーメイドの移行を実現するための工夫があります。すべてをフルスクラッチで賄う必要はありません。

移行対象データを絞り込むというコスト削減策

データ量は作業負荷に直結します。そのため、「直近数年分のデータだけを移行対象にする」「5年以上前の利用頻度が低いデータは削除するか参照専用のアーカイブに残す」といったルールを設けて対象範囲を絞り込むことが、最も即効性のあるコスト削減策です。

すべてのデータを新システムへ持ち込もうとするほど、フルスクラッチで対応すべき例外パターンが増えます。その分、開発と検証にかかる費用も比例して膨らみます。

対象データを絞り込んだうえで、標準的な部分は既製ツールに任せます。そして、どうしても個別対応が必要な例外部分だけを小さくフルスクラッチ開発します。この「ハイブリッド戦略」が、限られた予算での現実的な落としどころです。

事前のデータクレンジングと差分反映によるスクリプト簡素化

移行スクリプトの複雑さは、対象データの汚れの多さに比例します。そこで、重複データや廃止コードを事前に整理するデータクレンジングを徹底すれば、スクリプトが吸収すべき例外パターンそのものが減り、開発コストを抑えられます。

これを省略すると、移行後に不整合データが表面化し、本番稼働中のシステムでデータを修正する羽目になります。その修正には移行前より何倍もの工数がかかり、最も避けるべき事態です。

さらに、移行リハーサルの章で触れた「フリーズウィンドウ方式」の差分反映をスクリプトに組み込めば、毎回全件を再投入せずに済み、テストと本番の両方で実行時間と工数を圧縮できます。オーダーメイドでも、最初から完璧な自動化を目指す必要はありません。まずは手作業で確認しながら小さく動くスクリプトを作り、繰り返し使う中で磨き上げていく進め方が、限られた予算で品質と費用のバランスを取る現実的な選択です。

ポイント

低予算では、対象データを絞り込み、事前のクレンジングで例外を減らしたうえで、既製ツールと小さな個別開発を組み合わせるのが現実的です。個別開発は例外の部分だけに絞れば、開発と検証にかかる費用の膨らみを抑えられます。

まとめ

システム移行では、既製ETLツールの活用と移行スクリプトのフルスクラッチ開発のどちらを選ぶかが問題になります。本記事では、両者を分ける判断基準、CDC技術という選択肢、コスト・期間の目安、低予算での工夫を解説しました。

判断の観点は、データ構造の標準度合いと、求める自動化の粒度の2つです。既製ETLツールは標準的なデータ構造に短期間・低コストで対応できる一方、レガシーな独自フォーマットにはフルスクラッチの移行スクリプトが必要になります。ゼロダウンタイムを狙うCDCの導入は、通常の1.5〜3倍のコストを伴います。

低予算でもオーダーメイドの移行を実現するには、対象データの絞り込みと事前のクレンジングを徹底することが最大の鍵です。

新システム本体の作り方や上流の意思決定プロセスについては、姉妹記事「システム刷新」「システムのモダナイゼーション」もあわせてご参照ください。

▼全体ガイドの記事
・システム移行の完全ガイド

会社紹介

株式会社riplaでは、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを、構想策定・要件定義から開発・改善まで一気通貫で支援。事業会社でIT・DXを経験したプロフェッショナルによる高い要件定義力・システム設計力を活かし、事業成果の最大化に伴走します。

また、当社独自の開発テンプレート「Boxシリーズ」による標準機能の高速開発と、AI駆動開発の独自フレームワーク「GoDD」による独自機能のAI実装を組み合わせることで、低コスト・短期間で開発を実現いたします。

もし、システム開発やプロダクト開発に関するご要望がございましたら、お気軽にお問い合わせください。

・サービス概要資料のURLはこちら >>>
・お問合せページのURLはこちら >>>
・お役立ち資料のURLはこちら >>>

執筆者プロフィール
張田谷凌央
張田谷凌央

株式会社ripla 代表取締役CEOとして、システムパッケージ活用、システム開発、データ分析、生成AI活用、SaaS開発、アプリ開発、EC構築など、幅広い領域で企業のDX推進と事業成長を支援している。事業会社でIT・DXを経験したプロフェッショナルが集う株式会社riplaにおいて、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを構想策定・要件定義から開発・改善まで一気通貫で支援し、単なるシステム納品にとどまらず、クライアントと同じ目線で事業成果の最大化に向けた伴走支援を行う。早稲田大学卒業後、ラクスル株式会社、LINEヤフー株式会社にて事業開発やDX推進などに従事した後、株式会社riplaを創業。