ハイパーオートメーションとITのモダナイゼーションの需要は高まっていますが、現在は開発者の人材が限られているため、企業はこれらのトレンドに追いつくのに苦労しています。多くのITプロジェクトは、専門的な技術スキルを持つ参考情報が不足しているため、「保留」ファイルに追いやられています。その結果、業務上の非効率性が次に進むし、市場投入までの時間-企業が競争力を維持するための重要な要素-が損なわれています。
これらの課題に対処するために、ローコードおよびノーコード・ソフトウェア開発ソリューション(ibm.com外部へのリンク)が、従来の開発プロセスに代わる実行可能で便利な代替手段として登場しました。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
ローコードは、ドラッグ・アンド・ドロップやプルダウン・メニュー・インターフェースなどの視覚的なビルディング・ブロックを通じて自動コード生成を可能にする迅速なアプリケーション開発(RAD)アプローチです。このオートメーションにより、ローコードユーザーはプログラミングの共通項ではなく、差別化要因に集中することができます。ローコード手法は、自動生成されたコードの上にユーザーがコードを追加することができるため、マニュアル・コーディングとノーコードの中間的なバランスの取れたものです。
ローコード開発に適したアプリケーションの例としては、ビジネス・プロセス管理プラットフォームや、Webサイトやモバイル・アプリケーションの開発、評価管理ソフトウェアのような部門横断的なツール、外部プラグインとの統合、クラウドベースの次世代テクノロジーである機械学習ライブラリー、ロボティック・プロセス・オートメーション、レガシー・アプリのモダナイゼーションなどがあります。
Jamil Spain氏はローコードとノーコードに関するいくつかの素晴らしいビデオを持っており、そのテーマをより深く掘り下げるために利用できます。
ノーコード手法はRADアプローチでもあり、多くの場合、モジュラー・プラグ・アンド・プレイのローコード開発アプローチのサブセットとして扱われます。ローコードでは、スクリプティングやマニュアル・コーディングという形で開発者が手を貸すこともありますが、ノーコードでは、ビジュアル・ツールに100%依存した、完全にハンズオフのアプローチがあります。
ノーコード開発に適したアプリケーションの例には、ビジネス・ユーザー向けのセルフサービス・アプリや、ダッシュボード、モバイルおよびWebアプリ、コンテンツ管理プラットフォーム、データ・パイプライン・ビルダーなどがあります。ノーコード手法は、素早くビルドできるスタンドアロン・アプリであり、わかりやすいUIを備えたシンプルなオートメーションに最適です。カレンダー・プランニング・ツール、施設管理ツール、設定可能なカラムやフィルターを備えたBIレポーティング・アプリで使用されています。
ローコード・アプリケーション・プラットフォーム(LCAP)は、ローコード開発プラットフォーム(LCDP)とも呼ばれ、API、コード・テンプレート、再利用可能なプラグイン・モジュール、グラフィカル・コネクターなどの機能が組み込まれた統合開発環境(IDE)を含み、アプリケーション開発プロセスのかなりの部分を自動化します。LCAPは通常、クラウドベースのサービス型プラットフォーム(PaaS)ソリューションとして利用できます。
ローコード・プラットフォームは、ユーザーがビジュアル・ツールを使用してワークフロー、ビジネス・ルール、ユーザー・インターフェースなどを定義するプロセス・モデリングなどのビジュアルツールや手法を使用することで複雑さを軽減するという原則に基づいて機能します。舞台裏では、完全なワークフローが自動的にコードに変換されます。LCAPは、主にプロの開発者によって使用され、コーディングの汎用的な部分を自動化し、開発の最終段階で作業をリダイレクトするために使用されます。
このようなオートメーションのプラットフォームの例としては、ローコード・アプリケーション・プラットフォーム、インテリジェント・ビジネス・プロセス管理スイート、市民開発プラットフォーム、その他のRADツールなどがあります。
ノーコード開発プラットフォーム(NCDP)は、シチズン・オートメーション・アンド・デベロップメント・プラットフォーム(CADP)とも呼ばれることもあります。このプラットフォームでは、すべてのコードはドラッグ・アンド・ドロップやポイント・アンド・クリックのインターフェースを通じて生成されます。NCDPは、プロの開発者と一般の開発者(技術者以外のユーザーまたはコーディング・スキルが限られているまたはまったくない非開発者)の両方によって使用されます。
ローコードもノーコードも、視覚的なインターフェースとあらかじめ設定されたテンプレートを使用することで、コーディングの複雑な側面を抽象化することを目的としている点で似ています。どちらの開発プラットフォームもPaaSソリューションとして利用でき、データの論理的な進行を定義するワークフローベースの設計を採用しています。共通のアプローチにより、多くのメリットを共有しています。
ローコードとノーコードのプラットフォーム・ベンダーが紛らわしいポジショニングをとっていることもあり、両者のソリューションには微妙な主要な機能の違いがあるにもかかわらず、この2つのアプローチには多くの重複点があります。しかし、考慮すべき重要な違いがあります。
ローコードはプロの開発者を対象としており、基本的なコードの複製を避け、イノベーションと主要な機能セットの豊かさにつながる、より複雑な側面からの開発のためのスペースを作ることを目的としています。コーディングの標準的な側面を自動化し、構文にとらわれないアプローチを採用することで、開発者の再スキルアップと人材プールの拡大を可能にします。
一方、ノーコードは、膨大なドメイン知識を持ち、多少技術に詳しくても手作業でコードを書く能力に欠けるビジネスユーザーを対象としています。また、ビジネス・ユーザーとソフトウェア開発者、中小企業の経営者と人事、財務、法務などの非ITチームとのハイブリッド・チームにも適しています。
ノーコード手法は、ドラッグ・アンド・ドロップ・インターフェースで迅速に設計できるフロントエンド・アプリに適しています。ソースからデータを取得し、データをレポート、分析、インポート、エクスポートするUIアプリが良い候補となります。
また、ノーコード手法は、ビジネスチームが使用するExcelベースのレポートのような単調な管理作業を置き換えるのに理想的です。このようなプロジェクトは、IT部門によって優先順位付けされるのが容易ではありませんが、ビジネス・チームにとっては命を救う可能性があります。また、広範囲にわたる機能を必要としない社内アプリや、開発予算の少ない小規模なビジネスアプリにも適しています。
網羅的なコンポーネント・ライブラリを備えたローコード手法は、重量級のビジネス・ロジックを持つアプリケーションに拡張でき、エンタープライズ・レベルまで拡張できます。また、アプリと外部APIと統合し、複数のデータ・ソースに接続し、ITのレンズが必要なセキュリティー保護策を備えたシステムを構築するには、ノーコードよりもローコードの方が良い選択肢となります。
ローコードでは、カスタマイズの機会が増えるため、オンボーディング、開発、デプロイにより多くのトレーニングと時間を必要とします。それでも、従来の開発に比べてかなり高速です。
ノーコード手法は高度に構成可能であり、すべてプラグ・アンド・プレイであるため、ローコードに比べて構築にかかる時間が短くなります。手作業によるコーディングで通常発生する潜在的なエラーのリスクが最小限に抑えられるため、テスト時間も短縮されます。ここで重要なのは、構成とデータフローが正しく設定されているかどうかです。
ローコード手法は、ユーザーがコードによって機能を拡張できるオープンなシステムです。つまり、柔軟性と再利用性が高まります。例えば、ユーザーはユースケースに合わせてカスタム・プラグインやデータ・ソース・コネクターを作成し、後で再利用することができます。しかし、LCAPの新しいアップグレードやパッチは、手動で導入したコードでテストする必要があることは注目に値します。
ノーコードは、テンプレート化された主要な機能セットを通じてのみ拡張できる、よりクローズドなシステムを指します。これは、ユースケースが制限され、定型的なプラグインや統合へのアクセスが制限されることを意味するが、NCDPの将来のバージョンを破壊する可能性のある手動で書かれたコードがないため、後方互換性を確保するのが容易です。
これはローコード・プラットフォームでもノーコード・プラットフォームでも懸念されることですが、シャドーITのリスクはITチームの介入がほとんど必要ないノーコードの方が高くなります。これにより、並列のインフラが厳密に監視されず、セキュリティーの脆弱性や技術的負債を抱えることになりかねません。
ただし、ローコードが依然としてITチームの下にあるという事実は、ガバナンスと管理の向上に役立ちます。
ローコードは、拡張性とクロスプラットフォーム互換性のサポートにおいて、ノーコードよりも優れています。カスタム・プラグインやカスタム・コードを追加することで、より幅広い実装や複数のプラットフォームでの動作の可能性が広がります。
ノーコード手法は拡張性が低く、レガシー・システムへの接続や他のプラットフォームとの統合の可能性が限られています。そのため、狭いユースケースにしか対応できず、拡張性も低くなります。
ローコードにもノーコードにもそれぞれの強みがあります。両者の共通点から、この決断は簡単ではありません。最善の方法は、現在の要件を評価し、それに応じて選択することです。
ユーザーのニーズを判断するための質問をいくつか紹介します。
ここで重要となるのが、何のためのアプリケーションで、構築するのは誰かという2つの問題です。どちらも重要な質問ですが、ユーザー中心のアプローチよりもゴール中心のアプローチ、つまり「誰が」よりも「何を」の方が重要です。
ユースケースが複雑で、他のオンプレミスやクラウド・アプリとの統合が必要な場合、顧客向けやビジネスクリティカルな要件がある場合、企業全体にデプロイする必要がある場合は、ローコードが望ましい選択肢となります。この場合、ユーザーがプログラミング言語に関する必要な専門知識を持っていなくても、ITチームとの提携やトレーニングプログラムによって課題を解決することができます。
IBMと連携することで、ローコードおよびノーコードのインテリジェントなオートメーション機能を利用できるようになり、ITに依存することなく、専門家がプロセスを自動化できるようになります。
ノーコード・ソリューション。
ローコード・ソリューショ。
Javaアプリケーションを開発および配信するためのフルマネージドのシングルテナント・サービス。
DevOpsソフトウェアとツールを使用して、複数のデバイスや環境でクラウドネイティブ・アプリケーションを構築、デプロイ、管理します。
クラウド・アプリケーション開発は、一度構築すれば、迅速に反復し、どこにでもデプロイできます。