「システムやアプリの開発には興味あるけれど、プログラミングはできないから…」という方に朗報です。
近年では、「プログラミングができなくても、プログラミングができる!?」仕組みが急速に進歩しています。
それが、今回紹介するノンコード開発です。ノンコードの概要から、失敗しないためのポイントまで、分かりやすく説明します。
ノンコード開発とは、プログラミング言語を用いたコードの記述を全くすることなく、システムやアプリケーション開発を行うことです。
ノンコード開発が注目されている背景には、IT人材不足の問題があります。
総務省によるレポートによれば、2015年時点で17万人不足していたIT人材は、2025年には43万人まで拡大する見込みです。
特に、古いプログラミング言語を知る人材の供給が困難であることが問題視されています。
ノンコード開発が普及することにより、専門的な知識を持っていない非エンジニア・非プログラマであっても、アプリケーションの開発が可能になることから、IT人材の裾野が広がり、人材不足解消の一助となることが期待されています。
ノンコードに似た言葉として、ローコードがあります。
ローコード開発は、プログラミング言語のコードの記述をほとんど行わないものの、ごく一部に限定してコードを記述する開発のことです。
コードの記述を全く行わないのがノンコード、ごく一部行うのがローコードという違いです。
ノンコードのメリットには、以下のようなものがあります。
開発時間を大幅に短縮できる
通常のプログラミングによる開発と比較して、開発時間を大幅に短縮することができます。
コードを書く時間がそのものが短縮されるのに加えて、コードを書かないがゆえにバグが発生しないというメリットもあります。
バグが発生しないゆえに、デバッグの必要がなく、開発時間はより短縮されます。
なお、デバッグとは、プログラムのバグや欠陥を発見し、修正することです。
開発コストを安価に抑えることができる
開発に費やす時間が短く、専門的な知識を持つプログラマも必要ないため、開発コストを安価に抑えることができます。
例えば、従来であれば数百万円で外注していたシステムをノンコードで開発可能になれば、コストは担当者の人件費だけ済みます。
プログラミングの専門知識が不要である
専門的な知識を持つプログラマ・エンジニアでなくても、開発することができます。
例えば、業務担当者が業務アプリケーションを自ら開発することができるため、現場の使い勝手に優れたアプリケーションを自由に開発できます。
いいことずくめと思われるノンコードですが、欠点もあります。
ノンコードのデメリットは、以下のようなものがあります。
セキュリティ対策がプラットフォームに依存する
ノンコードは、多数のユーザーが構築したアプリケーションが単一のプラットフォーム上で管理されていく仕組みです。
そのため、セキュリティに関する知見のないユーザーが、セキュリティ脆弱性のあるアプリケーションを構築することにより、企業がプラットフォーム上に構築した他のアプリケーションやデータが危険にさらされる可能性があります。
なお、プラットフォームとは、サービスなどを運営・提供するための共通の基盤のことです。
ノンコード開発では、プラットフォームが提供するセキュリティ関連サービスの範囲内でしか、セキュリティ対策を行うことができません。
大規模開発には不向きである
ノンコード開発は、業務基幹システムなど、大規模なシステム開発には向いていません。
中小規模の比較的シンプルなアプリケーションの開発に適しています。
機能拡張が限定的である
ノンコード開発では、ユーザーが自由に機能拡張することはできず、プラットフォームが提供する機能の範囲でのみ機能拡張できます。
保守が手厚くない
ノンコードプラットフォームの保守サポートは、一般的に手厚いとはいえません。
また、提供する企業の多くは、海外の企業であり、技術的な問題が生じた際に、時差の関係で対応に時間がかかる、英語での問い合わせが必要になるということも考慮する必要があります。
サービス終了の可能性がある
何らかの理由によって、ノンコードプラットフォームのサービスが停止・終了する可能性は否定できません。
サービスが停止・終了した場合、ノンコードのプラットフォーム上のシステムが一時的または永続的に利用できなくなるリスクがあります。
ノンコードには、魅力的なメリットがありますが、一方でデメリットもあります。双方を理解したうえで、上手に活用しましょう。
続いて、ノンコード開発で失敗しないためのポイントについて紹介します。
ノンコード開発では、従来は自社の情報システム部や外注業者に依頼していたシステムやアプリケーションの開発を、非プログラマー・エンジニアが担えるようになります。
そのため、セキュリティ上問題があるアプリケーションが、IT部門の知らない間に作成されている可能性が生じます。
シャドーITが生じないよう、ルールの制定や管理環境の整備を行う必要があります。シャドーITとは、企業や組織側が把握しないまま、従業員がデバイスやサービスを業務に利用することです。
ノンコード開発で実現できることは、ノンコード開発プラットフォームの機能に依存します。
よって、プログラミング言語を用いてコードを記述する従来の開発と比較して、自由度は低く、できることが限られています。
そのため、大規模開発や最先端の技術を必要とするシステム・アプリケーションの開発には向いていません。
すでに述べた通り、ノンコード開発で実現できることは、ノンコード開発プラットフォームの機能に依存します。
よって、ノンコード開発プラットフォームの選択をする際には、必要機能を網羅できるかどうか確認しておく必要があります。
続いて、ノンコード開発に向いている案件、向いていない案件について説明します。
ノンコード開発に向いているのは、以下のような案件です。
以下のような案件は、ノンコード開発に向いていないため、プログラミング言語を記述する従来の開発方法を採用すべきです。
Bubbleは、SaaSプラットフォーム、マーケットプレイス、CRMなどの幅広いアプリケーションをノンコードで開発できるプラットフォームです。
直感的に操作ができる点が特徴で、準備されたパーツを配置するだけで、アプリケーションが開発できます。
Shopifyは、ノンコードでECサイトを開発・運営できるプラットフォームです。
SNS連携、SEO対策などのECサイト向け機能を搭載しており、自社の製品を世界中に販売することができます。
シンプルかつ高機能であることが特徴です。
AppSheetは、Googleが2020年に買収した、ノンコード開発プラットフォームです。
Google Drive、DropBox、Office 365などのクラウドサービスと連携するアプリケーションを作成することができます。
Adaloは、パワーポイントのスライドを作成するような操作感で、アプリケーションを作成できるノンコード開発プラットフォームです。
ドラッグアンドドロップでパーツを配置していくことで、簡単にアプリケーションを開発できます。
Yappliは、アプリ開発・運用・分析をノンコードで実現するプラットフォームです。
国産のプラットフォームであり、経営者はヤフージャパン出身です。
450社以上で導入されている実績があります。
ノンコード開発とは、プログラミング言語を用いたコードの記述をせず、システム・アプリケーション開発を行うことです。
ノンコードは、開発時間を大幅に短縮できる、開発コストを安価に抑えることができる、プログラミングの専門知識が不要である、というようなメリットがあります。
一方で、セキュリティ対策がプラットフォームに依存する、大規模開発には不向きである、機能拡張が限定的である、保守が手厚くない、サービス終了の可能性がある、などのデメリットもあり、メリット・デメリットの双方を理解したうえで、適切な用途で活用しましょう。