しばらく「生命を捉えなおす」から考えるというシリーズで書いてきたが、一旦ちょっと休んで別の話題で書いてみようと思う。業務システムの実装ということについて考えてみたい。これまでは要件定義に従ってプログラミングをして作り上げるケースが多かったが徐々にできあがった業務アプリケーションが出てきて、一部はわざわざコードを書かないでもよいということが起こってきた。
このことはすごくよいことで、何がよいかというともちろんプログラミング工程がはぶけるということもあるが、大きいのはシステムの品質が確保されていることだと思う。つまり、製作時のテストも入念にできるし、多くのユーザーに使われることでバグ出しなどの不具合の修正が終わっているから安心して使える。スクラッチで開発したものは、時間に追われることもありテストや手戻りで大変である。
ですから、究極には業務システムをそうした個別アプリを組み合わせて、あるいは機能付加して組み上げて作れるとうれしいのだ。ノンプログラミング開発であるが、プログラミングの自動生成ではなく、むしろプログレスシステム構築と言った方がよい。開発という意味合いより構築である。DevelopmentではなくConstruction とかAssemblingという感じである。
この流れの行き先は業務アプリケーションの家電化だと思うのですがいかがでしょうか。ただし、単純なデバイス的な意味だけではなく幅広くとらえています。例えば、家電というのは、快適な家庭生活を送るために必要に応じて、あるいは経済的な事情も加味して買っていくわけです。そして何よりも自分たちのライフスタイルにあったものを選択していきます。
その時、自分たちのライフスタイルを、そして使いたい家電をコンサルタントを頼んで設計するでしょうか。それと同じように企業経営、事業運営も自分たちで決めてその結果としてのビジネススタイルを実現するための電化製品を買うという風にならないのかと言っているわけです。
ですから、ビジネスにおける洗濯機、掃除機、テレビ、冷蔵庫は何なのかを考えてみたいのです。家具とかインテリアとは違う家電なのです。ある特定の活動を助けてくれるものを家電と呼んでいるのです。例えば、汚れたものを洗うという洗濯機に相当するのがクレーム処理アプリであったりする。
家電化と言っていることで大事なことは何かというと、使える道具、使われる道具から選択するということがある。つまり、家庭で買う家電は使ってみたら不具合があったとか、想像していたものと違ったということはほとんどないから、ムダな費用が発生しない、だいたい期待通りの効果があげられる。
では、今の業務システムはどうなのかと考えると、多くのシステム開発における成果物が実運用にさらされた時に使えないあるいは使ってもらえないという結果になっているという報告がなされている。それは、家庭でいえば、家の中のゴミを取ってくれる道具を作ってくださいと頼んで、何ヶ月か経って掃除機という装置が届いたが、使ってみたら大きなゴミはいいが小さいゴミがとれなかったといったような話なのである。
家庭の世界ではそんなことはあり得ないわけで、企業とか業務システムの世界でも家電のように出来合いのものをさっと持ってきて、取扱説明書もろくに読まなくてもコンセントに差し込む(ダウンロード)とすぐに使えるようになってほしいと思うのである。
クラウドのめざすところはそこではないかと思うのである。そのとき忘れてはいけないのはユーザに使ってもらえるものを作ってそれをクラウドに置いておくということで、従来のようにシステム屋がはいこんなものを作りましたよではダメなので、そこの発想を転換しなくてはいけないのだ。
