📘

研究室の入退室を自動管理するアプリケーションを作成してみた<設計編>

2024/12/09に公開

私たちの研究室(Nislab)

https://nisk.doshisha.ac.jp/

アドベントカレンダー 9 日目~

https://nislab-advent-calendar-2024-12.vercel.app

背景

私たちの研究室は情報系の分野に属している。そのため、メンバーが物理的に研究室に集まることは少なく、ほとんどの作業がリモートで行われる。しかし、たまには対面で集まることもあり、その貴重な時間を最大限に活かすことが重要であると考える。
現在のところ、研究室に誰がいるのかを把握する簡単な方法がない(slack で general で聞くことができるがハードルが高い)。
これが、コミュニケーションの活性化にも影響につながっていると考える。
研究室のメンバーがいつ研究室にいるのかを把握できれば、より効率的にコミュニケーションを取り、共同作業を進めることができるのではないかと考える

要件定義

  • 自動化:
    • メンバーは入退室ボタンを押さずに、研究室にいるだけで自動的に検出する。
  • リアルタイム:
    • 誰が存在しているかについてのリアルタイムの更新を提供
  • コスト効率:
    • 無料で作成すること
    • 開発コストも極小にすること
  • プライバシーとセキュリティ:
    • 関係者以外には見れないようにしたい
  • 汎用性:
    • 自分たちの研究室以外でも使えるように設計を行う

システム設計

Nextjs(typescript)

  • web アプリとしては、Nextjs を採用している。アクセスを制限するために basic 認証を採用している

GAS (スプレッドシート)

  • スプレッドシートでデータを管理したいため、GAS を使って Web アプリ、ラズベリーサーバからのアクセスを可能にする
  • 基本的に無料で利用可能

Raspberry Pi

  • 1からサーバを作るとお金のコストも開発コストもかかるため、今回はラズベリーサーバにしている

まとめ

次回は、実装編を行うのでぜひ楽しみに待ってください~

GitHubで編集を提案
NISLab 小板研究室

Discussion