katsuyukikun’s diary

とある天パーエンジニアのblog

アジャイル開発の本を読んで

引き続き、アジャイル開発系の本を読んで似たようなことが印象に残ったのでメモ程度に残しておきます。

読んだ本はこちらです。

 

アジャイルサムライ−達人開発者への道−

 

アジャイルソフトフェア開発の奥義

 

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法

 

印象に残ったこと

・ユーザストーリー(誰のために何をやり、なぜやるのか)を理解すること

・フィーチャーごとに短いスパンで実装していく

・ストーリーポイント(あるフィーチャーに比べて何倍くらいの労力がかかるか)で工数を見積もる

・すべきでないこと、やらないことを決める

・優先順位をつけるときの判断の要素として4つ(価値、コスト、得られる知識や意義、低減できるリスク)で分けて考える

 

ユーザストーリー(誰のために何をやり、なぜやるのか)を理解すること

ここは特に読んでいてハッとしてしまいました。

現状だと結構社内システム系の構築をしているので実際の業務を行なっている人がどうなのかみたいなことを考えて行動しがちでした。ただ本当に考えるべきは、そのシステム改善によって価値提供できるエンドユーザーに対してどうあるべきなのかを本来ならば考えなければならない項目なのではないかと思い、今までの行動を反省しました。

 

ビジネスなので結局は価値提供した先に金銭が発生します。それは誰なのか、その人がどういうことに困っていて、どういう価値を提供することで何が改善できるのかという視点から物事の思考をスタートせなばとひしひしと感じていますw

 

ストーリーポイントで工数を見積もる

これは結構実戦でもすぐに役に立つことでした。過去いろんな大きさの機能などを実装してきていたので、あの時のこういう実装はこのくらいかかっていたからそれに比べると、、、とかもしくはあの時の実装に比べて今実装しようとしているものがどのくらいなのかを相対的に判断するのは結構やりやすい感覚が個人的にはあります。

 

 

優先順位をつけるときの判断の要素として4つ

知識の獲得とリスクの低減が可能なテーマ、、、システムの使い勝手や機能についてのフィードバックなどのフィーチャーを早い段階にスケジュールする。

といったようにこの4つの要素の優先順位の付け方として、「価値とコストの面から暫定的なスケジュールを決め、あとは調整」というイメージで進めるのが良さそう。。

ただ、これが正解というわけではないのでその場その場でどういう判断をするのか、その時にメリットデメリットを理解して上で進められるのかが重要になるのだなと思いました。

 

まとめ

こういう本を今まで読んだことがありませんでした。ただこういうものを知った上だけでは意味がないので、自分が行動する時に少し時間をかけながらでも自分の頭で考えて合っているやり方を模索できればと思っています。

 

 

終わり。