連載
開発をもっと楽にするNAgileの基本思想

第3回 アジャイル開発のキモはフィードバック!

福井コンピュータ株式会社 小島 富治雄(Microsoft MVP for Visual Developer - Visual C# Jul. 2005 - Jun. 2007)
2006/09/27

■■重要なのはフィードバックを受けようとする態度■■

ここで強調しておこうか。

大切なのはフィードバックを受けようとする態度

ぢゃ。

 「テスト・ファースト」なども、いわば、そうした態度の表れといえよう。

 そしてそのために最も大切なことは、

実践すること

なんぢゃ。いや、いっそいい切ってしまおうかの。

実践なくしてフィードバックなし

ぢゃ。実際にやってみる。その結果からしかフィードバックは受けられないのぢゃ。

 フィードバックを受けようとしない人もいる。やってみようともせずに、批評ばかりする人もいる。それに対して、アジャイルな態度では、「実践してみて、そこからフィードバックを得ようとする」。「実践ファースト」なんぢゃ。

実践ファースト: やる → フィードバックを得る → 考える → やる → ……
批評ファースト: 批評する → やらない → 考えない

 もう一度いっとこう。「実践なくしてフィードバックなし」ぢゃ。

 例えば、使えない知識と使える知識の差は、単に聞きかじっただけの知識と、経験・体験で得た知識との差ぢゃ。単に聞きかじっただけの知識というのはそれほど役に立たない。そして、どこでその差がついたかというと、それは、「フィードバックの量」なんぢゃ。

実践 → レビュー

 ↑     ↓

改善 ← フィードバック

という改善のループを素早く回す。それが、アジャイルな態度ぢゃ。

 お前たちにいっておこう。

「君子豹変ひょうへんす」

   
ん?! またことわざ? 孔子?
   

易経えききょう ぢゃ。「優れた人物は自分の過ちに気が付けば直ちに改善する」ということぢゃな。

 重要なことは、フィードバックを素直に受け入れることぢゃ。

  • フィードバックはストレートに受け入れる
  • 反対意見を自分自身への否定と受け取らない
  • アンチテーゼ*5はアイデアを成長させるのに必要と考える
  • 自分がフィードバックをする場合も素直なフィードバックを心掛ける
 
*5 ここでいうアンチテーゼとは、ある理論や主張を否定するために提出される理論や主張のこと。

 フィードバックを素直に受け入れない例と受け入れる例を挙げておこう。

フィードバックを素直に受け入れない例:

A:「随分と仕事が遅れているようですね。ここは△△△する方がよいのではないですか?」
B:「これでも精いっぱいやっているんですよ。これ以上は無理です」

フィードバックを素直に受け入れる例:

A:「随分と仕事が遅れているようですね。ここは△△△する方がよいのではないですか?」
B:「現在1週間程度遅れています。割り込みによる作業が原因です。この問題にはすでに○○○という手が打ってありますが、△△△も検討してみます」

 それからもう1つ。実践するだけでなく、ちゃんとレビューしフィードバックを受けること。

 例えば次のようではいかんのぢゃ。

A: 「一所懸命やってるんだけどなぁ。どうもうまくいかないんだよねぇ」
B: 「うまくいきませんよねぇ」

 「何がどううまくいっていないのか」、きちんと問題を切り出すこと。そして、目指している状態と現状との差分を、自分とチームに対してはっきりとレビューしなければならん。そうして、問題解決のループに入ることぢゃ。それが、問題解決能力を高めるコツぢゃ。

問題解決能力を改善するループ

 さて、この図についても説明しておこう。知ってのとおり、ソフトウェア開発者には問題解決能力が重要ぢゃ。問題解決能力を高めるには、まず学ぶことぢゃ。だが、単に学ぶだけでは不十分ぢゃ。

 お前たちにまずいっておこう。

學而不思則罔、思而不學則殆
まなびておもはざればすなはくらく、おもひてまなばざればすなはあやふし)

また易経?
 

 

今度は孔子ぢゃわい。

「教えを受けるだけで自分で考えることをしなければ、本物の知識・学問とはならない。また、自分で考えるだけで教えを受けようとしなければ、学問の本筋を見失ってしまう危険性がある」ということだ。

 つまり、学ぶことと考えることをともに行うことが重要。それから、さらに重要なことは、それをレビューすること。人に話す。あるいは文章に書き、人に読んでもらう。これらのことを行うことで、強い自己フィードバックが起きる。さらには、他人からのフィードバックも得られるようになるのぢゃ。

 例えば、新しい技術を習得する場合でいうと、次のような感じかの。

新しい技術を習得するループ

 最初にいったとおり、アジャイル開発のキモはフィードバックなんぢゃ。

 「行動することでフィードバックを得て、それにより次の行動へそのまた次の行動へと、よりよい方へ自らをどんどん変化させていく」

 それがアジャイルのキモだといえよう。

 それでは、最後のまとめぢゃ。

【まとめ】

 分かるかの?

 

 

はい! よく分かりました!
   
うーん……。なるほど……。

■■エピローグ■■

ごめんください。……おお。滝。来ておったな。
 

 

師匠!!! はい! 大師匠から、フィードバックの重要さについて教わっていたところです! とても理解が深まったと思います! 大師匠からお話を聞けてよかったです!

 

 

そうか。それはよかった。師匠は奥にいらっしゃるのか?

 

 

はい! それからこちらで知り合った若者も一緒です。
 

 

……おお。健。よく来たな。
 

 

これは師匠! ぶさたをしておりました。

うむ。奥に健二もおるぞ。

……親父!

健二か! 久しぶりだな。元気か?

!!? えええええええ?! なんで? なんでこうなるの?!

そうか! 滝さんの師匠って……。

っということは…。つまり、こういうこと?!


戸部 健はナジャイラ師である。

   
そんなあ。

■■最後に■■

 今回は、アジャイルのキモともいえる「フィードバック」をテーマとした。いかがだっただろうか。この記事に関してもフィードバックをいただければ幸いに思う。End of Article

フィードバック先:

Fujiwoの日記 ― @IT ― 開発をもっと楽にするNAgileの基本思想 第3回
コメントまたはトラックバックでお願いいたします。

(Illustrated by 正木茶丸


 INDEX
  開発をもっと楽にするNAgileの基本思想
  第3回 アジャイル開発のキモはフィードバック!
    1.団子屋にてアジャイルを語る滝
    2.女祖泥寺(めそどろじ)
    3.設計と実装に対するフィードバック
    4.「ツッコマレビリティ」とeXtreme Feedback!
  5.重要なのはフィードバックを受けようとする態度
 
インデックス・ページヘ  「開発をもっと楽にするNAgileの基本思想」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間