[インタビュー]
利点多いが副作用も、ローコードツールの活用に欠かせない自社戦略
2020年3月9日(月)田口 潤(IT Leaders編集部)
デジタル化を進めるうえで重要になるのが、必要なアプリケーションをどう調達するかだ。適切なパッケージソフトウェアやSaaSが存在しない業務や処理は当然あるので、すべてのニーズを満たせない。そうした出来合いのソリューションに付きまとう”帯に短し襷に長し”を避け、変化に対応していくには何らかの開発が必要である。そこで注目されるのが、ローコード(Low code)と呼ばれるアプリケーションツール/プラットフォーム(LCAP)だ。LCAPの最新事情を、この分野を長年ウォッチする米ガートナーのジェーソン・ウォン氏に聞いた。
C言語やJavaなどの汎用プログラミング言語でアプリケーションを開発・実行するには、相当の専門知識や経験を要求される。それらの文法や定番の記述パターンを理解した程度ではまったく不十分。プログラムを記述し、ビルドし、テスト・デプロイするための様々なツールを使いこなせる必要がある。ライブラリやミドルウェア、OSの知識も必須になる。セキュリティやコンプライアンスにも配慮しなければならない。それがITエンジニアなどプロの仕事であるゆえんだ。
これに対して、ITに関する高度な知識や経験がなくてもアプリケーションを開発・実行できることを謳うツールやソリューションもある。業務がデータの入力、蓄積、出力、集計などの集合であることを生かして、扱うデータ項目とそれらの関係やプロセスの順番を定義していくだけで業務アプリケーションを開発・実行できるものが、その典型だ。
日本で知られるものを挙げると、Wagby、Web Performer、OutSystems、GeneXus、Sapiens、Mendix、ユニケージといったところだろう。ほかにも画面上にボタンや罫線などの部品を配置していくだけでユーザーインタフェースや帳票を作成できるものがある。ここ数年、一気に拡がったRPAも、例外はあるが画面操作だけでソフトウェアロボットの挙動を作成できる点で、その1つと言えるかもしれない。
拡大画像表示
こうしたツールは、日本では超高速開発ツールやノンプログラミングツールなどと呼ばれるが、欧米ではローコード(Low code)/ノーコード(No code)ツールというジャンルが確立しつつある。開発期間を短縮するだけでなく、むしろ保守性や運用性を高めることに着目して変化対応力を高める発想だが、ではローコード/ノーコードのツールとはどう定義されるのか。どんなツールが、どんなユーザーに受け入れられているのか? 米ガートナーでアプリケーション設計/開発分野をウォッチするチームのバイスプレジデント兼アナリスト、ジェーソン・ウォン(Jason Wong)氏に聞いた(写真1)。
――まずローコードツール、ガートナーはローコードアプリケーションプラットフォーム(LCAP)と呼んでいますが、それらは何が違うのか、定義を教えて下さい。
その前に、さまざまな技術の成熟状況を示す当社のテクノロジーハイプサイクルをご存じですよね? 横軸に黎明期、過度な期待のピーク期、幻滅期、啓蒙活動期、安定期という時間、縦軸に期待度をとったものです。実はローコードツールやLCAPはこれに載っていません(図1)。ローコードは必ずしも新しくないからです。抽象化開発や4GL(第4世代言語)、RAD(高速アプリケーション開発)など呼び方はさまざまですが、何10年も前からありました。
拡大画像表示
具体例を挙げると、Lotus Domino、FileMaker、PowerBuilderといったツールです。ここから推察できると思いますが、ローコードは「設計と実装の間にある乖離を最小化するための、ビジュアルあるいは高度に抽象化されたプログラミングの手段や言語」を意味します。これに対して、C言語やJavaのような相対的に低水準の言語は相当の学習を必要としますし、加えてDBMSの設定や実行環境の整備も必要です。
増加する一方のアプリケーション需要に応えるローコード
――つまり昔からある4GLやRAD、ビジュアル開発やモデル主導開発といった開発ツールが、今日では総称としてローコードツールと呼ばれるようになったと。
大まかに言えばそうです。ローコードのハイプサイクルは存在しませんが、あえて当てはめるとRADがブームになった数10年前に「過度な期待のピーク期」を向かえました。できることは少なくなかったのですが、開発に焦点を当てていてデリバリーの面で限界があり、やがて「幻滅期」に入りました。現在はそれを過ぎて「啓蒙活動期」です。
そうなった背景は2つあります。1つはプラットフォームの進化、具体的にはクラウドです。クラウドネイティブのローコードツールが登場し、より簡単にアプリケーションを開発し、実行できるようになりました。そうでないRADツールも、クラウドをターゲットにして機能やアーキテクチャを進化させています。
もう一つはビジネス部門のニーズです。20年前ほど前からIT部門に依頼せずに自分たちでSaaSを利用するようになりました。SaaSではサーバーを用意する必要も運用する必要もありませんから、ビジネス部門でも、かなりのことができます。クラウドベースのローコードツールはその延長線上にあり、クラウド経由でかつ従量課金で使えるので、SaaSと同じようにビジネス部門による採用が進んでいます。
このようなビジネス部門主体のITに関する状況を我々が調査したところ、IT予算の34%をビジネス部門が使っていることが分かりました。ここで「アプリケーションのピラミッド」という図2を見てください。下からワークグループ、部門、企業全体、取引先や顧客を含めた企業全体というレイヤーになっていて、下の方がアプリケーションの数が多く、上になると数こそ多くありませんが、複雑で規模も大きくなる傾向にあります。
拡大画像表示
ローコードのツールは、これまでピラミッドの下の方にあるワークグループからデパートメンタル(部門)の一部までを主にカバーしていました。ビジネス部門からすれば「自分たちでも開発できるし、早い」というわけですね。しかし今日ではIT部門も関心を持つようになり、エンタープライズアプリケーションにも使われています。こうしてローコードツールの用途が拡大しているのが今日の状況です。もちろん1つのツールですべてをカバーできるわけではなく、異なるツールを利用する前提での話です。
――ローコードツールにはそれだけの利点があり、今後も普及は加速すると?
そうですが、利点(good)も問題点(bad)もあります。利点の1つは、求められるスキルレベルが下がっていることです。ITエンジニアやITの専門家ではない、いわゆるシチズンディベロッパー(市民開発者)と呼ばれる人たちがアプリケーションを開発・実行できます。オフィスアプリケーションなどを使いこなせるだけでなく、開発もできるとなると人材としての価値は高まります。
例えば、セールスフォース・ドットコム(Salesforce.com)は「Trailhead」という学習環境を提供しています。誰でもアカウントを作って学ぶことができ、認定を受ければ履歴書などに反映してキャリアアップに繋げられるのです。このことはITの専門家、例えば基幹系を担当してきたIT技術者でも同じでしょう。JavaやPythonを学ばなくてもWebアプリケーションを開発・実行できますし、生産性も上げられますからね。
利点の2番目は機能が多く(Multifunction)、多様な用途に使えることです。Web/モバイルのアプリケーションやユーザーインタフェースだけでなく、ビジネスプロセスの自動化にも使えます。いわゆるCRUD(Create, Read, Update, Delete)の処理を簡単に記述できるので、用途は意外に広いわけです。その際、セキュリティやデータガバナンス、規制対応のコンプライアンスといったことを、それほど気にかけなくていいのも利点でしょう。すべてではありませんが、ローコードツールが面倒を見ますので。
アジャイル型の開発もできます。アプリケーションを作って動かし、良くなければ上流(設計)に戻る。よければそのまま稼働させるという、シフトレフト、シフトライトの両方をサポートしますし、実行状況のモニタリングもできます。そうしたことから何年かかってもできなかったアプリケーションを数ヵ月で実装できた例もありますし、グループのレベルから全社レベルまでさまざまな用途に対応できます。
●Next:ローコード最大の問題とは?
会員登録(無料)が必要です
- 1
- 2
- 3
- 次へ >