ノーコード開発 【no-code development】
一般的なソフトウェア開発では、仕様や設計を元にプログラミング言語を用いてソースコードを記述するコーディング過程が多くの時間と工数を占め、コードの記述によってソフトウェアの振る舞いのほとんどが決定される。
ノーコード開発では、図形や画像などのグラフィックによる表示・操作を行うGUI(Graphical User Interface)ツールを使い、画面上でシンボルを配置したり繋ぎ合わせたりしてプログラムの挙動を決めていく。表示画面の設計も実際に画面に表示要素を配置してデザインする。
ノーコード開発はプログラミングなどに習熟していない従業員などでも行うことが可能で、設計工程やテスト工程の一部も統合できるため、業務現場のニーズに即して迅速に低コストで特定目的・用途のソフトウェアを開発・導入できる利点がある。
ただし、多くのツールは「ノーコード開発プラットフォーム」(NCDP:No-Code Development Platform)として開発環境と実行環境が統合されており、特定の製品やメーカーへ依存したシステム構造(ベンダーロックイン)となる。原則としてツール側に用意された機能を組み合わせてソフトウェアを構成するため、用意されていない機能を追加したり細かな挙動を作り込むことは難しい。
また、コード記述が不要と言っても適切なデータ構造や処理パターンの設計などには一定のスキルやノウハウが必要なほか、全社的なデータ基盤やシステム基盤、共通システムの整備などが行われないまま部署単位で独自にローコード開発を進めると、却って全体最適や効率化が阻害される危険(サイロ化/シャドーIT化)もある。
ローコード開発との違い
ほぼ同様の手法で、ソフトウェア開発の大半をツールの操作によって済ませることができるが、一部にプログラムコードの記述を加えることができる(あるいはコード記述が必要となる)手法を「ローコード開発」(low-code development)という。ノーコードよりも実現できる機能の幅が広がるが、基礎的なプログラミング技能が要求される。