ノーコード/ローコード/プロコードの違いとできること

#ローコード開発
公開日:2024年03月27日(水)

序章

昨今、企業がクラウドやAIといったデジタル技術を駆使して新たなビジネスの創出に取り組む中、注目されている開発手法としてノーコード、ローコードがあります。ノーコードは、専用の開発ツールを用いて設計情報を入力することでプログラミングのスキルがない人でもシステム開発を可能とする手法です。ローコードは、ノーコードで作成した機能に最小限のソースコードを適用することで、機能のカスタマイズを行う手法です。

これらと対比される手法としてプロコードがあります。プロの開発者がソースコードを書いて開発を行うもので、複雑なソフトウェアの開発に適していますが、ノーコード、ローコードと比べると手戻りに弱く開発に時間もかかります。

ノーコード、ローコードではどんなことに気を付ければよいのでしょうか?今後、プロコードは求められなくなるのでしょうか?本記事では、それぞれの特徴・使いどころを解説していきます。

ノーコードとは?

ノーコードとはプログラムのソースコードを書かなくても、専用の開発ツールに設計情報を入力することで、アプリケーションを開発する手法です。たとえば、ブラウザからデータベースの項目を定義したり、データの表示レイアウトを入力するだけで、そのデータベースを参照したり、データの登録・更新操作を行う画面をノーコードツールが自動生成してくれます。プログラム言語の知識は一切必要ありません。ドロップダウンリストの選択入力やドラッグ&ドロップで開発を進めることができます。

ノーコードは、現場主導で業務改革に取り組む際に、有益な開発手法となります。なぜなら、業務を熟知したユーザ自身で開発ができますし、出来上がりの画面を確認しながら仕様を検討できるからです。

難点は、開発できる機能がノーコード開発ツールの提供機能に制限されることです。独自性の高い業務ロジックを含む機能の開発には不向きですが、業務改革や新規ビジネス創出のようなあらかじめ正解が見えずトライ&エラーを繰り返して開発する状況では見逃せない手法です。あまりコストをかけず、ユーザ主導でシステム開発を行う場合には、まずノーコードで実現できないか検討してみるのが良いでしょう。

事業企画者が押さえておくべき
ローコード開発のメリットと成功事例

プロコードとは?

プロコードとはプロの開発者が、プログラム言語を用いてスクラッチで開発する手法です。最も柔軟性の高い開発手法ですが、人の手でソースコードを書く分、他の手法と比べて開発期間が長く、費用もかかります。

また、ソースコードの量が増えるほど、潜在的なバグの数も多くなります。そのため、大抵のアプリケーションで必要とされる機能や生産性を高めるための機能(認証・認可機能、データベース接続やロールバック処理、画面をテンプレート化する機能など)が実装されたプログラムをベースにして、開発対象のアプリケーション固有の要件を実装するプログラムを追加開発していくことが一般的です。

作るソースコードの量を最小化できるので、費用対効果の高い開発を実現できます。ベースにするプログラムはフレームワークと呼ばれます。

ローコード製品では、フレームワークを提供することで生産性を高めつつ、ノーコードやローコードで作った機能を拡張しやすくしているものもあります。たとえば、ノーコード開発で作ったデータベースに対して独自クエリ言語で複雑なデータアクセスを行うソースコードを書いておくと、フレームワークがデータベースに接続してそのデータアクセス処理を行ってくれる、といった具合です。

では、こうしたローコード製品を使うとき、どんな機能をプロコードで開発すればよいのでしょうか?画面開発で先端的なUI/UXを目指していたり、プロプライエタリなシステム連携があったり、データアクセスの高速化が必要な場面では、プロコードによる開発が適切でしょう。

なぜなら、画面の見た目・挙動の細かいカスタマイズや、連携先のシステムが提供するライブラリの呼び出し、クエリのチューニングにはプログラミングが必要となるからです。

また、ローコード製品のフレームワークは大きく2種類に大別できます。ひとつは、製品独自のプログラム言語で実装されているものです。もうひとつは、Java、C#、JavaScriptなど広く使われている標準的なプログラム言語で実装されているものです。

製品独自のプログラム言語の場合、そのプログラム環境のアップデートを製品ベンダーに委ねることができますし、標準的なプログラム言語の場合は広範なプログラム資産(自社、OSSや3rdパーティ製のライブラリ)から自社の要件に合ったものを選んで再利用することができます。プロコードで機能を実現する際、最大限の拡張性を得たい場合には標準的なプログラム言語でフレームワークを提供している製品を使うと良いでしょう。

ローコードとは?

ノーコードで開発した画面の表示データに税率を掛けて表示したり、表示データをデータ件数や内容に応じて出し分けたりするなど、部分的にソースコードを適用できると便利なことがあります。このような開発手法をローコード開発といいます。ローコードの開発ツールにまず設計情報を入力し、そのうえで表計算の関数を使ったりマクロを実装したりする感覚でカスタマイズを行っていきます。ノーコードの手軽さ、プロコードの柔軟性の良いとこ取りができます。

ただし、難点があります。カスタマイズはローコード製品が提供しているカスタマイズ箇所に制限されます。このため、ローコード製品では多数のカスタマイズ箇所が用意されています。ローコード製品に対する熟練度が上がれば上がるほど、開発期間の短縮やカスタマイズできる度合いが増えていきますが、それにはローコード製品に関する学習コストも伴います。

ローコード製品を十分学習する意欲がある、または製品の有識者がいる場合には、まずローコードでシステムを実現することを検討すると良いのではないでしょうか。最も費用対効果の高い選択肢となり得ます。

ノーコード/ローコード/プロコード開発の良さをすべて使える方法

ここまで、ノーコード、プロコード、ローコードそれぞれの特徴をみてきました。なるべくノーコード製品やローコード製品の提供する機能やカスタマイズ方法だけを用いて要件を実現することで、費用対効果の高いシステム開発となります。

一方で、B to Cのアプリケーションや、B to Bのアプリケーションでも利用するユーザの数が多くなると、製品の提供機能だけでは満足してもらえないこともあるでしょう。そのようなアプリケーションでは、プロコードでの開発も検討しておきましょう。

一番理想的な開発方法は、機能に応じてノーコード、プロコード、ローコードを使い分けることです。ローコード製品には、すべての手法を組み合わせて開発できる製品があります。iPLAssはその製品のひとつです。iPLAssでは、ノーコード・ローコードで迅速にトライ&エラーを進めつつ、プロコードで複雑な要件もしっかり実現できます。iPLAssの詳しい機能はこちらのページをご覧ください。

https://itsol.dentsusoken.com/iplass/function/

    まとめ

    ノーコード、ローコード、プロコードそれぞれの開発ではカスタマイズ性とコスト・開発期間にトレードオフの関係があります。これらの開発手法の良いとこ取りが出来るよう、機能に応じて自社のシステム要件に合った手法を選ぶことが大切です。最後までお読みいただきありがとうございました。

    当サイトでは、ノーコード開発ツールやローコード開発プラットフォームを利用し、業務システムの開発を効率化したいエンジニアの方や、会員サイト構築などの新規事業の目的を達成したい方へ、ダウンロード資料をご用意しております。ぜひ資料をご覧いただき、ご活用ください。