草野球リーグ運営アプリの開発 a.k.a ひまつぶし 1

このとおり、土日働いたらダメよ指令があったので、前々から作成したかった草野球リーグ運営のアプリの開発をしてみた。The ひまつぶし。ターゲットとするリーグは IT LEAGUE。チームの代表者として参加しているので運営についてもなんとなく把握している!野球も中学校からやっているのでなんとなくしっている!今日は Day 1。

まずはいつもとおり、どんなドメインがあるのかフリーハンドで書いてみる。特定のドメインを決めて深掘りする。やりかたは以下の 1 ~ 3 を何回か繰り返す。あーなんとなくこれでいけそう!ってなるまで繰り返す。

  1. 用語をざっくり書き出す(ユビキタス言語)
  2. 紙に書いてざっくりマッピング
  3. ユースケースを文章で書く

ビジネスロジックや用語にまよったら辞書や野球のサイト、野球のルールブックを見てみる。用語のより専門的な「呼び方」や「意味」からすごーく深いい情報が得られたりする。今回だと以下を参考にした。今回だとリーグの「シーズン」っている概念がなんとなく頭から抜けていて、MLBのサイトを見て「シーズンでフィルタ」する機能を見て気付いた。あと選手の成績としてどんなデータを残すのか?という観点で表示されているデータからより深く洞察できるようになったりした。

なんとなく頭で実装イメージが湧いてきたところでコーディングを開始!1回くらいは作りなおすなーくらいのテンションで手を動かすこともどんどんやって実装からフィードバックを得ていく。採用した技術は慣れている PHP + Symfony。DB は MySQL。開発環境は PHP のビルドインサーバ。

結局、今日は分析と Entity, Repository の作成を半分くらいまででおわた!分析でだいたい5時間くらい(°_°)実装は3時間くらいかな。野球のルールブック見てたら日が暮れてもた笑 FOSUserBundle, EasyAdminBundle を利用してさくっとスタート!!

github.com

画面はこんな感じ。

f:id:kseta:20160626234600p:plain

また時間あいたらちょっとづつ開発していこーっと。 ひとりきままなざっくり開発最高!