全2242文字

過去50年、日本で盛り上がっては下火になっていた「自動生成」。かたや海外ではコードを極力書かない「ローコード開発」が一般化している。このままではIT競争力に差がつくばかり。知られざるローコード開発をひもとこう。

 「最低でも1年かかるようなシステムを3カ月程度で作れるようになった」。三菱UFJ銀行の栗山英樹システム本部システム企画部IT戦略Gr次長は社内のワークフローシステムなどの開発実績をこう明かす。「Lightning Platformを使ったからこそ、この効果を引き出せた」(栗山次長)。

 Lightning Platformは米セールスフォース・ドットコムが提供する開発PaaS(プラットフォーム・アズ・ア・サービス)であり、海外で「ローコード開発プラットフォーム」と呼ばれるジャンルの製品だ。ローコード開発は2012年に日経コンピュータが提唱した「超高速開発」とほぼ同じコンセプトでもある。プログラミングしてアプリケーションを開発する「フルスクラッチ」に対し、ローコード開発はほとんどプログラミングせずに「直感的な操作」でアプリケーションを開発する。

ローコードアプリケーションプラットフォーム(LCAP)とは
宣言型の高度なプログラミング抽象化(モデル駆動型やメタデータベースのプログラミング言語など)を用いて迅速なアプリケーション開発、ワンステップのデプロイメント、実行、管理をサポートしている。ユーザーインターフェース(UI)やビジネスロジック、データサービスの開発をサポートし、従来のアプリケーションプラットフォームと比較してベンダー間での移植性を犠牲にして生産性を向上させる

 クラウド上の開発ツールに画面デザインや業務ロジック、データ構造といった設計情報を「入力」すると、ツールがアプリケーションを自動生成する仕組みである。入力といっても多くはGUIのソフト部品をマウス操作で組み合わせ、設定情報を打ち込む作業だ。

 プログラミングしないので人的エラーが混入しにくく、その分手戻りも減る。単体テストも自動実行するツールが多く、開発工程を大幅に縮める効果がある。運用もクラウド上だ。

図 米ガートナーによるローコード開発の定義と、従来のスクラッチ開発とローコード開発の違い
図 米ガートナーによるローコード開発の定義と、従来のスクラッチ開発とローコード開発の違い
プログラミングや単体テストの自動化で開発期間を短縮
[画像のクリックで拡大表示]

 コードを書かずにアプリを開発するというコンセプト自体は古くからある。40~50年前から日本では「4GL」「RAD」「CASE」などが相次ぎ提案された。ただ「使い勝手や適用範囲、処理速度、拡張性などの問題で普及しなかった」(アプリの開発や戦略に詳しいガートナージャパンの片山治利シニアディレクターアナリスト)。

 これがUX(利用者体験)技法やモデル化技法、コード最適化といったソフト技術の進化と、ハード性能の高まりから、スクラッチ開発と同等以上の品質でアプリを自動生成できるようになった。「データベース問い合わせなどの処理では、一部の熟練技術者を除けばローコード開発のほうが処理を最適化できる」。2012年から90社以上のローコード開発を支援するBlueMemeの松岡真功社長はこう指摘する。