おはようございます。本日もお読み頂きありがとうございます。
世界情勢が混沌として来ています。何がなんでも大規模な核戦争だけは避けたいですが、このままロシアの選択肢が狭まって来ると危険な領域に突入しそうです。窮鼠猫を噛む。戦いには、必ず逃げ道を用意しておく必要があります。そうしないと、暴発してしまう危険が増してきます。
さて、人類は常に進歩しており、新しい技術や目新しいサービスが目白押しです。特にITの世界では、現場のお困り事を現場で解決しましょう!とのコンセプトで「ノーコード」や「ローコード」による現場主導のシステム開発がもてはやされています。長年、ITの世界にいる私としては、『いつか来た道』だと懐かしくもあり、また、危機感を感じています。
さて、「ノーコード」「ローコード」によるシステム開発は、本当に組織にとってベストな選択なのでしょうか。少し「ノーコード」について説明します。「ノーコード」とは、プログラミング言語を使わずにシステムを構築する環境を言います。言ってみれば、エクセルシートも「ノーコード」の開発環境の一つです。その証拠に、googleが提供する「AppSeet」という「ノーコード」環境のデータ保管先は、googleのクラウド上にあるスプレッドシートを選択することもできます。つまり、「ノーコード」とは、データを保管する場所と、データを扱う人を結び付ける画面を自動作成してくれて、その裏にある処理を簡単な命令語で記述する仕組みが「ノーコード」なのです。
実は、これと似たような仕組みが、30年近く前から存在します。例えば「Access」や「DB-magic」などがそれにあたります。データを定義すれば入力画面が自動生成され、そのデータを処理する画面を後で足していくスタイルは、今の「ノーコード」の仕組みと同じです。違うのは、ローカルの仕組みか、クラウドにあるかの違いなのです。
そこで考えて頂きたいのですが、「Access」で作成されたシステムが、今、どれくらい稼働しているかです。私が若い頃、本当に沢山の「Access」に精通した人がいました。しかし、以前は高額なシステムであったにも関わらず、こぞって購入したものですが、最近は、MS-officeのおまけとして付いいるにも関わらず、それを活用しいる企業がほとんど無いように思います。決して「Access」が劣っているツールではありません。逆に、何でもできる素晴らしいシステムなのですが、基盤システムとして使用している企業はほとんどないのが現状でしょう。それはなぜなのでしょうか。
その理由は、簡単にデータベースを作る事ができるため、部署部署で勝手にさまざまなデータベースを構築した結果、データの相互関係(リレーション)がなく、単なるスプレッドシートの寄せ集めになり、全社的な業務として成立しない点にあります。この状況は、IBMの「Notes」という文書をDB化するという画期的なシステムでも同じ過ちにより市場から消えていきました。
現場でお困り事を解決するというコンセプトは、事務所にパソコンが導入されてから常に求められたものでした。そして、その機能(仕組み)は生まれては消え、消えては生まれの繰り返しです。その原因が、データとして信頼性に欠けている点であることは間違いありません。
どんなツールを使っても、結局はデータの3要素(CIA)である、機密性・完全性・可用性が備わっていなければ、システムとして機能しないという事です。これらを保証するためには、正しいDB設計と更新方法を理解する必要があります。ここを飛ばしてシステムを構築しているのが「ノーコード」のシステム開発です。「ノーコード」システムを導入したての頃は、部門だけで使用しているので、問題は顕在化しません。しかし、全社的に導入しようとすると、データの信頼性や整合性の壁に突き当たり、信頼されない仕組みとなり、放置される運命にあるのです。
私は、このような「ノーコード」の輪廻転生を何回転も見てきました。多分、今の「ノーコード」のブームは3回目くらいではないかと記憶しています。このブームも実際にシステムを稼働させて肥大化してきた後に問題が噴出し、いずれ消え去る運命だと思います。
しかし、「ノーコード」によるシステム開発が永遠にできないかと言えば、それは違います。近い将来、AIが自動的にデータの整合性や関係を理解して、適切に配置してくれるようになります。また、行いたい処理も自然言語で、『これと、これを足して平均を出して、前年同月比をグラフにして……』と話しかければ、AIが勝手に解釈してプログラムしてくれるようになるはずです。(但し、答えが違っていても、何処に問題があるのかは、人間様が指摘できなくなりますが……これが問題かも!)
だから、今「ノーコード」を使うのは、部門内の閉じた業務に限定すべきです。もっと言えば、「ノーコード」に、お金を掛けずとも、エクセルシートのVBAを使えば同じ事ができます。結局は、細かい事を行なうためには、様々な指示をシステムに与える(プログラムを組む)必要があり、完全にプログラムが不要になる訳ではないのですから。
少々長くなりましたので、本日は、これで一旦終わりにします。
終
