Santa EMP System
サンタのためのプレゼント配り支援アプリ
サンタがプレゼントを配るときに明るいと困ってしまうので、
サンタが近づくと家のブレーカーを落とすシステム。
これで安心してプレゼントが配れる。
サンタのニーズを考えました。
- Kotlin
- python
- retrofit2
- GSON
- welcome-android
- Google Maps API for Android
- SQLite3
- Flask
- wiringpi
- AndroidStudio
- GitHub
- Git Bash
- Vim
- クラウドサーバ
- make
- systemd
- あとりあ
- ゆひ
- あわあわ
- たつお
- 開発規則を定め円滑な開発を進める
- 100%
- GitHubの機能を用いて円滑なコミュニケーションを図ることに成功した。また進捗管理をGitHub Projectを用いることで行い、誰が今なんのタスクに着手しているのかをチームメンバー全員で把握した。更に、多くのissueとタグを用いることで今このプロジェクトに何が求められているのかを把握した。
開発規則については"プルリクエストは誰かのレビューを必須とする"などの規則を定め守った。これによりいくつかの大きなミスを未然に防ぐことができた。
-
目標:チームのリーダーとして全体の把握を行うために積極的にコミュニケーションを取れるような仕組みを作る
-
達成度:100%
-
根拠:GitHubのIssueを建てさせる習慣をつけさせ、Issueの総数は100を超えたのでむしろコミュニケーションの取り過ぎだったかもしれない。 p2hacks以前から引き続き4人でのDiscordサーバー上で随時進捗を垂れ流していたので 全員が全員の進捗を把握できる仕組みを作れた。
-
目標:Github等のツールを用いて全体の進捗管理を行えるようになる
-
達成度:100%
-
根拠:上記の目標で建てさせたIssueをGitHubProjectで管理することで、 カテゴリごとのIssueの把握,現在やっている作業を把握できるようにしたから。 PRに対してはレビューを行わないとmergeできないようにルールを設け、 PRの内容について当人以外知らないという状況を防ぎ、フロント/バックのそれぞれが 同じ領域の進捗を強制的に把握できるようにした。
-
目標:はじめてのKotlinを用いた開発を完成までやり遂げる。
-
達成度:100%
-
根拠:目標である最低限の機能を実装しきった。 途中,KotlinでのWebAPIに対する非同期処理で心を折りそうになったが、めげずに作りきった。 最初はfor文の記法すらわからない状態だったが、今ではJavaコードを読んで適切な記法でKotlinに移植することまで可能になった。
-
目標:命名規則やGitHubの使い方に気を配る
-
達成度:95%
-
根拠:branchの命名やcommit messageに多く気を配った。 また、チーム開発でGitHubを実践的に使用するのは初めてだったため、気を配った。 今回の開発においてGitHub上で、Pull requestの対象を間違える、変なコミットを行ってしまう、無駄なrevertを行うなど多くの失敗をしてしまった。 しかし、チームメンバーの力を借りつつ冷静にこれらの失敗から復帰することができた。 失敗を繰り返すことで、より慎重にGitHubを扱えるようになった。
-
目標:コミュニケーションをしっかり取る(今何をやっていて、何ができて、何ができていないのかなど)
-
達成度:100%
-
根拠:コミュニケーションがgithub上でしっかり取れた
-
目標:GitHubの使い方に気をつける(ブランチきる、適度なcommit)
-
達成度:100%
-
根拠:サーボモーターでブレーカーを落とせた
-
目標:要件を満足するプログラムを書く
-
達成度:95%
-
根拠:ほとんど問題なく実装できたため
-
目標:本格的な複数人開発は初めてなので、GitHubなどの使い方に気をつける
-
達成度:90%
-
根拠:本格的にGitHubを使用するのが初めてだったから、使い方やブランチの命名規則には事前に策定し特に気をつけた。今まで曖昧な理解だったものが、自分の技術となったから良かった。また、自分個人のデバッグ力の弱さが課題になった。今後は、原因を切り分ける能力を向上させていきたい