4 つの簡単なステップでノーコード アプリのための完璧なスプレッドシートを作成
Google Cloud Japan Team
※この投稿は米国時間 2021 年 4 月 30 日に、Google Cloud blog に投稿されたものの抄訳です。
Google がアプリを作成する主な目的の一つは、さまざまな状況でアクセスできる有用かつ実用的なデータの実現です。通常、多くのエンジニアリング作業が必要となるこのタスクですが、ノーコード アプリ開発を活用すれば、コーディング経験がなくてもごくありふれたデータ リポジトリ、すなわちスプレッドシートや Google スプレッドシートからアプリを作成できます。
例えば、現場でデータを手書きで記録し、後で Google スプレッドシートに入力する従業員の作業を、アプリに入力したデータをクラウド上のスプレッド シートに自動的に同期するノーコード アプリで簡略化できます。また、スプレッドシートのメンテナンスをアプリで行うようにすれば、多くの基幹業務を大幅に効率化できます。同様に、技術者でない従業員が多くの IT リソースを必要とせずにこうしたアプリを作成できるようになれば、まったく新しい方法で多くの企業がイノベーションを加速できます。
これを実現するための手順は、スプレッド シートを準備するだけと非常にシンプルです。あとは Google Cloud の AppSheet のようなノーコード アプリ プラットフォームで用意したスプレッドシートを取り込むと生成される便利なプロトタイプを元に、アプリを完成させることができます。ただしコーディング不要とはいえ、優れたノーコード アプリを作成するには、しっかりと設計されたデータ構造が重要です。この投稿では、AppSheet を使用してアプリケーションを効果的に構築するために必要なデータソースの基本的な準備を Google スプレッドシートでご説明します。
ここから、ノーコード アプリのプロトタイピング プロセスの負担軽減、アプリの管理とメンテナンスの簡素化、効率的な処理が可能なデータ構造の作成のための 4 つのステップをご紹介します。
ステップ 1: わかりやすいテーブル レイアウトを使用する
Google スプレッドシートでレイアウトを始める前に、以下の質問について考えてみましょう。
アプリに何をさせますか?
その機能を実現するために、どのようなデータが必要ですか?
アプリのユーザーがアクセスする必要があるのはどのようなデータですか?
必要なデータを前述の質問で絞り込んだら、Google スプレッドシートの列やテーブルでそのデータをキャプチャする必要があります。列をグループ化してテーブルを作成する際は、最もシンプルに概念をグループ化する方法を考えます。例えば、食料品店向けの在庫管理アプリを作る場合、例 1 のように商品カテゴリごとに個別のテーブルを作成するスキーマでは、非常に多くのテーブルを作成し、個別の管理と更新が必要になるため非効率です。一方、例 2 ではすべての在庫アイテムを 1 つのテーブルに収め、単一の列で商品カテゴリを指定してあり、解決方法として優れています。
重要なポイント: テーブルが多すぎると、アプリの変更やメンテナンスが困難になるだけでなく、同期に時間がかかったり障害が発生したりする可能性も高まるため、テーブルをシンプルに保つことが重要です。
ステップ 2: データの名前とフォーマットはシンプルかつ一貫性を持ったものにする
列とテーブルには、短くわかりやすい名前を付け、長い名前、特殊文字を使用した名前、数字の文字列を使用した名前は避けましょう。
できれば、データソース間で列の命名およびフォーマットの規則を統一します。アプリが複数のスプレッドシートからデータを取得する場合、スプレッドシートの名前と書式を統一する必要があるためです。こうしたガイドラインに沿うことでデータが理解しやすくなり、プロトタイプ アプリが適切にデータを解釈できるようになるとともに、アプリ内で式を使用しやすくなります。
ステップ 3: 列をカテゴリに、行をエントリに使用する
AppSheet アプリに追加したデータは、新しい行としてシートに入力されます。行がエントリに、列がカテゴリ(エントリの種類)になるよう、スプレッド シートを均一に構成することが重要です。理解を深めるために、以下の 3 つの例をご覧ください。
例 1 - 反転した在庫テーブル
1 つ目は望ましい構造を反転した例です。データのヘッダーを縦一列に表示し、在庫アイテムを列として追加しています。この配置では AppSheet が新しい行を追加できず、前のセクションの「実用性に欠けるテーブル レイアウト」に近いものになります。
例 2 - 構造が分断されている在庫テーブル
2 つ目のスプレッドシートには、計算機として使用される部分が含まれています。この部分がスプレッドシートの構造を分断しているため、新しい行を追加できません。テーブルは、全体として一貫性のある構造を保ち、ヘッダー列とそれに続くデータ行のみで構成する必要があります。テーブル内に計算機のように全体の構造を分断する部分が含まれる場合は、例 3 のように分断部分を元々のテーブル構造に統合するか、別のテーブルとして独立させる必要があります。
例 3 - 計算部分を統合したテーブル
重要なポイント: 重複はデータ構造上の落とし穴であり、注意が必要です。複数のテーブルで大きなデータブロックが重複している場合、データ構造の効率性が低く、アプリの同期に余計な時間がかかっている可能性があります。
ステップ 4: キー列を追加する
テーブルには、各データ行の一意の識別子となるキー列を含める必要があります。データの種類によっては、意図しなくてもすべての行に不変かつ一意な列が含まれる場合があります。このような一意キーの好例として挙げられるのが製品の ASIN や SKU で、2 つの製品が同じ番号を持つことはありません。同様に、2 人の個人が同じものを持つことがない従業員番号やメールアドレスも良い一意キーと言えます。データにこのプロパティがない場合は、AppSheet エディタで UNIQUEID() 関数を使用してプロパティを簡単に生成できます。詳しい情報については、キーに関するヘルプ ドキュメントをご覧ください。
初めてのノーコード アプリを作成しましょう
前述のステップに沿ってデータを構造化したら、データから強力なノーコード アプリを作成する準備は完了です。まず、準備したデータを含むスプレッドシートを開き、[ツール] > [AppSheet] > [アプリを作成] の順にクリックします。AppSheet で自動的にデータを読み込み、スプレッドシートのデータをノーコード アプリに変換して、効率性を飛躍的に高めることができます。
このトピックについてさらに詳しい情報が必要な場合は、AppSheet のスプレッドシートのベスト プラクティスに関する記事とこちらのウェブセミナーをご覧ください。サンプルアプリのライブラリで、ノーコードでの開発を早速始めましょう。アプリ作成に関してご不明な点がございましたら、ヘルプ記事をご確認いただくか、AppSheet コミュニティにご質問をお寄せください。
技術に精通したクリエイターの皆様が作成した数々のアプリから大いに刺激を受けています。今後もさらなる新作を心待ちにしています。
AppSheet を使用する準備ができたらさっそく使ってみましょう。
-ソリューション コンサルタント H.J. Amaro