エヌ・ドット・ジェーピー

  • line

kintoneの運用ポイント。フィールドをまとめる?分ける?メリットとデメリット。

アプリ設計の際のフィールド設計の悩みを考える

アプリの設計(レコードの設計)のありがちな悩みとして「フィールドをどこまで細分化するか」ということがあります。
フィールドを細分化しておけば多角的なデータ分析が可能になります。ですがあまりに細かくしすぎるとデータの集計作業が煩雑になってしまいます。
フィールドを分けた際のメリット・デメリットを、最も身近な名前、姓と名で考えてみます。

姓と名を分けない

フィールドを分けない

「名前」としてフィールドを用意します。
入力する立場としては、フィールドが一つしかないので入力場所・内容が明快です。フィールドの数が少ないので、入力画面もシンプルで直感的です。
管理者側としては、姓と名の文字列を連結して「名前」として処理する後工程が不要です。
これらはメリットといえそうです。

では1フィールドで表現されているデメリットを考えてみます。
大きな問題は、姓と名に分割して処理したくなった場合に、分割する際の明快なアルゴリズムがないことです。
「山田太郎」さんを分割する際、「山 田太郎」さんなのか「山田太 郎」さんなのか判別できず、コンピュータで一律に判断させるのは難しそうです。1、2件であれば人の目で判別することはできるでしょうが、件数が多くなるとそれも難しくなってきます。さらに「金田一太郎」さんのような場合は「きんだいち たろう」さんなのか「かねだ いちたろう」さんなのかもはや人間にも判別できません。

姓と名を運用で吸収する方法を考えてみます。
姓と名の間を半角スペースで区切って入力するようルール付けすれば、半角スペースの前後で姓と名で分割できそうです。
ただ、入力するのが人間である以上、入力ミスが発生します。ルール自体は徹底されていて、入力者も認識できていたとしても、間違って全角スペースにしてしまった、急いでいたのでスペースを入れるのを忘れてしまった、という事象は避けることはできないでしょう。

メリット
・入力する際は1フィールドの入力で済むので比較的ユーザーフレンドリー
・レコード内のフィールド数が減る
・分ける場合と比較して、1フィールドで「名前」が完結してるためその後の文字列処理が不要

デメリット
・姓と名を間違いなく判別するアルゴリズムがない
・姓と名を分ける運用を徹底する必要がある
・表記揺れが発生した場合の対応が煩雑

姓と名でフィールドを分ける

フィールドを分ける

姓と名でそれぞれフィールドを用意します。
フィールドが独立して存在しているため、何を入力すればいいのか明快です。フィールドを分けない場合との比較論ですが、運用ルールも不要で表記揺れの存在も意識する必要がありません。姓名を合成した「名前」が必要になった場合は「自動計算」で文字列連結すれば問題ありません。
「もう独立してフィールドを用意すればいいじゃん」と感じますがはたしてそうでしょうか。

アプリを設計する際には「入力するのは誰か」を常に意識する必要があります。
想定される入力者のITリテラシーが高いのであれば、フィールドを分ける運用で問題ないでしょう。これが高齢者や視覚的弱者向けの申請フォームのようなものを想定した場合、姓と名のフィールドが独立していることの入力者の負担に問題がないか、今一度検討する必要があるかもしれません。今回のサンプルは単純化して2フィールドしかありませんが、実際にはさらに入力項目が並んでいくことになります。
また、kintoneの機能ですが、自動計算はレコードを編集モードで開かないと再計算されません。csvのアップロードやAPI経由でデータ更新・レコード生成を行った場合、自動計算のフィールドは古いままになってしまいます。これは非常に危険です。

メリット
・姓と名がフィールドで分かれているため明確
・分けない場合と比較して、運用上のルール作成が不要
・分けない場合と比較して、表記揺れの対応が不要

デメリット
・入力項目が増えるため、入力コストが増える
・姓と名を合成する処理が必要

どちらがよいのか

並べて比較してみると一長一短ありそうです。
どのようなレコード・フィールド設計にするかは、運用フロー、想定される利用者、蓄積されたデータの活用方法に強く影響されます。場合によっては「アプリの設計に合わせて運用フローを見直す」必要もあります。
アプリを設計する際には「既存のフローをアプリに落とし込む」だけではなく、運用フロー全体を俯瞰して考えてみましょう。

アプリの設計を運用方法も含めてお手伝いします

ゴートップでは、アプリの設計・作成だけでなく、その後の運用やそのお手伝いを視野に入れた手厚いサポートを提供します。
現在の業務に課題を抱えている方は是非ゴートップにお問い合わせください。

詳しくは当社kintoneソリューションサービスのページをご覧ください。



さまざまな方や企業の多様なニーズにお応えする「エスコートン」サービスの提供を開始しました。
お悩みに合わせた3つのサービスメニューをご用意しました。

エスコートン

  • line

お問い合わせ

お気軽にお電話ください。

0120-98-0016