マイグレーションとDX
旧レガシーシステムからのマイグレーション
マイグレーションとは?
「マイグレ」と略されている「マイグレーション(Migration)」という言葉の意味は、「移動」「移転」「移行」といった意味の英単語です。IT業界では、既存のソフトウェアやデータ及びシステムを別の新たな環境に移転することです。基本的な作業は既存システムの要件を変更せずにソフトウェアやデータを別の環境に移動したり、基幹システムを変更したりして新たな環境を構築し、新しいシステムに乗り換えることを意味します。「システム刷新」「レガシーシステムからの脱却}など発展形の言葉もあります。例えば開発言語をCOBOLからJava、VB6.0からVB.NET、AS400/RPGからCOBOLオープンシステムへ移行するなど、古い開発言語を現代的な開発言語に移行することがマイグレーションの一例。また、自社運用のオンプレミスのシステムをクラウド環境へ移行することもマイグレーションといいます。その他さまざまな場面でマイグレーションという言葉が使われますが、最近では長年使われてきたオンプレミスのシステム(レガシーシステム)をクラウド環境へ移行することを目指す企業様も増えてきているようですが、日本のデジタルトランスフォーメーション(DX)の進展が進まない理由は、このレガシーシステムの移管が進んでいないことが原因となっているとも言えます。
日本政府や機関紙が発表している『DXレポート』の中で、レガシーシステム問題を解決するには「システム刷新」つまり、マ イグレーションが必要だとしています。レガシーシステム問題の解決目的は、ハードウェアが古くなり老朽化、陳腐化して発生する故障リスク回避、システムやソフトウェアの保守期限を越えた際のリスク回避、OS、ミドルウェア、ソフトウェアのサポート終了後に放置されるシステム脆弱性によるトラブル回避などありますが、長年使われてきたオンプレミスのシステムでは、利用者が増えたり、扱うデータが増加したりすることで性能が低下することも予測できます。また、古くなることでシステムを熟知したエンジニアの確保が困難になるなど、運用コストが膨張してしまうことも考えられます。こういった問題をマイグレーションで解決できれば、保守性が向上し、さらに生産性を向上させ、DXを実現することができます。近年では、長年に亘って使われてきた古いオンプレミス環境からクラウド環境に移行させるのが主流のようです。クラウド環境を活用し、社内にサーバなどを設置しないサーバレス・コンピューティングも広まりを見せています。調達がしやすいことから、SaaSサービスの利用を検討する企業も多いようです。
マイグレーションを実施する手法
マイグレーションを実施する主な手法は3パターンあります。それぞれ目的や難易度が異なり、「リホスト」「リライト」「リビルド」の順に難易度が高くなります。
「リホスト(Rehost)/リホスティング(Rehosting)」は、インフラ刷新です。使用言語やプログラムのロジックを変えずに現在のプラットフォームだけをIaaSのクラウド環境などのインフラに移行する手法です。既存のプログラムの仕様を継承することで、移行の負荷も少ない手法とされています。しかし、ソフトウェア(アプリケーション)内のレガシーな要素が残ってしまうことが多く、内部に蓄積されたコードクローン問題(既存コードのコピーを繰り返すことでバグ等が内包されてしまう問題)を受け継いでしまう可能性がありますのでお勧めいたしません。
リライト(Rewrite)/リライティング(Rewriting)は、プログラムのロジックを変更しないで、使用言語とプラットフォームを新たなものに移行する手法です。使用言語とプラットフォームがモダンなものに移行されるため、最新のテクノロジーを利用しやすくなり、さらにデジタルトランスフォーメーションを推進しやすくなるメリットがあります。ただし、リライトもリホストと同じく、プログラムロジック上のレガシー問題を継承してしまう可能性があります。
「リビルド(Rebuild」)とはレガシーシステムに起因する問題を受け継がないようにするため、全てを作り直す手法です。システム再構築といわれることもあります。レガシーシステム問題を解決するためには最適な手法の一つですが、既存レガシーシステムの設計書の有無や業務改善などの必要性、重要性、最終的には費用面などを総合的に比較検討して決められた方が良いでしょう。
マイグレーションの作業プロセス事例
検証・分析段階では、実際に行われている業務状況を把握することや、資産の詳細な確認、そして移行する資産(捨てる資産)の選定をしてマイグレーション手法を決めていくことが重要です。どのような資産があり、どれが必要なのか見極めることが重要になってきます。移行後に予想される投資効果を考慮して進めていきます。
設計段階では、検証・分析して決めたマイグレーション手法に最適なツール類を決め、ツールの設計(開発)カスタマイズをしていきます。綿密なデータクレンジングを行うと同時にテストデータなどを用いて、設計が適切か評価します。
移行段階では、何度かのリハーサルと正確性を確認した後に実際の移行作業を実施します。移行後は、それが正確に実施できたかをテストします。抜け漏れなく進めるためには、詳細なテスト、確認が必要となります。検証段階から、しっかり計画を立てるのがマイグレーションを成功させるポイントです。計画3割、設計3割、テスト4割ぐらいのバランスでテストに重きを置くことを推奨いたします。
マイグレ移行ツール利用により機械的にターゲット言語に変換。VB→.NET、VB→Java、その他移行工数を大幅に削減可能
大量のリソースが存在する中国では手作業での以降も過去に経験しております。事業内容として近年は移行ツールをベースにしてステップ数によりお見積もりすることによって移行工数30%減(手作業との比較)を目指しています。マイグレ作業成功のポイントは単純移行後のテストに重きを置いて岡山にて検査しております。大量、一括、短納期でのマイグレーションはお任せください。
主な開発実績