今さら聞けないローコード開発の基礎知識、注目される理由と環境構築:kintoneで始めるローコード開発入門(1)
ローコード開発とはどのようなものか、kintoneを題材に具体的な開発手順を解説する連載。第1回となる今回は、kintoneの特徴や主要機能の紹介とともに、ローコード開発のメリットについても触れて、理解を深めていきます。kintoneの環境取得手順やアプリの作成方法も解説します。
本連載の目的
昨今、ローコード開発ツールの注目が高まっています。これらのツールは手軽にシステム開発ができるという意味で注目されていますが、具体的な開発手順についてはよく分からない、という人も多いはずです。
そこで本連載では、グループウェアメーカーのサイボウズが2011年から提供している、著名なローコード開発ツール「kintone」(キントーン)を題材にローコード開発を取り上げます。クラウドサービスであるkintoneは、Web申し込みだけで簡単に始められ、ローコード開発への入門ツールとしても適しています。本連載を通して、このkintoneを使用した具体的なシステム開発手順について紹介していきます。
第1回では、まずローコード開発の需要が高まっている背景について理解を深めます。その上で、ローコード開発プラットフォームの一つであるkintoneの基本的な特徴を概観し、開発に着手するための準備段階までを解説します。第2回以降では、幾つかのアプリケーション(以下、アプリ)を作り、その流れを通して、個々の機能についてより詳しく見ていきます。連載後半では、開発を進める際のベストプラクティス、API(Application Program Interface)やインフラといった実践的な企業利用において重要となるポイントを取り上げます。これによって読者がローコード開発について幅広く理解し、開発現場での活用に向けた知識を網羅的に得られることを目指します。
ローコード開発とそのメリット
近年、ローコード、ノーコードといったキーワードが脚光を浴びています。皆さんも一度くらいはどこかで耳にしたことがあるかもしれませんが、あらためて、その概念とメリットをおさらいします。
ローコード(ノーコード)とは、具体的には少ないコーディング(もしくはコーディングなし)での開発手法を意味します。ローコード/ノーコード開発ツールを活用することで、専門的な技術がなくても誰でも簡単にシステム開発に携われるようになります。従来の手法と比べて開発工程が大幅に簡略化されるため、業務プロセスを素早くシステム化することも可能です。自由な作り込みがしにくいという傾向はあるものの、ビジネス環境の変化が激しい昨今の状況を思えば、ローコード/ノーコードの必要性はますます高まっているといえます。
コーディングをしない、またはその作業を最小限に抑えられることは、開発スピードを向上させるだけでなく、プログラムの作成やデバッグ作業、モバイル対応、さらには運用保守の効率化といった面でも大きなメリットをもたらします。
要件定義のない開発
ローコード開発の大きな特徴は、従来の開発プロセスとは異なるアプローチを取れる点です。極端な例を挙げると、詳細な要件定義をせずに開発を始めたり、ユーザーが作成した、操作可能なプロトタイプを基にシステムを改良したりすることが可能です。このような柔軟な開発手法によって、ローコード開発特有のさまざまなメリットを引き出すことができます。
システム開発自体のハードルを下げる
良いシステムを作るためには、技術と業務の両方を理解している必要があります。しかし多くの場合、事業部門などのビジネスサイドは技術への理解が不足しがちです(これは仕方がないことでもあります)。だからといって、リスキリングによってビジネスサイドがコーディングやシステム開発の手法を学ぶというのも現実的ではありません。
そこで、システム開発そのものの難易度を下げられるツール――ローコード開発ツールを採用するということが現実解となるわけです。多くの会議を重ね、詳細な議事録や要件定義書を作成したとしても、ドキュメントだけで適切に要件を定義するのは困難です。これは読者も共感できるところでしょう。
すぐに動きを見せられる、実際に操作して試せるものがあることで、ビジネスサイドもイメージしやすくなります。それによって要求や要件も出しやすくなりますし、業務フローとの整合性も、具体的に検証しながら開発を進めることができます。結果、出来上がったシステムが業務と合わない、使い勝手が悪く業務効率が良くない、などの問題も起こりにくくなります。支援する技術部門側もリスクヘッジのために防御線を張る必要性も少なくなり、全体コストを大きく減らすことができます。
もちろん、コーディング主体でシステムを作ることが適している領域もあります。B2C(Business to Consumer)ビジネスなどコンシューマー向けのシステムでは、ユーザーエクスペリエンスの質がビジネスの成果に大きく影響します。そのため、細部にまでこだわる必要があり、コーディングによる綿密な作り込みが不可欠となります。
一方で、企業内の業務システムに目を向けると、会計システムや販売管理、チャット、カレンダーなどの一般的なものを除いても、まだ多くの非効率な業務がシステム化されずに残っています。特に大企業では、そういった未システム化の業務が数百、場合によっては数千にも及ぶことがあります。これらの業務を効率化するために、多数のエンジニアを雇用してコーディングベースでシステム化を進めていくのは、IT人材が不足する現状では非現実的ですし、そのようなアプローチは時間とコストの面でも非効率です。エンジニアリングリソースの節約と、本当に必要なところへ投下すべきという観点からも、ローコード/ノーコード開発ツールの活用が不可欠となるわけです。現場の従業員が自ら開発できる環境を整えることで現場は迅速に業務を改善できる、エンジニアは本来取り組むべき高度な課題により注力できるようになる、これは両サイドが「Win-Win」な形といえるのではないでしょうか。
kintoneの概要
では、ここからkintoneを例に、具体的な手順を説明します。kintone内には大きく表1のような要素(パーツ)があり、これらを組み合わせることで、さまざまな業務に対応したシステムを開発できるようになっています。
パーツ | 概要 |
---|---|
データベース | 簡単操作でデータベースを作成 |
ワークフロー | ステータスやプロセスの管理機能 |
コミュニケーション | データに関するコメントや通知 |
表1 kintoneを構成する要素 |
データベース機能で業務データを登録できるようにして、タスクや案件などのステータスをワークフロー機能で管理しながら、チームで業務を進める中でのコメント/通知でのやりとりはコミュニケーション機能が担う、といった形です。なお、開発したシステムについては、自動的にモバイルアプリでスマートフォンからも利用できるようになります(これも業務やコミュニケーションの流れが促進される重要なポイントです)。
kintoneでローコード開発を始めてみよう
kintoneは製品サイトから30日間無料の「お試し環境」が利用できます。また、「5ユーザーまで」「業務利用は禁止」などの制限はありますが、12カ月無料(無料期間は更新可能)で利用できる開発環境をデベロッパーサイトから取得することも可能です。無料のお試し環境に関しては、有償プランを契約すればそのまま継続して利用することも可能です(注)。今回は30日間無料で使えるお試しの環境を取得します。
注:12カ月無料で利用できる開発環境は、あくまでも検証用です。SLA(Service Level Agreement)などはなく、通常業務での利用も禁止されています。
無料お試し環境の取得
kintoneの製品サイトからお試し環境の申し込みをします。製品サイト画面右上の[試してみる]から[無料でお試しする]を選択してください。
クレジットカードの登録などは不要で、会社名やメールアドレスなど基本情報を入力すれば数分で利用環境が作成され、ログイン情報がメールで通知されます。
図4のように、メールに記載されているURLからログインしてみましょう。お試し環境のURLは「example01.cybozu.com」のように、ユーザー固有のユニークな文字列が割り振られます。なお、サブドメイン(例ではexample01の部分)は後から変更可能です。そのURLを知っている人しかアクセスできないように、推測しにくい要素も入れて設定することをお勧めします。
ユーザーや組織、セキュリティ設定:cybozu.com共通管理
まずはアプリ開発のための準備を進めます。
(1)kintoneにログインする
URLにアクセスすると、まず自身のアカウントのログインパスワードを設定する画面が表示されます(図5)。パスワードを設定すると、自動的にログイン画面へ移動します。メールに記載されているログイン名(ID)と、設定したパスワードを入力してログインしてください。
ログインに成功すると、図7のような画面が表示されます。
左メニューの意味は以下の通りです。
- [cybozu.com共通管理]:ユーザーや組織、その他セキュリティ設定などを行うためのメニュー。権限のある管理者のみに表示される
- [kintone]:kintone上の業務アプリを開発/利用するためのリンク
(2)ユーザーを追加する
開発や検証、システムを利用するユーザーが複数いる場合は、[cybozu.com共通管理]−[組織/ユーザー]−[ユーザーの追加]とクリックして、別ユーザーを追加しましょう。
[ユーザーの追加]画面(図9)が表示されるので、表示名やID、メールアドレスを入力します。「保存」すると、対象のユーザーにログイン情報(URL、ID、パスワード)がメールで通知されます。
企業のセキュリティポリシーなどに沿う必要があれば、画面左のメニューの[セキュリティ]からパスワードポリシーやIPアドレス制限、Basic認証も設定可能なので、必要に応じて設定してください。基本的な準備が整ったら、kintoneの利用画面に進んでいきましょう。
(3)kintone利用画面にアクセスする
画面上部のヘッダにあるkintoneアイコン、もしくはログイン直後のメニューから[kintone]をクリックして、kintone利用画面にアクセスしましょう。
図10のように、kintoneのトップページには、左側は「お知らせ」や「アプリケーションからの通知」などの情報が表示され、右側には権限のあるアプリ(各種データベース)や部門ポータルなどの「スペース」(Space)が表示されます。
【補足】スペース機能について
kintoneの主要機能として、アプリ以外にスペースがあります。スペースは、部門やチーム、業務の塊ごとに作成した複数のアプリをまとめる場所を表します。
例えば、営業部門に必要な「案件管理アプリ」「顧客マスタアプリ」「値引き申請アプリ」をまとめて、営業部門メンバーがアクセスしやすいように「営業部スペース」に配置するといった使い方をします。スペースには「お知らせ」「スレッド」「公開/非公開」などのサブ機能があり、これらをうまくアプリと組み合わせて使うことで、システム全体の使い勝手も向上します。設計や開発の際には、アプリやデータに意識が行きがちですが、ユーザーがどのように使うかを考えて、スペースを活用して導線や全体構成を設計することをお勧めします。
kintoneでの3つのシステム開発方法
さて、kintoneを利用するための準備ができたところで、いよいよシステムの開発に進んでいきましょう。開発の手始めには、以下の方法があります。
- 一から作成
- テンプレートから作成(テンプレートストアあり)
- ExcelやCSVデータから作成
(1)一から作成
kintoneの機能や使い方を学ぶために効果的な方法です。一から作成といってもコーディングは必要ありません。kintoneのトップ画面で右側中央(アプリの領域)にある[+]ボタンをクリックして、[はじめから作成]を選択します。
まず設定したいのは、入力フォームと一覧(ビュー)です。
アプリの設定画面で[フォーム]タブを選択すると、図13のようなフォーム設定画面が表示されます。ドラッグ&ドロップでフィールドを配置していくことで、どのようなデータ項目をそのアプリ(テーブル)に設けるのかを定義できます。
画面左のフィールドのパーツを、右側のフォーム(キャンバス)にドラッグ&ドロップして追加していきましょう。キャンバスにドロップしたフィールドにマウスオーバーすると、フィールド名や「必須項目にする」などの設定ができます(図14)。
フォームからアプリに登録されたレコードを表示するための一覧画面も見てみましょう。一覧画面を設定するには、[一覧]タブ−[+]と選択します。
図15のような画面が表示されるので、どのフィールドをどんな順番で表示するのかをフォーム設定と同様にドラッグ&ドロップし、絞り込みとソート条件を設定します。
その他にも、[設定]タブをクリックすると、アクセス権限や通知、ワークフローなどを設定できます(図16)。
このように作成したアプリは、図17〜19の手順でアプリ設定画面右上の[アプリを公開]から公開できます(結果を見やすいように、ここではあらかじめデータを数件投入しています)。
公開したアプリに関しても、設定画面にアクセスすれば、同じようにフィールドやその他の設定変更が可能です。本番環境への反映もスピーディーなので、アプリの確認/改善を繰り返しながら開発を進められるわけです(注)。
注:[アプリを公開]または[アプリを更新]すると、即座に本番に反映されます。スピーディーな半面、慎重を要するシステムの場合は、開発用のアプリを別に用意しておくなど運用の検討が必要な場合があります。
(2)テンプレートから作成
一から作成する以外にも、テンプレートを基に、修正しながらアプリを作成する方法があります。現場が具体的にイメージしやすいものを早く用意するのに適したアプローチです。
先ほどと同じようにkintoneのトップ画面から画面右側中央のアプリの領域の[+]ボタンをクリックします。kintoneアプリストアが表示され(図21)、業務アプリのテンプレートを選んで作成することができます。
画面左の検索窓やカテゴリーから探すと、案件管理やタスク管理、プロジェクト管理などさまざまな部門や業務で利用できる数十以上のテンプレートがあります。もちろん、テンプレートから作成した場合にも、データベースの内容は自社に合わせて修正可能です。
なお、アプリストアのテンプレート以外にも、自社で作成したアプリはテンプレート化して保存可能です。これによって、他部門でも似た業務に適用する場合に、保存してあるテンプレートを基にアプリを素早く作成できます。複数のアプリをまとめてテンプレート化することも可能なので、自社内外向けのシステムパッケージを作成し、他部門、他企業への展開に活用することも可能です。
(3)ExcelやCSVデータから作成
社内にある顧客データやタスクデータなどを含む「Microsoft Excel」(以下、Excel)ファイルやCSVファイルを利用して、アプリを作成することもできます。図22のkintoneアプリストアの画面から[Excelを読み込んで作成]か[CSVを読み込んで作成]を選択します。
ダイアログに沿って、基となるExcelやCSVのデータを読み込むと、kintoneがそのデータを解析し、推奨のフィールドタイプなどを提案します。それらを適宜選択していくと、データが取り込まれた状態のアプリを作成できます。
Excelを利用した業務をシステム化する場合や、既存のシステムから新しいシステムへ移行する場合は、この方法を利用することでスピーディーにプロトタイプを作成し、開発を進めることができるでしょう。
ただし、(3)の方法には、以下のような制限もあります。
- Excelファイルからのアプリ作成:データ件数1000件以内、一度に読み込めるのは1つの表(テーブル)、列数(フィールド数500列以内)
- CSVファイルからのアプリ作成:データ件数10万件以内、列数(フィールド数500列以内)
大量のデータや複雑な構造を持つデータの場合は、(1)(2)の方法で先にアプリを作成してからデータを読み込む方法をお勧めします。
まとめ
今回は、ローコード開発の概要やメリット、kintoneの基本概念や特性などについて説明しました。お試し環境も用意し、これで本格的に開発を進める準備ができました。次回からはタスク管理アプリなどを作成する中で、kintoneを使った開発のイメージや機能をより詳しく説明していく予定です。
筆者紹介
WINGSプロジェクト 木戸裕一郎
米国で大学卒業後にサイボウズに入社し国内営業、海外ビジネス開発を経験し9年間勤務。その後ITコンサルティング会社を起業、kintoneやGoogle Maps Platform、HubSpotなどのツールを活用したシステム開発やコンサルティング業務に携わっている。
WINGSプロジェクト
有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティー(代表山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手掛ける。2021年10月時点での登録メンバーは55人で、現在も執筆メンバーを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。
・サーバーサイド技術の学び舎 - WINGS(https://wings.msn.to/)
・RSS(https://wings.msn.to/contents/rss.php)
・X: @WingsPro_info(https://x.com/WingsPro_info)
・Facebook(https://www.facebook.com/WINGSProject)
Copyright © ITmedia, Inc. All Rights Reserved.