アジャイル的な開発を学ぼうと思っており、ツールの使い方や実践内容などを記します。
アジャイル開発は会社やチーム、業務に応じてやり方が変わるのは仕方ないにしても、そもそも具体的な手法がまとまっているといいなと思ったので、ここに残すことにします。(自分風なので、ご指摘あれば適宜訂正します)2016年内ぐらいをめどに大まか完成させる予定。
今回はDjango(Python)使ってみました。Unitテストやデータベース周りは色々便利でしたが、やはり未経験の言語で始めると技術面でのトラブルが多かったです。次はSpring(Java)でやってみようかなと思ってます。
あと開発未経験のメンバがいる場合、作業に入る前に以下のドキュメントは作った方がよさそうです。機能等よく分からないまま作業が進み、手戻りが激しくなると思います。
・要件定義(機能要件/非機能要件)
・非システム環境の現行業務フロー
・ユースケース図
・画面設計
・データベース設計
業務経験者だけなら、必要なドキュメントを必要になった時に作るスタイルで良いと思います。
【アジャイル開発学習 お品書き】
1.開発を始める前に
1-1.学習環境、目標
1-2.アカウント準備
1-3.サーバー構築
1-3-1.Redmineサーバー構築
1-3-2.jenkinsサーバー構築
2.作業を始める前に
2-1.Django学習
2-1-1.Django概要/クイックインストールガイド/チュートリアル1~7
2-2.SourceTreeでGitHub-flow
2-2-1.準備作業(masterリポジトリ作成/Collaborators追加)
2-2-2.topicリポジトリ作成
2-2-3.topicリポジトリ操作(ローカルにclone/Githubにpush/他のメンバのtopic編集取り込み)(準備中)
2-2-4.topicリポジトリをmasterリポジトリにマージ(レビュー/pull request→masterへマージ/topicブランチ削除)(準備中)
3.開発開始
3-1.スクラム開発の流れ(準備中)
3-1-1.チーム作成(ロール決め)(準備中)
3-1-2.インセプションデッキ(準備中)
3-1-3.スプリント計画ミーティング(準備中)
3-1-4.デイリースクラム(準備中)
3-1-5.スプリントレビュー(準備中)
3-1-6.スプリントレトロスペクティブ(準備中)
3-2.開発準備(準備中)
3-3.開発を始める(準備中)
3-1.デプロイ(準備中)