1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

オーケストラ専用出欠サイトの制作

Last updated at Posted at 2021-10-01

目次

  • 概要
  • 機能説明
  • 改善点
  • あとがき

概要

DMM WEBCAMPの卒業制作として作った、オーケストラのための出欠管理サイト「Otoderu」についてお話させてください。
私が15年超、音楽団体に関わっている中で出欠連絡というシステムの不完全さが運営側、団員双方の負担になっていると思ったことが制作の動機です。
半ば諦められている、「面倒」「忘れてた」に対しての問題解決ツールとして提案したいものです。
サイト:Otoderu
GitHub:コチラ
頂いているレビュー

出欠連絡の重要性について

一番の問題は代わりがいないということに尽きます。
例えばサッカーであればあるポジションの人が休んだとしてもある程度の代替は可能かと思います。
ただ、楽器の場合そもそも音が出せないので全くがら空きになってしまうのです。
パズルのピースが欠けている状況ですね。
そんな理由から出席者により練習する曲、順番を決めるという習慣があります。
そのためにも団員の出欠の把握というのは音楽団体にとって、非常に大切なことなのです。

何が問題なのか

出欠連絡が行われない理由は大きく3点あります。

  1. 私用が定まらず後回しにした結果、忘れる
  2. 様々な連絡が流れてくる結果、埋もれる
  3. 各団体により使用しているツールがバラバラで億劫(メール、ライン、スプレッドシート、システムetc)
    これらを総合すると、意思決定に必要な情報をひとまとめにすれば自然とアクセスされ、出欠入力も行われるという結論に辿り着きました。

機能説明(課題解決に直結するもののみ抜粋)

特徴(README.mdより)

  • ログイン後すぐに出欠入力が行える設計で団員の負担を最小限に。
  • 複数団体に対応。スケジュール管理を一括で行えます。
  • GoogleMapを使用しており会場までの道のりがすぐ分かります。
  • 練習予定の登録には過去の練習予定を見ながら検討できます。

複数団体への対応

予定が定まらない一つのパターンとして、複数団体に所属していて練習日が重なった場合の優先順位です。
特にアマチュアでも賛助(=金銭の授受など特別待遇がある)として参加する団体には気を使って予定を立てている傾向があります。
そうした方への対応として複数団体の予定を一目で確認できるようにしておき、入力を同時に行える設計にしました。
複数団体.png

入力忘れ、漏れへの対応

出欠未入力件数の通知をハンバーガーメニュー内、マイページに配置。サイトを訪問したら必ず目に留まるようにしました。
入力したつもりだったけど更新出来ていなかったという可能性を排除しています。
ヘッダー.pngマイページ1.png

SNS投稿機能

練習詳細画面ではTwitter、FacebookのSNSシェアボタンを配置しており、団員への周知が簡単に行えます。
一度入力を漏らしても目に触れる機会を複数作ればサイトへアクセスする可能性は高まります。
参考ですが、所属する団体では78名中65名(83%)がどちらかのSNSに登録していました。(実際にはもう少しいるはず?)
演奏会情報の確認のため、継続性、こだわりの強い人間が多いためオーケストラ団員はSNSを愛する傾向があると見ています。
ツイッター.png

練習登録の効率化

団員に、如何に入力してもらうかという視点でお話をしてきましたが、練習登録、練習組みも面倒な作業です。
そのため登録画面ではモーダルウィンドウ+マウスホバーによる表示を組み合わせ、他の練習予定を見ながら練習組みが出来る設計としました。
勿論コピー&ペーストも行えるので使いまわしも簡単に行えます。
モーダルウィンドウ.png

改善点

SQL発行の多さ

each文の中にeach文を…と重ねている部分が多々あり、結果として1ページ表示するのに数十回とSQLが発行されており、実データを受け入れるには改善が必要です。
SQLの勉強を行い、どういった形でデータを引っ張っているのか、検証していきたいと思います。

保守性(DRYの実践)

コードを書くには見やすさと、保守性を考えなければなりませんが、前者には留意したものの、後者には手を回すことが出来ませんでした。
今後益々勉強に励み、DRYの実践に身を入れていきたいと考えています。

Slackbotとの連携(バージョンアップ)

サイトにアクセス後、如何に簡単に入力するか、という点に主眼を置いていましたが、本当のゴールはサイトにアクセスしないことだと思っています。
所属団体では通常の連絡手段にSlackを使っているので、Slackbotと連携させ、bot側から出欠入力を行う、出席者を確認するといった簡単な動作をアクセスしないで完結することを目指しています。

あとがき

音楽仲間に見てもらうと、「使ってみたい!」「これに変えようよ!」といった声をもらうことができ、制作して良かったと心から思うことができました。
小さな課題解決ではありますが、こうしたことがまわりまわって、音楽業界が盛り上がる一助になれば良いなと思っています。

最後までお読みいただきありがとうございました。

1
0
1

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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?