SAYA160312530I9A3621_TP_V

個人でインターネットにアクセスするための機器として、一昔前はパソコンが全盛でした。しかし、今やスマホ(スマートフォン)やタブレットの方が圧倒的に多く使われるようになっています。スマホやタブレットは、機器が小型で持ち運びに優れており、どこでも気軽に使えるからです。

一方、会社の仕事で使う業務システムの端末(システムを操作するためのコンピューター)の場合、現在はまだパソコンが多いと思われます。しかし近い将来、これらの端末もスマホやタブレットに置き換わっていくかもしれません。そのような場合、システム設計において何が変わるのでしょうか。

ここでは、業務システムの端末をパソコンからスマホやタブレットへ移行しようというときに考慮しなければならない点についてお話ししていきます。ここで述べる内容を理解することにより、パソコン/スマホ/タブレットといった異なる性質を持つ機器を使う場合におけるシステム設計手法について学ぶことができます。

操作方法の違いに応じてアプリを設計する

パソコン/スマホ/タブレットは、基本的な操作方法が異なります。そこで、業務システムのアプリ設計においても操作方法の違いを考慮する必要があります。

パソコンは、入力装置として「マウス」と「キーボード」が基本となります。マウスは、ポインタ(入力位置を示す矢印)の位置を細かく制御することができます。また、クリックの方式も「シングルクリック」「ダブルクリック」「右クリック」(Windowsの場合)などのように多様な方法があります。また、キーボードは短文/長文の両方の入力に適しています。

一方、スマホ/タブレットはタッチパネルでの操作が基本です。タッチパネルでの操作は、シングルクリックに相当する「タップ」(タッチパネルを軽く押してすぐ離す)と「スワイプ」(タッチパネルに触れたまま上下左右になぞる)を多く使います。

そして、文字入力を行うときは画面にソフトウェアキーボードを表示させます。そのため、その分画面表示に使える領域が狭くなります。狭い領域でも入力する文字や関連する情報が見られるように画面を設計しなければなりません。

もし、パソコン用のアプリで1つの画面に細かく多くの情報を表示していたり、多くの入力部分を設けていたりすると、そのままではスマホ/タブレットのような装置で使いにくいです。そのため、1つの画面を複数に分割したり情報入力の部分は候補の数を減らして入力しやすくしたりします。

すなわち、スマホやタブレットでの画面設計では「1つの画面に表示する情報を絞り、多くの情報を詰め込まない」ことが基本となります。

なお、スマホ/タブレットは長い文章を入力したり(報告書作成など)、高精細モニターに多くの図形や画像を並べて表示したり(CADや医用診断画像の表示装置など)する用途に向きません。したがって、このようなパソコンのアプリがすぐさまスマホやタブレットに置き換わることはなさそうです。

しかしパソコン用のアプリであっても、マウスやキーボードの代わりとなる入力装置にもっと着目していくべきでしょう。具体的には、「音声入力」「バーコード入力」「手書き入力」「写真撮影」といったスマホやタブレットが持つ簡便な入力機能です。パソコン用の業務アプリでも、今後はこのような入力装置との連携が当たり前になってくるかもしれません。

ネットワーク通信方式の違いに応じてアプリを設計する

パソコンの時代は、「イーサネット」と呼ばれる「有線方式のLAN(ローカルエリアネットワーク、企業内など中小規模のネットワークのこと)」が主流でした。しかし、スマホやタブレットでは「無線LAN」が前提となります。

有線LANでの機能設計では、基本的に「サーバーとの接続が一時的に切れる」ことを考える必要がありませんでした。有線LANの信頼性がそれだけ高かったからです。そのため、プログラム開発では「一度サーバーに接続したら、後で通信を行うときにも接続状態が維持される」ことを前提としていました。

ところが、無線LANでは一度通信相手と接続したとしてもその後の接続状態が不安定です。通信処理でエラーを起こしたり、断続的に接続が切れたりすることがしょっちゅうあります。そのため、アプリの設計では「サーバーとの接続が切れたら、再度接続しに行く」「接続に失敗しても再試行(リトライ)を行う」といった処理を加えるようにします。

このように、パソコンとスマホ/タブレットには操作方法やネットワーク通信方式の違いがあり、アプリの設計手法も変わってきます。その一報で、多くのパソコン用のアプリはマウスとキーボードと有線LANを使う前提で作られていました。

そのため、それらのアプリをそのままスマホやタブレットで使うには問題があります。それぞれの機器の特徴を生かせるようなアプリ設計を行うようにしましょう。