先進のWebフロントエンド技術を導入する事例が増えている。この動きに乗り遅れてはまずい。本特集では、ITリーダーやITエンジニアが知っておくべきWebフロントエンド技術のAtoZを取り上げる。 今回から「PWA」について学ぼう。

 PWA(Progressive Web Apps)という言葉をご存知だろうか。Webアプリでネイティブアプリのような優れた体験を提供すること、またはそれを実現するための技術を指す。Webアプリの新しいコンセプトとして、米グーグル(Google)によって提唱された。

 PWAはある単一の要素技術やフレームワークを指すのではなく、「ネイティブアプリのような体験」という方向性のもとで、関連する複数のHTML5の仕様と使い方を定めた、Web構築のための設計指針である。

 筆者らは2012年から「hifive(ハイファイブ)」というHTML5ベースの業務システム向け開発フレームワークをOSS(オープンソースソフト)として提供している。そしてOSS活動や、実案件適用を通して獲得したノウハウを日経 xTECH(旧ITpro)に掲載した。

 筆者らはこのPWAが、特にスマートデバイス向けの業務システムにおいて今後重要になると考えている。

 PWAはBtoCのWebサービス向けの技術と捉え、社内システム(営業向けの顧客管理システムや工場内の生産管理システムなど)には関係ないと思っている人がいるかもしれない。あるいは、自社のWebシステムをPWAとして作り直すのはコストがかかりすぎると考えている人もいるだろう。

 しかしPWAを構成する技術には、業務システム開発に役立つものが多くある。その中には「オフラインでの動作」や「プッシュ通知」など、従来ネイティブアプリでなければ実現できなかった機能も含まれる。必要な技術だけを選択して取り入れることで、少ないコストで機能性や使い勝手を向上させられるのだ。

 そこで本特集では、業務システムの使い勝手に対しPWAがいかに寄与するかを、PWAの概要や個々の機能をひも解きながらお伝えしていく。

なぜ業務システムをPWAで作るべきか?

 業務システムの「速さ」や「使いやすさ」は、業務の生産性に直結する。また、業務側からは、モバイルデバイスを活用して「いつでもどこでも利用できること」や「5年、10年にわたる長期間の保守」などが求められる。さらにITガバナンスの観点からは「効率良い技術投資」も必要だ。

 このような要求を踏まえると、業務システムをWebアプリで作ることは、開発や保守の観点で明確なメリットがある。例えば、次のようなものだ。

  • Webの仕様は標準化団体(W3CやWHATWG)で標準化が進められている。そのため異なる複数のブラウザーで動作するほか、策定に至った仕様は基本的に後方互換性が保たれ、ブラウザーがバージョンアップしても動作する
  • Webの技術(HTML5/JavaScript/CSS)で開発できるため、ネイティブアプリよりも技術者の調達が容易である
  • デバイスごとのアプリストアの審査が不要なため、アプリの更新や配布が容易である

 しかし、実際の開発ではネイティブアプリを採用せざるを得ないケースが少なくない。主な原因は、Webブラウザーの機能的制約だ。例えば、筆者らが業務システム開発に携わる中で、次のような要件がよく挙げられる。どれも従来のWebブラウザーでは実現できない。

  • オフライン対応:地下やビルの間など、電波が届かない場所や安定しない地域でもシステムを使い続けられて業務を妨げないこと。例えばオフライン環境では一時的に端末にデータを保存し、ネットワークにつながったタイミングでサーバーに送信できる
  • プッシュ通知:アプリを閉じていても通知が届くこと。システムを使う業務担当者へのワークフローにおける通知や緊急連絡ができる
  • セキュリティ:パスワードの代わりに生体認証や専用ハードウエアによる認証を使って、システムへのログインができること

この先は有料会員の登録が必要です。有料会員(月額プラン)は登録月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら