LoginSignup
16
12

More than 3 years have passed since last update.

スポーツコーチがチームで使える検温アプリをDjangoで作ってみた

Last updated at Posted at 2021-03-28

はじめに

初めまして。姫野と申します。
アメリカンフットボールのチーム、ノジマ相模原ライズでコーチをしています。
非エンジニアですが昨今のスポーツ業界でのデータ利用の盛り上がりに乗じてPythonを勉強中です。
スポーツ界のデータ利用といえばラグビーの日本代表がGPSデータを活用して話題になりましたね。

アメフト界でもデータ活用を進めたい!ラグビーと間違われたくない!チヤホヤされたい!という想いで本来のコーチ業とは別にプログラミングの勉強を進めています。
アウトプットの一つとして、Djangoで検温アプリを作ったので、せっかくならオープンにしよう、ということで投稿しました。

課題

みなさんは会社や所属団体で日々の体調管理をどうやっていますか?
無償アプリであればGoogle Formを使いこなす手もありますし、有償アプリであればグラフ化やリマインダー付きなど様々な機能がありますね。
ただ、Google Formは使いにくいし、有償アプリは使わない機能がたくさんあるのに高い(年間100万円のサービスも!)。。。

「社会情勢に左右されない、地域とファンと共に歩むプロフェッショナルクラブ」と理念を掲げるわがノジマ相模原ライズにおいて、チーム活動でクラスターを発生させるわけには絶対にいけません。一方で、100万円あれば他のモノに投資したい( ;∀;)
マイナースポーツはツラい。。。

背景

ノジマ相模原ライズでは、コロナが流行り始めた2020年シーズンは、機能を限定した有償アプリを一年限定で無償提供してもらっていました。
2021年シーズンでは有償アプリの無償提供期間も終了してしまうので、どうしたものかと悩んでいたところ、以下記事を見つけました。

武蔵野大学、Slackと連動した検温・体調管理アプリを開発
"言語は、同学科で主に使うプログラミング言語であるPythonを使用。また、認証系のシステムが実装されていることから、Djangoをバックエンドとして採用したとのこと。"

まさに勉強中のPythonでできるやん!ということでDjangoでの実装を試みました。

アプリの仕組み

Djangoの基本機能しか使ってないので、細かいコードの説明は先達偉人方にお任せして、簡単な仕組みの説明だけ。(最後にGithubのリンクをつけています。)
Python Django3超入門⇦参考にしました。

システム構成図

Herokuでデプロイしました。常時起動のConditionアプリに付随して、Heroku schedulerとwebhookでslackにリマインダーを送る設計にしてあります。
UML_condition.jpg

ユースケース図

チームメンバーはアカウント作成から日々のCondition報告までを受け持ちます。別で、ヘッドマネージャーにConditionアプリの管理者になってもらい、アカウントの管理などを行ってもらっています。
UML_condition2.jpg

アプリの画面

実際のアプリ画面を紹介します。

ログイン画面

初めての方はアカウント作成で新規アカウントを作ります。
スクリーンショット 2021-03-25 21.43.50.png

トップ画面

自分の過去投稿が並んでいます。過去投稿のEdit/Deleteも可能です。
スクリーンショット 2021-03-25 21.47.01.png

ポスト画面

体温や体調を記入します。チームにはアメリカ人もいるため、英語表記です。(英語怪しい)
スクリーンショット 2021-03-25 21.49.04.png

一覧画面

体温37.5℃以上の人や体調不良の人は赤字で強調されます。ポジションでソートできます。
スクリーンショット 2021-03-25 22.20.36.png
未投稿者はさらされます。
スクリーンショット 2021-009.png

スラックでのリマインド(Slack画面)

土日の練習前に自動で未投稿者の名前が投稿されます。
スクリーンショット 2021-03-25 22..png

最後に

コードです(Githubリンク)。ご参考になれば。

日本のアメフト界には生きたデータと課題が無数にあるにも関わらず、うまく活用されていないのが現状です。
嘆いても仕方がないので自分でエンジニアになることにしました。
検温アプリごときで業界のムードを変革できるとは思いませんが、前に進む一歩を踏んでいきたいですね。
検温アプリ以外の最近の取り組みはこちら。随時公開していきます。

他にもこんなことできそう!などアイデアあればコメントにて教えてください。
また、アメフト界をデータ活用で変革したいという想いに賛同して下さる方は、是非一緒に活動しましょう!
スタッフ申し込みはこちらのフォームからお願いします。(エンジニア希望の方はコーチ・アナライジングスタッフとしてお申し込みください)

16
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
12