勝手にブックレビュー!SEにこkin『ノーコードツールのデータ設計は超重要!』
はじめに
kintoneを使ってアプリを作るとき、「データ設計」がどれだけ重要か考えたことはありますか?
今回は、とある kintone 関連書籍を読んで感じたことについて、データ設計を中心に話していきます!
私の自己紹介
皆さんはじめまして!JCSの福島です。
今回ブログを執筆するのが初めてなので、まずは軽く自己紹介させていただきます!
普段はシステムエンジニアとして開発業務をしており、フルスクラッチ開発をメインに、8年程度の経験があります。kintoneに本格的に関わり始めたのは割と最近で、日々知識を増やしているところです。
ノーコードではなく、コードを書く開発経験を多く持つエンジニアなので、私ならではの目線で、kintoneにも活かせそうな知識や経験を皆さんに共有していきたいと思っています。
よろしくお願いします!
kintone同人誌「SEにこkin」のご紹介
最近、社内で話題になった「SEにこそ読んでほしいkintoneの技術的な話」というシリーズ書籍があり、その第1弾である「ノーコードツールのデータ設計は超重要!」を読んでみました。
kintone 同人誌 SEにこそ読んでほしいkintoneの技術的な話 『ノーコードツールのデータ設計は超重要!』
こちらの本は、kintoneでよくやってしまうデータ設計のアンチパターンや、適切な設計のためのテクニックなどが、簡潔に紹介されています。
タイトルの通り「データ設計」の重要性を再確認できる良書だと思います。
初心者にも分かりやすく、サクッと読める内容になっています。
ここからは、私が特に気になった部分を紹介していきます。
本を読んで気になった部分
マスタとトランザクションの概念
マスタデータとトランザクションデータ、この違いをきちんと理解することはデータ設計において非常に重要です。
書籍を読んで、「そういえば自分も新人の頃、この違いがピンと来ていなかったな」ということを思い出しました。
マスタとトランザクションがきちんと設計出来ていないときは、必要な正規化が行われていないことが多いです。
一朝一夕に身に付く知識ではないのでここでは詳しい説明はしませんが、知っているとkintoneのデータ設計や運用がぐっと効率的になります。
データ設計のテクニック
書籍でこんなテクニックが紹介されていました。
「テーブル定義を書いてみる」「アプリの関連図(ER 図)を作成する」 基本的なテクニックで、私もよく行います。
目に見える形にすることで、設計を俯瞰して見れたり、思考が整理されたり、同僚に見せてアドバイスを貰ったりと、なにかとメリットが多いと思います。
もう一つおすすめのことは、業務フローを整理することです。
考えていた設計を書き出してみたけど、そもそも項目が抜けてた、といったことはわりとあります。
一度業務フローを整理した上で必要なデータを整理することで、漏れを防げます。
データベースの本番運用が始まると、データを消したり項目を変更することは簡単に出来ません。
変更すると、関係するアプリやプラグインに影響を及ぼす可能性があり、その調査だけでもコストがかかってきます。
だからこそ、将来起こりうる様々なリスクを事前に避けるためにも、入念な設計が超大事!!!と思います。
kintoneでもやっぱりエンジニアの知識が重要
書籍でも触れられていますが、ノーコードツールを使うことで、開発・実装領域に掛かるコストを減らすことは出来ますが、ほかの領域(要件定義、データ設計、テスト、運用など)は通常のシステム開発と大差ありません。
kintoneもノーコードツールであるためこれを忘れてはいけません。
システム開発はとても難しく、奥が深いです。
私自身も、未だにいろんな壁にぶつかりながら学び続けています。
なので、kintoneを真に使いこなしていくには、エンジニアの知識も重要になると思います。
kintoneはRDBではない
スクラッチ開発で作るWebアプリではほとんどの場合がRDBを使うため、kintoneを触り始めてから少しして、kintoneがRDBではないと知った時の驚きは大きかったです。
ちなみに、kintoneはカード型DBという種類のデータベースとなります。
カード型DBとは、1レコードを1枚のカードに見立てて情報を保存するDBです。
なにか変更があれば新しいカードに情報を保存し、カードが積み重ねられていくイメージです。
カード型DBの特徴として、マスタデータと同期が取れない(コピーのみ)、大量データの処理が苦手といったものがあり、それはkintoneにも言えることです。
1エンジニアの私としては、こういう知識は面白く、ためになります。
バックボーンを知ることで、ツールの挙動がより納得しやすく理解が深まります…!
おわりに
タイトル通り、データ設計は超重要!
いかがでしたか?
皆さんが、この本やデータ設計に対する興味を少しでも持っていただけたならうれしいです。
そして、データ設計がうまくできる人が増えていくといいと思います。
kintoneには、エンジニアの知識が必要な場面がたくさんあります!
kintone をよりうまく使うためには、知識が必要です。
本を読んだり実務経験を積むことはもちろん大事ですが、困ったときには伴走支援サービスの利用も検討してみてください。
kintoneに限らず開発経験が豊富な私達なら、きっとお力になれると思います。
補足情報
紹介した書籍の詳細
『SEにこそ読んでほしいkintoneの技術的な話 ~ ノーコードツールのデータ設計は超重要! ~』
著者:BB
発行:きんとーん・らぼ
kintone 同人誌 SEにこそ読んでほしいkintoneの技術的な話 『ノーコードツールのデータ設計は超重要!』