アプリケーション移行方式選定の観点
まずは、移行対象の業務アプリケーションの実装方式を以下の3種類に分類します。
Windowsネイティブアプリケーション
VisualBasicや、C言語などの開発言語で作成された、クライアントPCで実行されるネイティブアプリケーション(以下win32アプリケーション)。クライアントサーバ方式の場合はWebサーバやデータベースサーバなどと連携するパターンも多い。
Internet Explorer用Webアプリケーション
Webサーバとクライアントブラウザで構成されるクライアントサーバ方式のアプリケーションの中でブラウザとしてInternet Explorerのみを動作対象としたアプリケーション。
アプリケーションプログラムはサーバ側で管理となるため、クライアント側は基本的にはブラウザだけがあればよい。ただし、Internet Explorer専用アプリの場合は、機能拡張のためActiveXで開発されたネイティブプログラムをPCにインストールすることで動作するものもある。
マルチブラウザ用Webアプリケーション
Internet Explorer用Webアプリケーションの動作対象ブラウザをChromeやFirefox、Safariなどに広げたアプリケーション。
マルチブラウザを動作対象とする場合はActiveXを利用できないため、Javaアプレットによるネイティブアプリケーションを利用する場合がある。
****
さらに、移行にあたり検討が必要な観点を洗い出します。
新しいUI/UXへの対応
- Windows 10への移行にあたり、タッチやペンによる操作が可能となることや、タブレットデバイス利用による画面の縦横切替が必要となるなど、新しいデバイスに合わせたユーザエクスペリエンス向上の観点でアプリケーション設計が必要。
- また、バッテリの持続時間が長くなりデバイス自体のポータビリティが向上したことにより、社外に持ち出しての利用シーンが多くなることも考慮する必要がある。
アプリケーションセキュリティ
- 前回の記事でも書いた通り、信頼済みアプリケーションの実行制御のためには、業務プログラムに対してコード証明書によるプログラム署名が必要になるなどセキュリティ対策の検討も重要である。
- さらに持ち出しを行うデバイスに対しては、業務データが漏洩しないように仮想化や暗号化など対策の検討も必要である。
マルチデバイス対応
- Windows 10では、デバイスの種類が大幅に増え、これまでのノート型やデスクトップ型のPCだけでなく、タブレット型や、スマートフォン型のデバイス、Surface Hubのようなサイネージ型デバイス、バーチャルリアリティを実現するHoloLensや、IoTデバイスのRaspberry Pi 3にもWindows 10は搭載可能となった。
- 業務アプリケーションの移行にあたり、業務効率化やワークスタイル変革の実現などを目的として、これらの新しいデバイスでの動作も検討する必要があるが、UWPを採用することで、一つの開発ソースで上記全てのデバイスで動作するアプリケーションの作成が可能となる。
- Windows以外のiOSやAndroidデバイスで動作するアプリケーションも、Xamarinを利用することにより同一コードでアプリケーションを作成することが可能。
開発コスト/スケジュール
- セキュリティ脆弱性対策としてWindows 10への移行を実施する場合は、可能な限り早くOSのアップグレードを行う必要があり、アプリケーション移行のスケジュールがタイトになるケースがある。
- ワークスタイル変革などの業務見直しを行わない場合、これまでと同じアプリケーションを提供することになるため、アプリケーションの移行にはコストをかけられないといったケースも考えられる。