アジャイル(スクラム開発)学習

Pocket

アジャイルの勉強として、スクラム開発を実践する予定。

日本は基本的にウォーターフォール型が主流の業界が多いですが、そろそろアジャイル開発について無知が過ぎるかなと思い始めてきたので。。。

ひとまず勉強に使った書籍の感想や、勉強経過について記します。

プログラミング言語には慣れ親しんだJavaを使いたいと思いつつ、Java EEは複数の技術が集まりすぎてやや難解、扱いに困りそうだったので取りやめ。Ruby on Railsも候補でしたが、諸事情により今回は選択せず。PythonのDjangoを使うことにしました。

使用予定ツールは以下。

プログラミング言語 Python
フレームワーク Django
DB SQLiteかMariaDB
IDE PyCharm
バージョン管理 GitHub(+SourceTree)
Unitテスト noseかpytest
ビルド SCons
CI jenkins
チケット管理 Redmine
コミュニケーションツール ChatWork

目標は以下。
・スクラム開発の手順で、複数人によるWEBアプリケーション作成
・チケット駆動を併用
・Github-flowに従ったソースのバージョン管理
・Githubへのコミットと同時にUnitテスト実行
・CI(jenkins)によるカバレッジ確認

現在、以下の状況。
・スクラム開発:なんとなくやり方、理念を理解し始めた
・Redmine:環境構築済み、それなりに使える
・Github+SourceTree:ちょっと使っただけ、慣れてない
・Django:1.9のチュートリアル学習中、入門中
・Python:これから学習
・Unitテスト:これから調査
・jenkins:ちょっと使っただけ、これから調査

以下の書籍を使って勉強中。

①チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus) ②SCRUM BOOT CAMP THE BOOK ③アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣 ④アジャイルサムライ−達人開発者への道−
⑤Redmine実践ガイド 理論と実践、事例で学ぶ新しいプロジェクトマネジメント ⑥GitHubの教科書 ⑦Gitによるバージョン管理 ⑧改訂新版Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
⑨Jenkins ⑩Python入門[2&3対応] ⑪Pythonプロフェッショナルプログラミング 第2版


あとで以下も買う予定。
⑫アジャイルレトロスペクティブズ 強いチームを育てる「ふりかえり」の手引き

アジャイルなどの最近の開発手法を全く知らないのであれば、「①チーム開発実践入門」がおすすめです。
各種ツールの機能や役割、実際どのように役立つかなど、最近のチーム開発手法について広く説明しています。当然、実際に習得するには別個に学習を深める必要がありますが、全容理解にはとても役立ちました。

アジャイルの手法にスクラム開発を選ぶなら「②SCRUM BOOT CAMP THE BOOK」がとても良いです。
漫画を挟みながら、実際のスクラム開発の進め方をしっかり学ぶことができます。並行して「③アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣」も読んでおくと、より理解が深まると思います。

スクラム開発の始まりとしてインセプションデッキを学ぶなら「④アジャイルサムライ−達人開発者への道−」、振り返りとしてプロスペクティブの理解を深めるなら「⑫アジャイルレトロスペクティブズ 強いチームを育てる「ふりかえり」の手引き」がよいかなと思います。

Pythonの学習は「⑩Python入門[2&3対応]」が基礎からDjangoの軽い説明まで載っていて良いと思います。「⑪Pythonプロフェッショナルプログラミング 第2版」はもっと開発に慣れてから読むべき内容と感じました。

Redmineは書籍が多いので、役立つ本は人それぞれと思います。「⑤Redmine実践ガイド 理論と実践、事例で学ぶ新しいプロジェクトマネジメント」はマニュアル的に使えて、事例も載っているので購入。やたらでかくて分厚い本ですが、役立ってます。

GitHubは「⑥GitHubの教科書」が見やすくて良いです。実際にGithub-flowなどのコマンドレベルで学ぶにはやや物足りないので、詳細すぎるぐらいGitコマンドの説明が載っている「⑦Gitによるバージョン管理」も併用しています。Gitも書籍は多いので好みで選ぶと良いと思います。

単体テストに関して知識が不足しているので、DjangoとPythonをそこそこ習得できたら改めて勉強する予定。

jenkinsは「⑧改訂新版Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)」、「⑨Jenkins」ともにmavenやjavaが中心なので、ひとまず参考程度にしています。実運用まで苦労しそうなので、できるところから少しずつ機能を利用していくつもりです。

うまく開発を回せるようになってきたり、Djangoについて知識がまとまってきたら改めて記事を作る予定です。

広告

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です