ノーコード開発とは?デメリットから考えてメリットを整理しよう
目次
序章
ノーコード開発はプログラミング経験がなくても、企業でシステム開発ができるという声を最近よく聞きます。プログラミング言語がわからなくても、複雑なコードを書かなくても、本当に誰でも簡単にアプリケーションを作れるのでしょうか?そこで、まずノーコード開発のデメリットから考えていきながら、メリットを整理していきたいと思います。ノーコード開発とローコード開発の違い、できることやできないこともご紹介いたします。
ノーコード開発ツールとは? わかりやすく解説
ノーコード開発とは、ソースコードを記述することなく、視覚的な操作で業務アプリケーションやWebサービスを開発する手法です。ドラッグ&ドロップやアイコン操作で画面を構築し、必要に応じて設定画面で機能を組み合わせていくことで、従来の開発よりも短期間でシステム構築ができます。
企業の業務システムでノーコード開発を行う場合、製品として販売・サポートされているノーコード開発ツールを利用するケースが多いでしょう。業務システム向けの代表的なノーコード開発ツールにはKintone(キントーン)やyappli(ヤプリ)等が挙げられます。ノーコード開発ツール7製品を詳しくご紹介した内容は下記記事をご覧ください。本記事を最後まで読んでノーコード開発を理解した後、下記記事をご覧いただくのがおすすめです。
ローコード開発とノーコード開発の違いとは?
一方でローコード開発という手法もあります。ローコード開発とノーコード開発の違いとは、どのようなものなのでしょうか? ローコード開発ツールも開発者がコードを書かなくても、ノンプログラミングで画面操作からアプリケーションやシステムを開発できる部分は、ノーコード開発に似ています。
違いは、ローコード開発ツールでは、ツールの提供するカスタマイズ箇所でデータベースへのクエリー、表示データを加工する演算式、画面のHTMLやJavaScriptなどソースコードを記述できる点です。ノーコード開発ではツールで作成した画面機能をそのまま利用しますが、ローコード開発なら、自社の業務に合わせて少量のソースコードを追加することで、機能をカスタマイズできます。
また、ノーコード開発では、プログラミングの知識のない人を想定しているため、様々な人が開発に参加できます。ローコード開発では、若干のプログラミング知識が要求されますが、最小限のソースコードで済むため、経験の浅いIT技術者や、非IT部門の人でもAccessやVBAなどEUCツールでのプログラミング経験があれば開発に参加できます。
まとめると、ノーコード開発は自社の様々な人材でシステムを開発できますが、業務の多くをツールの仕様に合わせる必要があると言えます。一方、ローコード開発では、ソースコードによるカスタマイズを駆使することで、自社のプログラミング経験者だけで必要なシステムを実現できる可能性があると言えるでしょう。
ちなみに製品によっては、ノーコード開発ツールはローコード開発の機能を含んでいて、ローコード開発機能は上位機能のような位置づけ、と伝えている製品もあります。しかし、ノーコード開発機能のみのツールが劣っているわけではなく、企業の要望や要件によってはノーコード開発ツールが適切なケースもあります。
そこで、ノーコード開発のデメリットを考え、次にメリットを整理していきながら、企業のみなさまにノーコード開発とローコード開発のどちらが合っているのか見ていきましょう。
ノーコード開発のデメリット
まずは良い部分ではなく、悪い部分と言えるノーコード開発のデメリットから整理していきましょう。まず先にデメリットを把握することで、要望するシステムに適用可能か判断できます。ノーコード開発のデメリットには、以下のような内容が挙げられます。
機能の制限
ノーコード開発ツールは、ツールの提供する機能を組み合わせてシステムを作っていきます。したがって、自社固有の要件や複雑なロジックには対応できない場合があります。
UIデザインの自由度
また、画面の見た目、ボタン操作などのUIデザインも、ツールが自動生成する画面から大きく変更することは難しいでしょう。自社で使用する業務システムであれば、ノーコード開発ツールで生成される画面のデザインをそのまま利用できますが、取引先企業や一般消費者など顧客向けの画面の場合、そのまま利用できないケースがあります。
導入時のスキル習得
有償の製品であれば、ノーコード開発ツールを提供するベンダーから導入時にベストプラクティスのアドバイスを受けたり、運用を開始した後もトラブルシュートのサポートを受けることができるでしょう。しかし、ノーコード開発ツールを使いこなすためには、自社で機能を把握したり、操作方法や運用方法を学んだりする必要があります。
ベンダーロックイン
ノーコード開発ツールで開発したシステムの実行には、その製品ベンダーのツールに依存した環境が必要になります。また、設計情報からソースコードを自動生成するタイプの製品では、その製品の開発ツールを使わずにソースコードをメンテナンスすることは難しいでしょう。
これらのデメリットからノーコード開発の課題を以下に整理します。
【ノーコード開発の課題】
- 機能やUIデザインに制限があるので、ノーコード開発ツールでできることを把握しておく
- 導入後の操作・運用に備えて製品のトレーニングを受講するなど、自社人材がノーコード開発ツールに習熟するためのプログラムを計画しておく
- ベンダーロックインされることを認識し、導入実績が豊富だったり、継続的な機能改善が実施されているなど、存続性が高いと思われる製品を選択する。また代替プランを検討しておく
逆に考えれば、これらの課題がクリアできるなら、ノーコード開発ツールを選んでよいとも言えます。では次に、ノーコード開発のメリットをご紹介していきます。
ノーコード開発のメリットを考えてみよう
ノーコード開発のメリットは数多くあります。
システム開発期間の短縮ができる
ソースコードの記述が不要なため、従来の開発手法よりも短期間でシステムを構築できます。「コードを書かない」という作業は納期短縮に貢献します。
非IT人材でも開発可能
プログラミング経験がない人でも、システム開発に携わることができます。企業の情報システム部門のメンバーだけでなく、業務部門のメンバーでも開発が可能です。
コストが削減できる
開発期間が短縮でき、業務部門のメンバーで開発できるということは、人件費や外部委託費を削減できます。
開発プロジェクトを迅速化できる
自社の人材が、自らのアイデアを素早く形にすることができ、試行錯誤しながらプロトタイピングを進めていくことができます。結果として、自社の業務やビジネスニーズに合ったシステムを設計できます。また、システムのローンチ後も、自社人材が保守を行うことで、業務やビジネスの変化に迅速に対応できると言えるでしょう。
ノーコード開発にはこのようなメリットがあります。デメリットを容認でき、メリットの恩恵を最大限受けられるのであれば、ぜひ、ノーコード開発でシステム開発をすることをおすすめします。
しかし、システム開発には簡単に見えて、簡単ではない要望や要件が出てきます。例えば、ノーコード開発で作った画面に対して、少しJavaScriptを追加して画面レイアウトのある部分を開閉・スクロールさせたい。しかし、使用しているノーコード開発ツールではそんな設定項目は見当たらず、実現できない、といったこともあるでしょう。このような「できないこと」が出てきた場合は、ローコード開発の出番です。
事業企画者が押さえておくべき
ローコード開発のメリットと成功事例
できないことはローコード開発プラットフォームでやってみる
ローコード開発に対応する製品の多くは、ローコード開発プラットフォーム(LCDP、Low-Code Development Platformの略)と呼ばれ、開発ツールに加えて実行環境や運用をサポートする機能を提供しています。ソースコードを記述することで、ノーコードで作った機能をカスタマイズできます。
しかし、ローコード開発プラットフォームだからと言って、ノーコード開発のデメリットをすべて払拭できるわけではありません。ノーコード開発ツールと同じように‘できないこと’は存在します。それは、ノーコードで作った機能のカスタマイズが、ローコード開発プラットフォームが提供するカスタマイズ箇所に制限されることです。
このような制限を受けずに開発したい場合は、自由にプログラミングできるプロコード開発が最適です。しかし、一般的なローコード開発プラットフォームは、ノンプログラミングもしくは製品の想定するカスタマイズ箇所でのソースコードを想定しています。自由なプログラミングはできません。
やはり、ノーコード開発ツールもローコード開発プラットフォームも、持っている機能で実現できるシステムを開発するしかないのでしょうか?
そこで、企業のみなさまに、制限なく自由に開発できるローコード開発プラットフォームをご紹介します。それは、電通総研が開発・販売をしているiPLAss(アイプラス)です。
iPLAssはローコード開発プラットフォームであるため、ノーコード開発とローコード開発の双方の機能を装備しています。そして、ローコード開発で‘できないこと’は、プロコードで開発し、企業のみなさまが要望するシステム開発が実現できます。
iPLAssではJavaでプロコード開発を行うことで、自由に業務ロジックをカスタマイズできます。そして、ノーコード開発とローコード開発した部分と組み合わせて、システムを完成させていきます。
つまり、ノーコード開発とローコード開発のメリットを活かし、開発コストと開発期間を抑えながら、デメリットであった機能・仕様の制約はプロコード開発で対応するのです。また、iPLAssはJavaで出来ているため、実行する環境を選びません。クラウド、オンプレミスどこでも実行可能です。設計情報もデータとして管理され、XMLで保存可能です。OSS版も公開されており、ベンダーロックインの影響を受けにくいローコード製品と言えるでしょう。企業のみなさまも安心してiPLAssを採択できるのではないでしょうか?
まとめ
「ノーコード開発とは? デメリットから考えてメリットを整理しよう」と題して、ご紹介してまいりました。ノーコード開発とローコード開発の違い、ノーコード開発のメリット、デメリットがご理解いただけたでしょうか?
従来は、複雑な機能の開発はプログラミング言語を習得した開発者がソースコードを記述する必要がありました。ノーコード開発は、プログラミング経験がなくても直感的に操作できるため、誰でもシステム開発に携わることができます。そして、開発の専門知識がなくとも短時間で、コストを抑えたシステム開発が実現できます。ノーコード開発はそれだけ、メリットの多い開発手法だと言えます。
企業のみなさまの業務や事業に関する要望や要件が実現できるなら、迷わずノーコード開発を選ぶべきだと思います。そして、ノーコード開発でできないことは、ローコード開発でやってみましょう。さらにローコード開発でできないことは、プロコード開発にも対応したローコード開発プラットフォーム「iPLAss」を詳しく調べてみてはいかがでしょうか?
当サイトでは、ノーコード開発ツールやローコード開発プラットフォームを利用し、業務システムの開発を効率化したいエンジニアの方や、会員サイト構築などの新規事業の目的を達成したい方へ、ダウンロード資料をご用意しております。ぜひ資料をご活用ください。