ローコード(Low-code)とは
ローコード(Low-code)とは、プログラムコードをほとんど使用せずに、アプリなどの開発を行う手法のことである。一般的に、アプリケーションやソフトウェアを開発する際はソースコードを書いて開発する方法が主流だが、ローコード開発では、コンピュータの画面に表示されるGUI(グラフィカル・ユーザー・インターフェース)を使用して操作する。従来のプログラムコードを用いる開発に比べハードルが低いだけでなく、短期間でアプリの開発ができる。そのため、ローコードによる開発は高速開発や超高速開発とも呼ばれている。
ローコード開発プラットフォームには完成された機能がパーツとして用意されており、これらのパーツを画面上でドラッグ&ドロップしながら組み合わせて開発していく。既に部品として機能が用意されているため、機能の拡張も簡単に行うことができる。
ローコード開発が注目される背景
近年、様々な業種・業界で、DX(デジタルトランスフォーメーション)を推し進め、デジタル化できるツールを開発・導入している企業が増えている。企業がDX化に対する課題を解決していくためには、変化するビジネス環境に対して迅速な対応が必要となってくる。こうした中、アプリの開発や変更もスピーディーさが求められ、ローコード開発のニーズが伸びている。
また、DX化によってビジネス環境の変革が急速に進む一方で、エンジニアなどのIT人材を確保することも難しくなっている。ローコードは、プログラムコードの技術を持つ技術者でなくてもシステムの開発や構築を行うことができるため、IT人材不足を解消し、今後もDXを加速させる効果が期待されている。
こうした背景により、ローコードは世界的にトレンドとして注目され、ローコード開発ができるソリューションが数多く提供されている。
ローコード開発のメリット
ローコードを使い開発を行うことで、大きく4つの点でメリットが挙げられる。
- ユーザ主体の開発ができる
- 開発コストの削減が期待できる
- 生産性の向上が図れる
- 今までIT化できなかった分野に適用できる
ユーザ主体の開発
ローコード開発は実装が容易で、ユーザ自身が自由にアプリをカスタマイズしてシステムの開発をすることが可能となる。従来通りソースコードを用いてゼロからプログラミングを行うよりも、現場の問題やニーズを共有している当事者による作成が可能である。そのため、結果としてより付加価値の高いアプリ開発をすることができる。IT人材の不足により開発を外部へ委託していたようなケースでも、ローコードの手法を採用することで、現場のユーザ自身が主体となった開発を行えるようになる。そのため、ローコードプラットフォームは、ユーザ向けの開発ツールと言える。変化の激しいビジネスにおいても、ローコードであれば迅速にシステムの作成・変更・管理ができるため、組織内や顧客からの相談や細かい要望に合わせ、柔軟に運用できることも大きな魅力である。
また、ローコードプラットフォームを利用して、各ユーザが主体となった開発を行うことで、従来の開発に携わっていたエンジニアはより難易度の高い開発に注力することができるようになる。幅広い分野でのデジタル化が求められる中、ローコード開発によって時代に合わせた新しいビジネスモデルが形成でき、DXを加速させることができる。
開発コスト削減
ローコードは、ローコードプラットフォームを用いて開発を行う。ローコードプラットフォームはさまざまな種類が提供されているが、基本的に複雑なコーディングが不要となるため、専門的なプログラミング言語の知識がない人でもアプリ開発ができる。このことにより、技術開発チームだけでなく、プログラミングの経験のない部門のメンバーがアプリ開発を行える。つまり、アプリ開発を目的とした専門の開発者を雇ったり、開発時に新たに言語を学習する機会を設ける必要がないため、フルスクラッチの開発に比べ開発コストが削減できる。
生産性向上
従来のプログラミング言語を用いた開発では、打ち合わせにより検討を重ね、要件を定義し、設計を進めるといった工程に何時間もかかり、開発者にとっても負担が大きかった。一方、ローコードによって開発を行うことで、これらの工程にかかる時間を大幅に削減でき、短期間で開発を行うことができる。開発者はより重要度の高いプロジェクトにも注力でき、生産性の向上が期待できる。大規模なシステム開発でもローコード開発プラットフォームを利用することで、工数の大幅な削減ができる。また、専門のアプリ開発のスキルがない人でも簡単に扱えるため、開発者の負担を軽減し、少ない期間でより多くのシステム開発を実現することができる。さらに、プログラムの修正も簡単に行えるため、スピードを求められる競争の激しいビジネスにおいて、常にアプリケーションの品質を維持し、最適な状態に保つ対応が可能となる。
IT化できなかった分野への適用
金銭的・時間的にコストがかかっていたアプリ開発も、ローコード開発によって低コストで実現でき、より企業内のIT化を推進できる。コスト面から困難とされてきた事業分野のIT化に着手しやすくなり、デジタル化の加速、DX化の推進に向けてより良い効果が期待できる。
ローコード開発のデメリット
ローコードを用いるうえで注意すべき点やデメリットが3つある。
- 開発の自由度が限定的
- 開発技術者は設計・分析の知識が必要
- プラットフォーム側からのみのセキュリティ対策
開発の自由度が限定的
ローコードの開発は、専用のプラットフォームで行われる。必要であればプラットフォーム上にプログラムコードを記述してカスタマイズしていく。しかし、一般的なスクラッチ開発の仕様と比較するとデザインや機能の拡張性は低く、多くの制約に縛られるため、開発の自由度は限られる。基本のプラットフォームにない機能をコーディングで追加できるものの、複雑なものは導入が難しい。つまり、製作したいアプリを希望通りに実現できない場合がある。
開発技術者は設計・分析の知識が必要
ローコードプラットフォームに実装されていない領域の開発が必要となる場合は、既存のプログラミングの知識も必要となる。ローコード開発によってプログラミング作業を短縮できるが、その代わり設計部分に比重が置かれることもある。そのため、ローコード開発であっても開発技術者には、業務プロセスの設計・分析の知識が必要となる。
プラットフォーム側からのみのセキュリティ対策
ローコードで開発したアプリのセキュリティは、稼働するプラットフォームの環境に準ずる。そのため、アプリにオリジナルのセキュリティ対策を施すことはできない。もし仮に、ローコードプラットフォーム側のセキュリティ対策に問題があった場合、情報の漏洩やシステムダウンなどのリスクが高まり、深刻な影響が及ぶ危険性がある。
ローコードとノーコードとの違い
ローコードと似たものに、ノーコードがある。ノーコードは、2020年にGoogleがノーコードの会社を買収したニュースも話題になり、現在世界的に注目され需要が高まっている技術のひとつである。どちらも、プログラミングにかかるコストを抑え、DX(デジタルトランスフォーメーション)を推進させるプラットフォームという点では同じだが、1点違いがある。それは、プログラムコードを記述する程度である。
ノーコードは、プログラムの記述が「一切不要」であるのに対し、ローコードは、プログラムの記述が「必要最小限」である。これが2つの最大の違いである。
ノーコードは、プログラミング言語を全く書かずに開発ができ、ノンプログラミングとも言われる。ノーコードでは、プラットフォーム内のツールを積み木のように組み合わせて行う形のものが多く、GUI(画面操作)のみで直感的に操作が可能である。そのため、初心者でも利用が簡単である。しかし、すでに作成されている規格の範囲内で開発を行うため、大規模なシステムには不向きである。また、求めている機能がそのノーコードプラットフォームで使えるのかを事前によく確認する必要があり、ツールの選定に時間がかかるといわれている。
これに対し、ローコードは若干のプログラミングを用いて開発を進めることができる。プログラミングの知識や理解はある程度あれば利用ができる上、ノーコードに比べ開発の自由度が高くなるというメリットがある。そのため、他のシステムと連携させたり、複雑な処理が必要な場合に機能を追加したりなど、よりユーザの要望に沿ったアプリ開発を実現することができる。
OSSのローコードプラットフォーム
最近では、オープンソースソフトウェアのローコードプラットフォームも注目を集めている。オープンソースソフトウェアは、オンプレミス環境に構築することができるため、自社に専用のローコードプラットフォームを構築することが可能である。また、オープンソースソフトウェアは、ライセンス料が不要のため、比較的安価にシステムを導入することができる。ローコードプラットフォームを使うことで、自動化が進み業務の効率化を促進することができる。以下では、3つのおすすめのOSSを紹介する。なお、より詳細な特徴やポイントについては、以下の記事でもまとめて解説している。
「ローコード開発プラットフォームとは?おすすめOSS比較3選」へ
Pleasanter
Pleasanterは、オープンソースソフトウェアのローコードプラットフォームであり、画面操作だけでデータベース型の業務アプリケーションを開発できるツールである。日本の企業である株式会社インプリムにより開発された日本製のOSSである。
Pleasanterは、組織・グループ・ユーザ単位のアクセス権限設定、API(Application Programming Interface)を利用し、様々な業務を集約・連携できる。柔軟性に富んでおり、自由にカスタマイズすることが可能なため、幅広い業務で活用することができる。また、多くのテンプレートが用意されており、Pleasanterを使うことで顧客管理や案件管理、問い合わせ管理など、今までExcelで作成していた資料をWeb化することができる。例えば、Excelを用いたデータ管理では、複数人で同じファイルの更新を同時に行うとデータの登録作業に待ち時間が発生してしまうことがある。Pleasanterを導入することで、データの同時更新が可能になり、業務効率を向上することができる。
なお、Pleasanterのバージョン1.3より最新のもので追加されたプロセス機能により、ワークフローのような状態遷移をともなうアプリをローコードで開発することができる。フローが一方的であったり、承認ステップが比較的少ない仕組みであれば簡単に作成することが可能である。
Pleasanterには、商用ライセンスの下で提供されるエンタープライズ版とAGPLのライセンスで提供されるコミュニティ版(OSS版)が存在する。どちらも機能的には大きな差はないが、コミュニティ版では扱える項目数が26項目までに限定されている。それに対して、エンタープライズ版は最大900項目までを扱うことができる。
iPLAss
iPLAssとは、ライセンスで提供されている、javaベースのローコード開発プラットフォームである。iPLAssの特徴として、簡易的なベースの業務アプリケーションはノーコードでの開発が可能であるが、標準でできない機能はJavaまたはGroovyでコーディングを行う必要があり、ノーコードとコーディングを組み合わせて開発することができる。iPLAssは、オープンソース無償版「iPLAss」と有償版「iPLAss Enterprise Edition」のエディションが提供されている。またiPLAssは、スマホ向けのWebAPIの開発やデータ集計機能、ワークフロー機能などがあるためBaaSとして利用できる。iPLAssは、ノーコード開発とコーディングでの開発を組み合わせることができるため、技術者の生産性を高め、短期間でアプリ開発ができるローコード開発ツールとして採用されている。
Open Lowcode
Open Lowcodeとは、GUIベースではなく、ソースコードベースのローコード開発環境である。Open Lowcodeを使用すると、タスク管理やワークフロー管理等のアプリケーションを迅速に作成し、コスト削減を行うことができる。特徴として、空白のシートに必要なものを定義する工程から作成するため、より柔軟に要望に合わせたアプリケーションが設計できる。誰でも簡単に作成できるわけではなく、知識のある技術者でなければ利用が難しいという課題はあるが、自社専用に自由にカスタマイズしたアプリケーションを作成することが可能である。
デージーネットの取り組み
デージーネットでは、OSSのローコード開発ツール・ローコードプラットフォームについて調査し、「ローコード開発ツール比較調査報告書」に調査内容をまとめている。調査報告書は無料でダウンロードが可能である。
また、デージーネットはOSSのローコードプラットフォームのベンダーとして、お客様へPleasanterを提案している。デージーネットは、Pleasanterの認定パートナーとなっており、Pleasanterの販売/提案、教育、導入/開発、サポートなどの技術サポートを提供している。その他、独自の運用マニュアルの作成など、必要に応じた技術サービスをお客様へ提供している。
デージーネットでは、PleasanterのOSS版の調査・検証を行い、インストール方法や基礎の使い方をPleasanter調査報告書として掲載している。Pleasanter調査報告書は無料でダウンロードが可能である。
デージーネットでシステムの構築をした場合は、Open Smart Assistanceという保守サービスに加入することができる。これは、ソフトウェア単体のサポートではなく、Linuxなどを含む全体に対するサポートを受けることができる。サポート内容としてQ&A、セキュリティ情報提供、障害調査、障害回避を実行している。
【Webセミナー】Rocket.Chatだけじゃない!OSSビジネスチャットの最新情報
日程: | 12月19日(木)Webセミナー「BigBlueButton」を使用します。 |
内容: | Rocket.Chatの機能制限でお困りの方も必見!ライセンスフリーで利用できるOSSのビジネスチャットを紹介します。 |
ご興味のあるかたはぜひご参加ください。 |