人生で大事なことは XP白本と参考文献に教わった

96
人生で大事なことは XP白本と 参考文献に教わった ~本と本の間の見えない糸を辿り、 XPをより深く知る~ 2014/09/05 XP祭り2014 C-6

description

2014.09.06 XP祭り2014にて、XP白本の参考文献についてお話させて頂きました。

Transcript of 人生で大事なことは XP白本と参考文献に教わった

Page 1: 人生で大事なことは XP白本と参考文献に教わった

人生で大事なことは XP白本と

参考文献に教わった ~本と本の間の見えない糸を辿り、

XPをより深く知る~

2014/09/05 XP祭り2014 C-6

Page 2: 人生で大事なことは XP白本と参考文献に教わった

CultureWorksAgile459

kkdhttp://giantech.jp

懸田 剛Kakeda Takeshi

http://myj.cultureworks.jp

Page 3: 人生で大事なことは XP白本と参考文献に教わった

9年14年

Page 4: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“5年前、本書の初版が出版された頃には、 途方もなく「エクストリーム」に思えた プラクティスが一般的になっている。

本書に掲載するプラクティスは、今から5年後には保守的な方法になっているのだろう。”

Page 5: 人生で大事なことは XP白本と参考文献に教わった

日本語版:http://d.hatena.ne.jp/yach/20140424

Page 6: 人生で大事なことは XP白本と参考文献に教わった
Page 7: 人生で大事なことは XP白本と参考文献に教わった
Page 8: 人生で大事なことは XP白本と参考文献に教わった

XPはAgileの細胞として様々な場所に偏在するに至った

Page 9: 人生で大事なことは XP白本と参考文献に教わった

Annotated Bibliography 解説付き参考文献

Page 10: 人生で大事なことは XP白本と参考文献に教わった

「さまざまな書籍を読んだことで、私の理解は深くなった。ここでは、XPに関連したアイデアを提供する

いくつかの興味深い書籍を示す。」

Page 11: 人生で大事なことは XP白本と参考文献に教わった

8759

Page 12: 人生で大事なことは XP白本と参考文献に教わった

参考文献数

哲学

態度

創発プロセス

システム

プロジェクトマネジメント

プログラミング

その他

0 5 10 15 20

1st 2nd

Page 13: 人生で大事なことは XP白本と参考文献に教わった

Annotated bib change !Hello, !My officemate and I just noticed that /Sex Tips for Girls/ is missing from the annotated bibliography in xp2e. !Can you reveal the motivation behind that, and/or elaborate on other deltas between the two bibliographies? !Thanks,

“セックスチップスforガールズが消えてるんだけど?”

Bil Kleb | 2 Mar 19:39 2006

Page 14: 人生で大事なことは XP白本と参考文献に教わった

RE: Annotated bib change !Bil, !I don't remember all of the changes I made to the bibliography. My intention with the second edition was to write a business-like book, since programming is, for most of us, a business. Shock for the sake of shock brought me a certain amount of attention, but it didn't contribute to my fundamental goals. !Sincerely yours, !Kent Beck Three Rivers Institute

“ビジネスライクな本にしたかったからのけちゃった”

Kent Beck | 8 Mar 19:07 2006

Page 15: 人生で大事なことは XP白本と参考文献に教わった

哲学

態度創発プロセス

システム

プロジェクト マネジメント

プログラミングその他

Page 16: 人生で大事なことは XP白本と参考文献に教わった

G.M.ワインバーグ

Page 17: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“言うこととやることが矛盾する時、悪い結果が起きる。本書は、どうやって言行一致の人になるか、他人の言行不一致をどう見破るか、それにどう対処するかについてであ

る。”

Page 18: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“私が実際に持っている価値は、 私が持っていると世間に思わせたい価値で

はないことに気づいた。 これまでの5年間は、私の実際の価値を、理想の価値に変えるための旅であった。”

Page 19: 人生で大事なことは XP白本と参考文献に教わった

なぜ参考文献?

Page 20: 人生で大事なことは XP白本と参考文献に教わった
Page 21: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“アレクサンダーは設計を次のように考えることから始める。設計とは、相矛盾する制約間の対立を解決するための決断であり、それでもなお残る制約を解決するための決断を導き

出すものですある。”

Page 22: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“クリストファー・アレクサンダーの建築と施工に対する考え方の概説。設計者および施工者とその建築物を使う人との関係は、プログラマと顧

客の関係によく似ている。”

Page 23: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“新しい特性を生むためのルール体系の一例。このルールがよいかどうかには議論の余地があるが、ルール自体は一読の価値がある。また、とても短いが、作業空間の設計についての素晴らしい

議論が記述されている。”

Page 24: 人生で大事なことは XP白本と参考文献に教わった
Page 25: 人生で大事なことは XP白本と参考文献に教わった
Page 26: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“自分の考えを図で表現する方法。 線形に物事を考える人と 非線形に考える人との

コミュニケーションを促進する”

Page 27: 人生で大事なことは XP白本と参考文献に教わった
Page 28: 人生で大事なことは XP白本と参考文献に教わった

Astah(旧JUDE)のマインドマップ(2005/4/14~)

Page 29: 人生で大事なことは XP白本と参考文献に教わった

Nancy Margulies

World Cafe’s Co-Developer

Page 30: 人生で大事なことは XP白本と参考文献に教わった

http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for%20Learning/margulies.htm

Page 31: 人生で大事なことは XP白本と参考文献に教わった

http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for%20Learning/margulies.htm

Page 32: 人生で大事なことは XP白本と参考文献に教わった

http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for%20Learning/margulies.htm

Page 33: 人生で大事なことは XP白本と参考文献に教わった
Page 34: 人生で大事なことは XP白本と参考文献に教わった
Page 35: 人生で大事なことは XP白本と参考文献に教わった
Page 36: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“この本も、比喩(メタファ)と思想についてよく論じている。比喩同士がどのような形であれ融合することで、まったく別の新しい比喩が出来るかについても述べており、これはソフトウェア工学の考え方と良く似ている。土木工学や数学などから来た古い比喩が、時間をかけてソフトウェア工学特

有の比喩になっていくのだ。”

Page 37: 人生で大事なことは XP白本と参考文献に教わった
Page 38: 人生で大事なことは XP白本と参考文献に教わった

メタファは 単なるレトリックではなく 思考と深く結びついている

Page 39: 人生で大事なことは XP白本と参考文献に教わった

時は金なり

時間を浪費する。 時間を節約する。 時間をムダにする。

時間を貯める(とは言わない)

Page 40: 人生で大事なことは XP白本と参考文献に教わった

http://www.slideshare.net/kkd/metaphors-we-develop-a-software-by-7661294

Page 41: 人生で大事なことは XP白本と参考文献に教わった

–G.M.ワインバーグ

“バグという言葉を使っている組織は, 欠陥という言語を使っている組織とは 異なった方法でソフトウェアを開発し,

保守している。”

Page 42: 人生で大事なことは XP白本と参考文献に教わった

サピア=ウォーフ仮説

“「人間の経験や思考の様式はその言語習慣によって実は規定されているのであり、従って異

なる言語を用いている人たちの間では経験や思考の様式も違うのではないか」という考え方。”

http://hirataka.sfc.keio.ac.jp/rindoku2.htm

Page 43: 人生で大事なことは XP白本と参考文献に教わった

TDD BDDと

Page 44: 人生で大事なことは XP白本と参考文献に教わった

–A NEW LOOK AT TEST-DRIVEN DEVELOPMENT

“なぜこれが問題なのか? これから1分間、開発者が普段テストについてどう考えているか思い浮かべてみよう。プログラマはこう大抵はこう考える。「全部にテストなんて書けないよ」「これは本当に単純なコードだからテストなんて要らないな」「テストなんて時間の無駄だ」「こんなテスト(ループ/データ取得/機能、など)は何百万回もやっ

たよ」”

http://giantech.jp/pages/ikitema2/BDDIntro.html

Page 45: 人生で大事なことは XP白本と参考文献に教わった

「テスト」という言葉の力

✦言葉に引っ張られる思考様式

✦「テスト」では語れない意味がTDDのテストにはあると皆が感じていた

✦それに「振舞(Behaviour)」と名前をつけよう!

Page 46: 人生で大事なことは XP白本と参考文献に教わった
Page 47: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“西欧社会における資源の高度利用は、概して搾取と枯渇によるものである。パーマカルチャーとは、シンプルな実践の相乗効果によって、資源を持続的に高度利用することを目的とした思慮深い農法である。”

Page 48: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“これには、XPとの類似点がいくつかある。たとえば、さまざまな要素同士が相互に影響し合うことで最大の収穫が得られる。パーマカルチャーとは、異なる作物を螺旋状に植え、不規則な湖岸線を持つ湖を使うこで、相互作用を最大にすることだ。XPはオンサイト顧客とペアプログラミングによって、相互作用を

最大にする。”

Page 49: 人生で大事なことは XP白本と参考文献に教わった

パーマカルチャー

Page 50: 人生で大事なことは XP白本と参考文献に教わった

–Wikipedia

“エコロジカルデザイン・環境デザイン分野の用語であり、自然のエコシステムを参考にし持続可能な建築や自己維持型の農業システム

を取り入れ、 社会や暮らしを変化させる 総合的なデザイン科学概念”

Page 51: 人生で大事なことは XP白本と参考文献に教わった

–PCCJより

“パーマカルチャーというのは、人間にとっての恒久的持続可能な環境をつくり出すた

めのデザイン体系のことである。 パーマカルチャーという語そのものは、パーマネント(permanent 永久の)とアグリカルチャー(agriculture 農業)をつづめたものであるが、同時にパーマネントとカルチャー(文化)の縮約形でもある。 ”

Page 52: 人生で大事なことは XP白本と参考文献に教わった
Page 53: 人生で大事なことは XP白本と参考文献に教わった

愛媛出身 福岡正信翁

Page 54: 人生で大事なことは XP白本と参考文献に教わった

倫理

Page 55: 人生で大事なことは XP白本と参考文献に教わった

倫理(ETHICS)

✦地球への配慮(Earth Care)

✦人への配慮 (People Care)

✦余剰物の分配 (Fair Share)

Page 56: 人生で大事なことは XP白本と参考文献に教わった

原則

Page 57: 人生で大事なことは XP白本と参考文献に教わった

原則

✦ビル・モリソンとデビット・ホルムグレンで若干異なる

✦今後も見直され変更されるだろう(ホルムグレン)

✦ XPはビル・モリソンの原則を参考にしている

Page 58: 人生で大事なことは XP白本と参考文献に教わった

原則✦相互連関的な位置づけ

✦多機能性

✦重要機能のバックアップ

✦効率的なエネルギー計画

✦生物資源の活用

Page 59: 人生で大事なことは XP白本と参考文献に教わった

原則✦エネルギー循環

✦小規模集約システム

✦植物の遷移と進化の加速

✦多様性

✦接縁効果

Page 60: 人生で大事なことは XP白本と参考文献に教わった

接縁(エッジ)効果

✦エッジはシステムのなかで最も多様な地域になっている。エッジは最も生産性の高いところなので、システム内のエッジを出来るだけ多くするようにデザインする事が必要。

✦海と海岸、平地と丘、池と岸

Page 61: 人生で大事なことは XP白本と参考文献に教わった

XPの適応例✦役割と役割

✦顧客とプログラマー

✦ペア・プログラミング

✦部門と部門

✦組織と組織

Page 62: 人生で大事なことは XP白本と参考文献に教わった

実践

Page 63: 人生で大事なことは XP白本と参考文献に教わった

パーマカルチャーのデザイン

要素 要素

要素と要素を適所に 配置して結びつけ 効果的に機能させる

Page 64: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“パーマカルチャーのように考えると デザインとは効果的に関連している

要素のシステムである”

Page 65: 人生で大事なことは XP白本と参考文献に教わった

デザインの例

雑草 畑

ニワトリ摂食 耕うん

保湿

肥料

Page 66: 人生で大事なことは XP白本と参考文献に教わった

家庭でのデザイン例

残渣

ミミズ

野菜

家庭

排泄物 排水

廃棄

投入

施肥

投入

排泄水利用

水やり栽培

調理

浄化槽投入

Page 67: 人生で大事なことは XP白本と参考文献に教わった
Page 68: 人生で大事なことは XP白本と参考文献に教わった
Page 69: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“非暴力的なコミュニケーションの狙いは、人が判断と観察を区別し、その奥にある必要性を聞き出して、彼ら自身の必要性を明確に述べられるようにすることである。”

Page 70: 人生で大事なことは XP白本と参考文献に教わった

NVC勉強会(愛媛)

Page 71: 人生で大事なことは XP白本と参考文献に教わった

–Wikipedia

“コミュニケーションにおいて相手とのつながりを持ち続けながら、お互いのニーズが満たされるまで話し合いを続けていくという、共感を持って臨むコミュニケーション

の方法である。”

Page 72: 人生で大事なことは XP白本と参考文献に教わった

NVCのプロセス観察

感情

必要としていること (ニーズ)

要求 (リクエスト)

評価を交えずに観察する

どう思っているかではなく どのような感情があるかを読み取る

感情の根源にある 必要としているものを探す

ニーズを満たす 具体的な要求を表現する

Page 73: 人生で大事なことは XP白本と参考文献に教わった

• 娘「テストが90点だったよ」

• 私「惜しいね!次は100点目指してね!」

• 娘「90点とったんだから褒めてよ!」

Page 74: 人生で大事なことは XP白本と参考文献に教わった

• 娘「テストが90点だったよ」

• 私「凄いね!」

• 娘「100点取れなかったんだよ!」

Page 75: 人生で大事なことは XP白本と参考文献に教わった

• 娘「テストが90点だったよ」

• 私「(顔を見て)100点取れなくて悔しいの?」

• 娘「そう、悔しいんだよ!」

• 私「パパにできることはあるかな?」

Page 76: 人生で大事なことは XP白本と参考文献に教わった

ユーザーストーリー

【役割】として 【具体的な要求】が欲しい

それは【必要としていること】だからだ

Page 77: 人生で大事なことは XP白本と参考文献に教わった

エクスペリエンスマップ

http://www.ajike.co.jp/switch/ux_map/

感情

Page 78: 人生で大事なことは XP白本と参考文献に教わった
Page 79: 人生で大事なことは XP白本と参考文献に教わった

日常的に使うのはなかなか…

✦難しい。訓練が必要。

✦それでも「なんとかしたい」と思うかどうか

✦心の底から、相手と通じたいと思うかどうか

Page 80: 人生で大事なことは XP白本と参考文献に教わった
Page 81: 人生で大事なことは XP白本と参考文献に教わった

–Kent Beck

“シンプルさと 明確さの価値について検討している。”

Page 82: 人生で大事なことは XP白本と参考文献に教わった

アーミッシュ“米国に住むキリスト教一派のドイツ系アメリカ人で、近代文明を拒否して生活しており、電気、電話などは一切使わず、また基本的に自給自足で生きて

いる人々です。”http://oka-jp.seesaa.net/article/162826592.html

Page 83: 人生で大事なことは XP白本と参考文献に教わった
Page 84: 人生で大事なことは XP白本と参考文献に教わった

http://plaza.rakuten.co.jp/ranran077/5006/

Page 85: 人生で大事なことは XP白本と参考文献に教わった

“問題となるのは選択の正誤ではなかった。 優先するのは何か、次にそのために

何が最適か、が考えられた。”

–Sue Bender

Page 86: 人生で大事なことは XP白本と参考文献に教わった

“期待と現実が合致するとき、 人は満足するということなのだろう”

–Sue Bender

Page 87: 人生で大事なことは XP白本と参考文献に教わった

“アーミッシュを訪ねる前、私は選択肢が多ければ多いほど自分は豊かだと思っていた。

だが選択肢の多さと、 選択するということはまったく違う。”

–Sue Bender

Page 88: 人生で大事なことは XP白本と参考文献に教わった

“選択すること ーこれが大切だと宣言することーーは、 人生の枠組みをつくることであり、

他の可能性を排除し、 残ったものに意味付けをすることである。”

–Sue Bender

Page 89: 人生で大事なことは XP白本と参考文献に教わった

–Sue Bender

“古い私はすこしも変わらない。 古い私、新しい私、不完全な私 それらすべてをひっくるめて 受け入れようとする私がある”

Page 90: 人生で大事なことは XP白本と参考文献に教わった

まとめ

Page 91: 人生で大事なことは XP白本と参考文献に教わった

私が白本と 参考文献に学んだこと

✦ソフトウェア開発の現場で役立つ様々なプラクティスや原則

✦自分が変わることで、世界は変わること

✦よりよい仕事・人生を送るために、自分の内面と向き合うこと

Page 92: 人生で大事なことは XP白本と参考文献に教わった

XP

Scrum

Lean

Page 93: 人生で大事なことは XP白本と参考文献に教わった

XP

Scrum

Lean

個人

チーム

組織

Page 94: 人生で大事なことは XP白本と参考文献に教わった

Even programmers can be whole people in the real world.

プログラマーでさえも全人に成り得る

Page 95: 人生で大事なことは XP白本と参考文献に教わった

Think about your values. Make conscious choices to live in

harmony with them.

自分の価値を考え、その価値と調和した生活を 意識的に選択するのだ。

Page 96: 人生で大事なことは XP白本と参考文献に教わった

自分の大事なものを見つめて よい仕事・よい人生を XPと共に送りましょう