Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
なんかよく聞かれるのです。この質問。当然と言えば当然と言えます。
私が一番最初に答えるのはアプリの特性によるのでたった一つの方法は無いということです。特に 「Windows XP で今動作しているものをどうすればいいの?」というところまで来ると「Windows 7ではテストはやってみたのですか?」とまず実行環境の推移に対応できているのかを聞くところから始めるしかないです。
私は管理職なのでWindows Formがどうだ、SilverlightがどうとかWPFがどうというもっと技術的に突っ込んだ話は他のエバに任せるとして、ここでの焦点はアプローチの話にします。
〇一番猛烈に工数を使えない状況、ハードウェアだけ入れ替えてアプリは数年先延ばしをせざるを得ない状況なら皆さんはどうしますか?
実は Windows Vista や Windows 7 のころにも同じ話があったのですが、もうここはインフラに任せましょう。Windows 8 以降はついにVirtual PC系ではなくサーバー系で他社製品と競業しながら育ってきたHyper-V系の仮想環境が搭載されています。Windows Server のものほど多彩な、例えばネットワーク周りの機能は持っていないけれども全く同じ型のものが搭載されている安定感は捨てがたいです。どうしようもないのであれば私はこれを提案します。Windows 8 の仮想環境でXPをそのまま動かす。しかし、将来の XP 環境のセキュリティ面の心配はこれでは解消できないのであくまでも一時的な対処としてであり、セキュリティ面の検討は必要です。
〇さて、業務アプリの刷新もできる状況ならどう考えましょうか?
これまでのWindowsで動いている業務アプリを皆さんは思い描いてください。とにかく多機能、メニューいっぱい、場合によってはメインフレームのメニューみたいな状況のものもあるでしょうね。私がコンサルならどうするか。ここはかなり私流にはなりますが、こう考えます。まずは現状分析。お客様が今のシステムのどこが気に入っていてどこが気に入らないのか調べませんか?さらにメニューがいっぱいあるのだとしたらその中のどの機能が客観的に利用率が低いのか調べませんか?
結構 普通に移行工数を計算する時に今のものをそのまま掛け算して計算してしまいがちで、そういう例をいっぱい見てきました。でも。。。使っていないものは要らないんです。あるいはもっと他のユーザーエクスペリエンスを提供しないと使ってくれないんです。
だから私はWindows 8 のアプリはどう考えればいいの?と聞かれた時にはユーザーに何か付加価値を提供する提案の中でWindows 8をフル活用すべきと答えます。それはタッチインターフェースを活かしたモバイル利用かもしれない、8.1 では新しい周辺機器との連携かもしれない。とにかくいきなり「移行」というマインドからはいったん自由にならないといけないということです。一方でそのまま動かしたいアプリはデスクトップで動かす、その検証のみを考えればいい。
営業職の生産性を向上するための新しいITを提案し、そこでストアアプリでモバイルな時にタッチ操作で利用できる機能を用意し、会社に戻ってやるキーボード操作やマウス操作のがっつりしたものはデスクトップアプリをあらためて作ってもいいでしょう。でもこの背景には実は営業職の人の入力率が実は低いとか色々な解決すべき課題が潜んでいてそれを解決するために行うというロジックを提案する人は考えないといけません。
とにかく、タブレットの世界においてはスーパー多機能、メニューてんこ盛り、これだけは止めましょう。Windows 8 のストアアプリはそれぞれが単機能、これが望ましいです。メニューはOSのスタートスクリーンのグループに任せましょう。もしどうしてもそのUIがユーザーがどうしても欲しいと言っているのであればデスクトップで今まで通りにしましょう。しかし、利用されていない機能まで実装する愚は止めましょう。
〇Windows ストアの登場による業務アプリへの変化
最近 お客様とよくこの辺のディスカッションもしています。私もこの業種に20年以上居るわけで、その途上で色々なソフトウェアの配布とか展開の手法を見てきましたし、そういうものが現場で幾多と利用されているのも知っています。特に機能の更新を配布することがあまりにも苦悩を産むためにサーバーサイドロジックで実装しておくとそもそもしなくてよい、その発想でサーバーサイドからWebの仕掛けでブラウザーを利用する方法論がとても使われているのでしょう。
これからの業務システムはユーザーのエクスペリエンス、利用者の生産性や利用モチベーションを上げるものになっている必要がやはりあると考えています。業務ができればいいというのは特に多種多様なデバイスが登場している現在、そして携帯電話が生まれた時からある層がどんどん社会人になっている状況においてはやはりITが人を幸せにしていないと思うんです。
Webアプリかネイティブアプリか。この疑問はこれまたケースバイケースというのでここでは逃げておきますが 、iOS や Android でも動作パフォーマンスや HTML5 の限界を超えたことをやりたい、そういうエクスペリエンスをユーザーが要望しているのでネイティブアプリを作っているケースは皆さんの周りでも多々増えてきているでしょう。Windows でも同じです。
ではネイティブなアプリを作ることになった、ではやっぱり昔に戻ってソフトウェアの更新がネックになるのではないか。確かに。でもそこで Windows ストアを使うという発想があるかもしれません。システムの利用者層にも依りますが、完全に同一の社内ネットワーク上での利用なら社内のアプリストアページを作ってしかも運用管理のソフトウェアに更新を配布させる方法もあるでしょう。一方でインターネット上にある Windows ストアを使うケースってどんな感じ?というとインターネット越しでアプリを利用する環境で、それこそ一法人で収まっていないようなものなんかはそうなるでしょう。
あるいはサーバーやクラウドのサービスにアクセスするタイプの横展開できるソリューションを売っている方々はうまく Windows ストアを使うといいでしょう。キーなり、コードなり 何かしら課金を制御するのをアプリで実装してしまえばむしろ Windows ストアが宣伝をやってくれる新たなメディア媒体と考えることもできます。今までは製品のWebページを作って、そこに広告やSEOを仕掛けるモデルだったでしょうけど、この辺が状況変わっているのをうまく利用してしまえとお薦めしたいわけです。
*
こういうネタの PV が高かったらこういうのももっと書きますのでおっしゃってくださいね。