業務ソフトとiPhoneプラットホーム
業務ソフトプラットホームとしてみたiPhone
iPhoneが大ブームとなり、このところはiPadの新発売でも注目を集めています。iPadの日本での発売がちょっと遅くなってがっかりですが、今か今かと待ち構えている人も多いでしょう。iPhoneそしてiPod touch、iPadとシリーズ化されるまでになったこれらの製品について、本稿ではまとめてiPhoneと呼び、機種に個別な話が出てくれば機種名で示すことにします。今回の最後の方では、iPhoneとiPadの違いについても少し触れます。
iPhoneが話題に上るポイントはたくさんありますが、携帯できるデバイスなのにパソコン並みのOSが入っているという点で、画面は小さくても従来の携帯電話のような制約された環境ではなくなった点があります。結果的に、パソコンOSにはないアプリケーションまで登場するなど新しい世界を切り開きました。
特に最近では、ゲームのプラットホームとして注目が高まっていますし、iPadに至ってはよりパソコンの領域に重なるようになってきています。また、App Store登場の初期のころは、個人開発者ががっつり稼いだ実績もあったりして、「iPhoneで世界市場相手に大もうけしよう」なんてノリがありました。
もうけることが可能なフィールドである事が分かった途端に多くの人が参入しており、今となっては簡単には大もうけなんてできないくらいの市場の状態になっています。初期のころの未開拓な感じはすっかりなくなっていますが、荒野だった場所に街ができたくらいの違いが2年前と現在とではあるくらいです。
一方で地味ではありますが、iPhoneを業務システムに組み込むという動きもあります。特定ユーザーのものでもあるのであまり顕在化はしていませんが、システム開発業者の中には、iPhoneを新しい商材としてとらえている方も多く、顧客にとって魅力のある提案ができるのではないかと考えるわけです。
また、逆に顧客が「iPhoneで作ってほしい」ということを要求する場合も出始めています。iPhoneをおもちゃや遊びの道具と思っていると、こうしたムーブメントから乗り遅れてしまうでしょう。 Appleのサイトでは、そうした業務ソフト系のiPhone導入事例についても、いくつか紹介されています(http://www.apple.com/jp/iphone/business/profiles/)。
業務ソフトに必要な要件
業務ソフトの要件の一般論はなかなか難しいですが、筆者の経験からはだいたい次のような事があるのではないかと考えています。
- データベースを利用する
- 印刷を必要とする場合が比較的多い
- 汎用性よりも定義された機能を的確にこなす必要がある
- 特殊な要望を取り込む場合がよくある
- 見栄えよりも機能重視の場合がある
- 経営者や担当者といった特定の人の好みが大きく影響する
もちろん、常にすべてが成り立つというわけではありませんが、iPhone向けのApp Storeで配布するような不特定多数が使うアプリケーションを作るときとの違いとして挙げてみました。
技術的なことは最初の2項目だけで、後はどちらかと言えば、顧客対応があるという一言で済んでしまうような内容かも知れません。しかしながら、ここがiPhoneで業務ソフトをこなす場合の1つの難しいポイントになる可能性があります。
まず、技術的な点で言えば、データベースとの連動があります。具体例としては次回以降に解説をしますが、恐らく多くの場合は、iPhoneの中にデータをため込むようなことは行わず、データベース・サーバーへのアクセスが必要になります。iPhoneシリーズでは電話の有無がありますが、ワイヤレス・ネットワークは必ず使えます。
しかしながら、携帯デバイスの宿命として「一切ネットワークがつながっていない」という状況も発生します。そういう場合にどうするかというのは難しい問題ですが、接続しているときにキャッシュをするという手法が1つの解決策となります。そして、データベース処理については、サーバーは単に要求に応じてデータを送ったりリクエストを受け付けるだけにして、iPhoneでそれなりのユーザー・インタフェースを作るという方法が効率的でしょう。通信内容はXMLで処理すれば確実です。
iPhoneのアプリケーション・フレームワーク「Cocoa Touch」はかなりうまく作られている半面、ユーザー・インタフェース・ガイドラインに沿ったアプリケーションはスムーズに作れるものの、それにはずれたものはかなり作りにくくなっています。特殊なことをやる逃げ道は可能な限りふさがれたフレームワークです。
業務ソフトでは、一般論的に非常識な機能の組み込みを求められる事はよくあり、苦労して組み込むこともしょっちゅうあります。しかしながら、iPhoneで特殊な仕組みは従来の開発手法以上に困難になる可能性もあります。もちろん、App Storeに掲載しないとしたらハックで乗り越えるという手もありますが、ともかくAppleの敷いたレールからはずれるのは大変な作業が待っているという覚悟も必要でしょう。