モダナイゼーションで品質を守るための秘訣とは?!
企業が競争力を保つために、古いシステムの刷新は避けて通れません。しかしながら、システムを刷新するにあたり、大規模なシステムであるほど複雑化していることが多く、刷新後の品質担保が難しくなるという大きな課題が浮上します。本記事では、モダナイゼーションにおける品質保証を守る秘訣について解説します。
モダナイゼーションとは
モダナイゼーションとは、古い既存システムや業務プロセスを、現代のビジネスニーズに適応させるために刷新したり、置き換えたりすることを指します。特にレガシーシステムは、大規模であり、顧客の業務プロセスに合わせてカスタマイズされていることが多いため、非常に複雑になりやすいです。たとえば、金融システムのように長年の運用により複雑化した大規模システムは、モダナイゼーションが必要とされます。
これらのシステムを新しいものに移行する際、カスタマイズされた仕様に合わせてすべてを調整するには、膨大な手間とコストがかかります。単にシステムを更新するだけでなく、新しいシステムに合わせて顧客側の業務プロセスを改善することも重要です。そのため、モダナイゼーションでは、業務改善や業務改革と合わせて実施することが基本です。
マイグレーションとは
モダナイゼーションでは、「マイグレーション」という言葉がよく使われます。マイグレーションとは、既存システムの機能や性能の要件を変更せず、ハードウェア、ソフトウェア、業務データなどを別の環境に移行すること、または新しい環境に切り替えることを指します。例えば、業務データやソフトウェアをオンプレミスサーバーからクラウドサーバーに移行することが、典型的なマイグレーションの一例です。マイグレーションは、システムの性能向上や運用効率の改善を目指すモダナイゼーションの一部として行われることが多いです。
モダナイゼーションの必要性
モダナイゼーションは、レガシーシステムを利用し続けることの課題を改善するために必要です。
レガシーシステムの課題は以下のようなことがあります。
- 作業効率が悪い
古い技術やシステムは作業効率が悪く、時間やリソースが無駄に多くかかる - セキュリティが脆弱である
セキュリティ技術やプロトコルが古いため、新しいウイルスなどに侵入される恐れがある - 品質が低い
保守性や拡張性が低いため、テスト不足や設計不良により、品質が低くなりがちである
業務の作業効率を向上し、システムの品質やセキュリティを保つためには、モダナイゼーションは必要です。
モダナイゼーションの課題
モダナイゼーションは必要であるものの、簡単にできるものではありません。
モダナイゼーションするときに発生する課題は以下のようなことがあります。
- システムの複雑化や属人化により、システムの刷新や移行の対応が難しい
- 部署間でのデータ連携やデータの有効活用がシステム構造的に難しい
- システム刷新・移行にかかる費用が莫大にかかる
モダナイゼーションの課題を考慮してどのように進めていくかを検討していく必要があります。
モダナイゼーションのアプローチ
モダナイゼーションをおこなうためには、まずは現行調査・分析をして、どの部分を刷新・移行するかを検討する必要があります。この現行調査・分析で、上記のようなモダナイゼーションの課題を考慮します。
①現行調査・分析
現行システムの利用状況を分析し、どの部分を残して何を刷新するのかを明確化します。
- 変えない(変えられない)部分
- 変えられる部分
- 変えなければならない部分
現行システムの利用状況を分析し、どの部分を残して何を刷新するのかを明確化します。2については、業務継続性の確保を重視するか、刷新したシステムに合わせて業務内容や手順の変革もするかを考える必要があります。
②システム刷新・移行
現行調査・分析ができたら、システム刷新・移行を進めていきます。
モダナイゼーションには、以下の様な手法があります。
手法 | リホスト | リライト | リプレイス | リインターフェース |
内容 | インフラ・OSを アップデート | 新たな開発言語を 用いた既存システムの置き換え | ハードウェア・ ソフトウェアを刷新 | 既存システムをそのまま残して新たな画面やインターフェースを刷新 |
モダナイゼーションでソフトウェアの品質を保つためには
システム刷新・移行後に機能が正常に動作することの確認が必要です。また、モダナイゼーションでは特に、システム連携の確認も必要なため、システム全体をユーザー視点で動作確認する、E2Eテストが必須です。E2Eテストでは、ユーザーのUI操作をシミュレーションして、システムが期待通りに動作することを確認します。このE2Eテストを手動で行う場合、テスト作業の効率やシステムの品質に影響があります。
手動テスト
- 人為的ミス、検証漏れの発生
- テスト作業による人員不足
- テスト範囲の制限
- テスト時間によるリリースの遅延
素早く品質の高いシステムを提供するためには、E2Eテストの自動化が必須です。
E2Eテストの自動化とは
これまで手動でおこなっていた打鍵によるE2Eテストをツールに置き換えることです。ユーザーのUI操作を自動化できる、UI テスト自動化ツールを使用することでテスト対象アプリの操作だけでなく、レポートの生成や検証も自動でおこなうことができます。
UIテスト自動化ツールを利用すると
- UI操作の自動化
- 検証の自動化
- レポート生成の自動化
テスト自動化ツールのUI要素の認識方法
近年のUIテスト自動化ツールは、オブジェクト認識型のタイプが多いです。アプリケーションの内部構造を読み取ってUI要素を特定するため、アプリケーションの改修などで発生するテストスクリプトのメンテナンスを抑えることができます。
座標ベース型 | 画像ベース型 | オブジェクト認識型 | |
ツールイメージ | |||
ツールの強み | ・比較的操作が簡単 ・オブジェクトに位置が変わらないUIに強い | ・座標認識より認識精度高い ・シミュレーターの場合も認識可能 | ・認識精度が最も高い ・UI部分の変更に強い (コードベースでの認識) |
ツールの弱み | ・解像度やウィンドウサイズの変更に弱い ・検証項目が設定しにくい | ・画像の認識に調整が必要 ・デザインの変更に弱い | ・オブジェクト認識ができないとツール利用が困難になる |
モダナイゼーション手法ごとの自動テストの内容
前述したように、モダナイゼーションには手法がいくつかあります。新旧システムでUI画面の構成が変わるかどうかにより、自動テストの内容が異なります。
それぞれの手法で適している自動テストの内容は以下です。
手法 | リホスト | リライト | リプレイス | リインターフェース |
内容 | インフラ・OSを アップデート | 新たな開発言語を 用いた既存システム の置き換え | ハードウェア・ ソフトウェアを刷新 | 既存システムをそのまま残して新たな画面やインターフェースを刷新 |
UI画面の構成が変わるか | 変わらない | 変わる | ||
自動化のテスト内容 | 新旧比較のテスト | 新システムの 機能テスト | ||
このテストで使えるRanorexの検証機能 | 存在検証・属性検証・スクリーンショット機能 (新旧で完全に見た目が同じであれば画像検証も可能) | 存在検証・属性検証・画像検証 スクリーンショット機能 |
新旧比較のテスト
リホスト、リライト、リプレイスでは、新旧システムでUI画面の構成が同じため、新旧比較を自動化できます。
旧システムでテストを作成し、新システムでテスト実行することで、新旧比較がおこなえます。
※画面の色味やフォントが変わっても、画面構成が同じであれば新旧比較はおこなえますが、画像比較はできません。
新システムの機能テスト
リインターフェースでは、新旧システムでUI画面の構成が異なるため、新システムの機能テストを自動化します。新システムでテストを作成して実行します。
新システムの機能テストを自動化することで、機能修正や追加が入ったときのリグレッションテストで利用できます。また、将来的にリホスト、リライト、リプレイスが発生するときに、新旧比較のテストとして利用できます。
モダナイゼーション手法で使えるRanorexの便利機能
モダナイゼーションでは、機能が正常に動作するかを確認する必要があるため、Ranorexの検証機能やスクリーンショット機能などを利用することで、結果の確認がスムーズにおこなえます。ここでは、Ranorexの検証機能とスクリーンショット機能についてご紹介します。
各機能の詳細については、以下をご参照ください。
存在検証
アプリ画面内に対象オブジェクトが存在するかどうかの検証ができます。新旧比較、新システムの機能テストで利用できます。
属性検証
オブジェクトが持つ属性値が期待値と一致するかどうかの検証ができます。新旧比較、新システムの機能テストで利用できます。
画像検証
テスト実行時の実際の画面と期待画面が一致しているかどうかの検証ができます。Ranorexの画像比較は、ピクセル単位、RGB単位でおこないます。また、画像比較には豊富なオプションが用意されています。画面の見た目が完全に同じ場合の新旧比較、新システムの機能テストで利用できます。
画像検証については、ブログ記事がありますので以下も合わせてご確認ください。
スクリーンショットの取得
アプリケーション画面全体や対象オブジェクトのスクリーンショットを取得できます。取得したスクリーンショットは、Ranorexのレポートに出力されます。画面の見た目が異なる新旧比較では、画像検証の代わりにこの機能を利用して、画面を確認することが可能です。また、画面のエビデンス取得のために、新システムの機能テストでも利用できます。
まとめ
本記事では、企業が競争力を保つために必要なシステムの刷新、モダナイゼーションについて紹介しました。特に、金融システムのように大規模で複雑なシステムを新しくする際、品質をしっかりと担保することが大切です。
Ranorexなら、E2Eテストの自動化を通じて、手動テストのミスや手間を減らし、移行後のシステムが期待通りに動作することを確実にチェックできます。システムの品質を守りながらモダナイゼーションを進めたいなら、Ranorexを今すぐダウンロードして、テストの自動化を始めましょう!
Ranorexのすべての機能を14日間、無料で体験できます。ぜひ、以下のボタンからダウンロードしてご利用ください。