IT化という言葉が一般的に使われるようになってから、すでに20年以上が経過しています。その中で多くのシステムが開発され、現在も運用されているでしょう。
そうしたシステム(一般的にレガシーと呼ばれます)の中には、時代の変化に取り残され、時代遅れのアーキテクチャになっている場合があります。
本記事では、レガシーなシステムを刷新する「モダナイゼーション」の概要や重要性について解説します。
また、マイグレーションとの違いや、モダナイゼーションの課題、テスト役割についてもご紹介しますので、ぜひ最後までご覧ください。
モダナイゼーションとは?
モダナイゼーション(modernization)とは、直訳すると「近代化」や「現代化」という意味の言葉で、既存のシステムを刷新して最新のテクノロジーやアーキテクチャに変更するプロセスのことをいいます。
主な目的としては、「システムの効率化やセキュリティ向上」や「ライセンスコストの低減」などですが、本質としては、単なるシステムや技術の置き換えではなく、「ビジネスの変化に迅速に対応できる柔軟なIT基盤を作る」ことが重要となります。
モダナイゼーションの方法には、レガシーシステムをリファクタリングする、プラットフォームを移行する、新しいテクノロジーによる刷新などがあります。
1-1 モダナイゼーションが必要なケース
モダナイゼーションが必要になるケースとしては以下のようなものがあります。
- 既存システムが古くなり保守が困難
- ソフトウェアやハードウェアのサポートが切れている
- 業務変更にシステムが対応できない
- 他のシステムと連携ができない
- ドキュメントや仕様書がなく、属人化している
モダナイゼーションが必要な状態を放置すると、市場にマッチしたサービスを素早く提供できず、ライバル企業に遅れを取ることでしょう。
また、将来的にビジネスの継続ができなくなってしまったり、セキュリティリスクが高まりサイバー攻撃の被害にあったりなど、企業の成長や信用に大きな影響を及ぼす恐れがあります。
こういった事態を防ぐためにも、モダナイゼーションの取り組みは重要です。
1-2 マイグレーションとの違い
| モダナイゼーション | マイグレーション | |
| 概要 | 既存のシステムを刷新して最新のテクノロジーやアーキテクチャに変更するプロセス | 既存システムやデータを新しい環境へ移行するプロセス |
| 目的 | ・古いシステムを変えて、新しい技術やビジネスモデルに対応できるようにする ・単なるシステム移管だけでなく再設計、再構築も含まれる |
・今のシステムを新しい環境に移行する ・場所や環境を変えるだけで、機能や仕組みは変えない |
モダナイゼーションと関連して、「マイグレーション」という言葉を聞くことも多いでしょう。
マイグレーションとは、既存システムやデータを新しい環境へ移行するプロセスです。
良くある例としては、既存のオンプレミスシステムをクラウドアーキテクチャへ移行するケースが挙げられます。
この場合、現状のソフトウェアをそのまま利用し、新しい環境で動作させることもありますし、システム更改を含む場合もあり、マイグレーションと同時にモダナイゼーションを行うことも多くあります。
モダナイゼーションの3つの課題
モダナイゼーションプロジェクトを推進する際に課題となるポイントを3つ紹介します。
2-1 システムの複雑性
一つ目の課題が「システムの複雑性」です。
長期に渡るシステム運用の中で、さまざまなカスタマイズが行われているでしょう。そうしたカスタマイズにより、システムは複雑になっています。
それらを新しいアーキテクチャに対応させる、新技術で置き換えるのは容易ではありません。
よく挙げられるのはCOBOLからJavaへの移行プロジェクトです。レガシーな技術を理解するエンジニア不足や、移行ツールの欠如が課題になります。
2-2 ビジネス上のリスク
二つ目の課題がビジネス上のリスクです。
一般的に、モダナイゼーションプロジェクトは大規模な開発になります。時間とコストがかかり、スケジュール上の問題発生も少なくありません。
そして、プロジェクトが完了するまでは新しいビジネス要件に対応するのは困難でしょう。新規システムへの移行に失敗し、ビジネスが停止したという話題にも事欠きません。
モダナイゼーションが必要なケースは多いですが、それに伴うビジネスリスクは正しく認識しなければいけません。
2-3 過去資産の理解不足
三つ目の課題は過去資産の理解不足です。
ドキュメントが残されていたとしても、すべての仕様を理解するのは容易ではありません。
緊急で行われたパッチについては、ドキュメントが存在しないこともあります。
また、本来システムや仕様として実装されているべき要件や対応を、運用現場の知恵や作業ルール、人的対応などでカバーしているケースも少なくないでしょう。
そうした人に依存した知識は、人事異動や退職などによって失われます。
システム全体の理解が進んでいない中でのプロジェクト実施は、大きなリスクになります。
モダナイゼーションプロジェクトにおけるテストの役割
モダナイゼーション・マイグレーションプロジェクトにおいて、テストは極めて重要な役割を果たします。
ここではテストのカテゴリー毎に役割を解説します。
3-1 結合テスト
結合テストとはシステムを個々のモジュールに分割して開発し、それらを正しく連携できるか確認するテストです。
大規模なシステムであれば、実際の開発は個別のモジュール・コンポーネントに分割して行われます。また、マルチベンダーでの開発も良く行われます。そうした場合、徹底した結合テストが必要です。
3-2 システムテスト
システムテストとは、システム全体が仕様通りに動作するかを検証するテストです。
一般的に、結合テストの後で実施されます。システムテストでは、エンドツーエンドで機能が正しく実行されることを確認し、全体的な動作検証を行います。
3-3 パフォーマンス(負荷)テスト
パフォーマンス・負荷テストとは、実際の運用環境において、システムが期待通りの性能を発揮するか検証します。
モダナイゼーションやマイグレーションでは、アーキテクチャの変更やインフラ周りの変更が行われます。
そのため、ネットワークのレイテンシーや新しいデータベースなどによって、予定通りのパフォーマンスが出ない(旧システムより劣化する)ケースがあります。
3-4 ユーザー受け入れテスト
実際のエンドユーザーがシステムを試用し、要件が満たされていることを確認するテストです。
この時点ではシステムが完成している前提になりますので、ユーザー視点からのUI/UXを確認するのが一般的です。
そして、ユーザーフィードバックを基に、最終的な調整や改善を行います。
モダナイゼーション・マイグレーション品質向上を支援するバルテスの3つ特徴
ここまでで挙げた課題に対応すべく、バルテスではマイグレーション品質向上支援サービスを提供しています。
これは、レガシーシステムからのマイグレーションプロジェクトにおいて、「仕組み化」を重視したテストサービスになります。
古い資産の仕様を明らかにし、マンパワーに頼らないテスト支援を行います。
主な特長を3つご紹介します。
4-1 現行システムフローの可視化
システムマイニングツールを活用し、「現行システムの仕様が分からない」という課題に対応します。
システムフローが明らかになることで、マイグレーション対象となる資産の特定やテスト範囲の見極めが可能になります。
4-2 勘所を押さえた品質活動を推進
当社の品質管理支援担当(QMO)がプロジェクトに参画し、品質活動を推進します。
マイグレーション経験者を中心としており、マイグレーションプロジェクトにおける品質活動の勘所を押さえています。
4-3 ツールを有効活用したテストの省力化と資産化
当社の提供するテスト自動化ツール「T-DASH」や、テスト管理ツール「Quality Tracker」を活用し、テストの省力化と資産化を実現します。
また、本番トランザクションによる現新比較自動検証ツール「PerfecTwin」では、実際の業務トランザクションを新システム上で再現することで、機能や性能の自動検証を可能にします。これにより、従来の比較テストに比べてコストと工数を大幅に削減できます。
まとめ
本記事では、モダナイゼーションとは何か、モダナイゼーションが必要になるケースやマイグレーションとの違いをご紹介しました。
また、モダナイゼーションにおけるテストの役割も解説しました。モダナイゼーションには、一定のリスクが内在しており、適切な戦略とテストプロセスの導入が成功の鍵となります。
バルテスでは、マイグレーション品質向上支援サービスを通じて、マイグレーションプロジェクトの成功を支援しています。ぜひ、お気軽にお問い合わせください。

