業務アプリ内の技術を最新に置き換えるだけの作業に疲れた? これから業務アプリはどう進化させればよいのか? そんな考えに基づき、農業IT化の手法を聞いてみた。「“攻め”の業務アプリ開発」を始めるための参考にしてみよう。
powered by Insider.NET
「業務アプリ」と言われて最初に思い浮かぶのは、会計ソフトではないだろうか。「会計」という事務業務に代表される、いわゆる「ホワイトカラー」系の仕事の効率化に対し、これまでの業務アプリは大きく貢献してきた。このおかげでビジネスにより専念できるようになった会社は少なくないだろう。
このような事務作業を効率化するタイプの業務システムは、登場してからすでに何十年もたっている。私が知っている限りでもMS-DOSの時代から業務システムは存在し、現状に近い基本機能(例えばテンキー操作だけで高速な項目入力を可能にする機能など)はかなり昔に誕生している。もちろん、Windowsやクラウドの登場により業務アプリが運用されるプラットフォームが変遷したりという環境面の進化はあるが、業務アプリの中身の基本機能内容はあまり変わっていないのではないだろうか。
このことから、業務アプリが提供する「各種の業務に特化して最適化された機能」はすでに完熟しており、その機能自体が今後さらに進化していく可能性はあまり高くないと筆者は考えている。
確かに、例えば.NETのWindowsフォームがWPFに進化したり、通信技術がXML WebサービスからREST APIに進化したりと、旧技術を新技術で置き換える革新は起こり続けている。しかしながら、最終的に完成する機能内容が同じであれば、なぜ新たな学習コストやライブラリ再構築のコストを掛けてまで、新技術を採用していく必要があるのだろうか? こういった事情を反映してだろうか、特に.NET開発者の間では、新技術への移行は年々、スローペースになってきている(と筆者は感じている)。
一方で、業務アプリ開発の世界の「外」では、ハイペースで技術革新が進んでおり、例えば3Dプリンターや、センサーデバイス、ウェアラブルデバイス、(RDBではない)Key-Valueストアなど、新しいソフトウェア/ハードウェア技術が次々と登場し、注目を集めている。そして、これらの新技術がもたらすであろう「未来」に多くの人が注目し、私たちの生活や仕事を便利にしてくれることへの期待がますます大きくなってきている。
こうやって対比すると、業務アプリ開発者はレガシーな技術を扱うレガシーな開発者のように思えてしまう。しかしそれは本来の業務アプリ開発者の姿ではないはずだ。冒頭で説明したように、私たちの身の回りの現実世界を便利にしたのは、業務アプリが先だったはずだからだ。業務アプリが最初に登場したときは、業務アプリ開発者は「時代の革命児」だったはずである。ソフトウェアは今でも世界を変え続けている。それなのに、私たち業務アプリ開発者は、「従来と同じ機能を持つ業務アプリ」だけをこれから何十年も作り続けて大丈夫なのだろうか?
そこで筆者が提案したいのが、「チャレンジングな業務アプリ開発者になろう」ということである。
「業務アプリ」とは、その言葉通りに解釈するなら、
ためのシステムだといえる。従来のようなホワイトカラー業務に縛らわれずに、より広い視点で「業務」を捉え直し、「業務系のアプリ」の開発に取り組む、新たなチャレンジを今すぐに始めてみることをお勧めしたい。そのために今こそ、新しいテクノロジや技術を積極的に学び、それを未来の業務系アプリを作るためのヒントにしてみてはいかがだろうか(そういうコンセプトで、2014年3月15日に「第5回業開中心会議 『業務系アプリにおける先進技術活用/適用領域拡大の可能性』」というセミナーを開催する予定なので、興味がある方はぜひご参加いただきたい)。
本稿ではこの考え方に基づき、「IT技術による農業の高度化(=農業を賢くしていくこと)」を進める「スマートアグリカルチャー」で、どのようにIT化が実現されているのかについて、東北スマートアグリカルチャー研究会(T-SAL)の副会長である菊池 務 氏にお話を伺った(なお、以下の発言内容は筆者が要約し、筆者の理解に基づいてまとめ直しているので、ご了承いただきたい)。
今の時代は、「どういう技術が使えるか」というシーズよりも、「何ができるのか」というゴールの方が重要になってきています。そういった考え方を代表するものに「IT融合」というキーワードがあります。これは例えば「医療とIT」や、「エネルギーとIT」、「農業とIT」など、実業とITを組み合わせることで、より高い付加価値が生まれてくることを指しています。
これを実現する際、「医療とIT」や「エネルギーとIT」は全ての都市が努力すべきことなので、首都圏にある大企業が取り組んだ方が効率がよいのですが、「農業とIT」に関しては、フィールドが各地域にあるので、地域企業が積極的に参画した方が効率的です。こういう考えの下、東北地域で「農業IT」の取り組みが震災前に始まりました。しかし大震災が発生し、その後に、被災の影響を受けて農業ITに対するニーズも大きく変化してきたため(例えば塩害への細かな対応など)、「東北スマートアグリカルチャー研究会」という組織をあらためて新設することになりました。
現在の農業にはさまざまな課題があります。例えば高齢化、(農家の所得が低いため)新規営農者が増えないこと、農業手法の情報共有がないこと(一子相伝のようになっていること)、農地が飛び地になっており効率的に作業できないことなどです。このような課題を解決・軽減するために、ITを活用できます。もちろん、だからといって、オランダが推進している「植物工場」のようなIT化はコスト面で農業の収益を圧迫することになってしまい、非現実的です(植物工場は、例えばケチャップ用の一定品質のトマトを生産するなど、販売数量などが定常的に確保できるものは採算が合いやすい)。そこで私たちは、中小の農家でも導入できるような低コストのIT支援システムを作ることを目指しています(参考: 図1)。この他、震災復興への寄与、地域IT産業の独自製品化の促進も目的としています。
安価な既製デバイスの活用(ソフトウェア開発者でも使いこなせる)
大手のIT企業に発注してもシステム構築費用は安くないので、やはり農業向けITシステムは地域側で安価に実現する方が現実的です。これを後押ししてくれているのが、近年、随分と近くなってきている「ハードウェア/組み込み系デバイス」と「アプリケーション」の距離です。電子デバイスを含めたコモディティ化が進んできており、以前であれば大手企業でないと開発が難しかったセンサーデバイス類が、今では既製品を安価で、しかも手軽に購入できます。例えば通信であればBLE(Bluetooth Low Energy)モジュールやZigBeeモジュールを買ってきて、ネット上でソフトウェアの書き方を調べれば簡単に実装できるし、中にはSDKが提供されていて、しかもAndroidで標準実装されていたりするので、ソフトウェア開発の部分も比較的簡単です。
重要なのは、(ハードウェア系の人ではなく)「ソフトウェアエンジニア」がスマートアグリカルチャーのシステムを作っているということです。デバイスはコモディティ化してきているので、昔のようにオシロスコープを眺めながら、配線図を読んで組み立てるような世界ではなくなってきています。ハードウェアの基礎部分のみ実習などで理解すれば、あとは世の中で販売されているセンサーデバイスを自分で購入して、すぐにプログラミングしていくことは難しくありません。
アイデア次第で安価に効率化、クラウドも活用
オランダは日本などの先進国に植物工場を売り込んでいますが、私たちはタイやインドネシアなどに農業向けのITシステムを輸出できることを目標として、被災地でも実現できるような省エネルギーでかつ低コストのITシステム構築を行っています。例えば次の写真の左側は津波塩害地区向け、右側は原発被害地区向けのITシステムです。
左側は音声認識による塩分データの数値を読み取り、また右側は画像処理により放射線データの数値を読み取り、それぞれGPS情報と組み合わせて、クラウド上にデータをアップロードします。これにより、次の図3のようにマップ上にピンが立てられて各地の情報が一望できるようになります。
既製のネットワークカメラと、Androidデバイスによるテレビへの映像表示
この他、例えば次の写真は、イチゴ農園内に複数のネットワークカメラを設置して、自宅のテレビで農園の映像を監視できるシステムです。前述したような「飛び地」の農園では、このような監視映像システムが特に役立ちます。
このシステムの場合、一般的な農業従事者にとってPCやスマホを使うことは敷居が高いことが多いので、次の写真のように通常のテレビで監視映像を見られるようにしています。地デジが普及してHDMI接続に対応したAndroidデバイスが安価で購入できるようになっているので、このシステムではそれを使っています。
このようにして「ITシステムを活用する敷居を下げること」が、現場にITを導入する上で非常に大事です(ちなみに、この農家の人はスマホの方が便利だと気付いて、スマホを使うようになったので、このテレビへの配信システムはもう使っていませんが……)。
今回のインタビューのテーマは「スマートアグリカルチャー」だったが、その後、センサーデバイスを取り扱うことに対しての、一般的なソフトウェア開発者の反応についても聞いてみた。ネットワークカメラの講習などを実施すると、ソフトウェア開発者の反応は上々のようだ。
菊池氏は「ソフトウェア作りは、楽しくないと飽きてしまう」と話されていたが、全くその通りだと筆者も思った。自分が興味・関心が持てて、そのプログラミングを好きになれることが、ソフトウェア開発にとっては重要だろう。肩肘を張らずに、そういった、自分が「面白い」と思えるところから、開発領域を広げていくというのも1つの戦略だろう。センサーデバイス関連ではあれば、開発者数が多く、機能も充実しているKinectか、安価で手軽なLeap Motionあたりから慣れていくのがお勧めだ(センサーデバイス関連の開発情報は、登場前から話題のウェアラブルデバイス「Google Glass」なども含め、多種多様な技術者向けの情報を、筆者が編集長をしている「Build Insider」というサイトでも積極的に配信しているので、興味がある方は一度サイト内を回遊してみてほしい。今回の記事ではインタビュー内容の全てを紹介できていないが、特に映像などを扱う場面ではOpenCVなどのライブラリも活用されているとのことだ。OpenCVについてもBuild Insiderで詳しい連載が開始できる予定なので、気になる方は今後の記事展開をご期待いただきたい)。
以上、本稿の内容が、未来の「業務系のアプリの開発」を考える上で、何らかの参考になるとうれしい。業務アプリ開発者が世界を変える、そういった志を持った「“攻め”の業務アプリ開発」を業務アプリInsiderでは応援していきたい。
Copyright© Digital Advantage Corp. All Rights Reserved.