Successfully reported this slideshow.
Your SlideShare is downloading. ×

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

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 128 Ad
Advertisement

More Related Content

Viewers also liked (20)

More from Takeshi Kakeda (20)

Advertisement

Recently uploaded (14)

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

  1. 1. 人生で大事なことは XP白本と参考文献に教わった IN 神山 ∼本と本の間の見えない糸を り、 XPをより深く知る∼ 2014/11/08 神山.rb 第一回 神山バレー・サテライトオフィス・コンプレックス
  2. 2. CultureWorks Agile459 kkd http://giantech.jp 懸田 剛 Kakeda Takeshi http://myj.cultureworks.jp
  3. 3. 9年14年
  4. 4. 読んだこと ある人?
  5. 5. XPの5つの価値 ✦ コミュニケーション ✦ シンプル ✦ フィードバック ✦ 勇気 ✦ 尊重
  6. 6. http://www.extremeprogramming.org/
  7. 7. http://133.44.98.95/cgi-bin/scat.rb/ruby/ruby-list/24246
  8. 8. –Kent Beck 5年前、本書の初版が出版された頃には、 途方もなく「エクストリーム」に思えた プラクティスが一般的になっている。 本書に掲載するプラクティスは、 今から5年後には保守的な方法に なっているのだろう。
  9. 9. 日本語版:http://d.hatena.ne.jp/yach/20140424
  10. 10.
  11. 11. +12%
  12. 12. XPはAgileの 細胞として 様々な場所に偏 在するに至った
  13. 13. Annotated Bibliography 解説付き参考文献
  14. 14. 「さまざまな書籍を読んだことで、私の理解は深くなった。 ここでは、XPに関連したアイデアを提供する いくつかの興味深い書籍を示す。」
  15. 15. 8759
  16. 16. 参考文献数 哲 学 態 度 創 発 プ ロ セ ス シ ス テ ム人 プ ロ ジ ェ ク ト マ ネ ジ メ ン ト プ ロ グ ラ ミ ン グ そ の 他 0 5 10 15 20 1st 2nd
  17. 17. 哲学 態度 創発プロセス システム 人 プロジェクト マネジメント プログラミング その他
  18. 18. 一番取り上げ られた本の 著者は?
  19. 19. G.M.ワインバーグ
  20. 20. –Kent Beck 言うこととやることが矛盾 する時、悪い結果が起きる。 本書は、どうやって言行一 致の人になるか、他人の言 行不一致をどう見破るか、 それにどう対処するかにつ いてである。
  21. 21. –Kent Beck 私が実際に持っている価値は、 私が持っていると世間に思わせた い価値ではないことに気づいた。 これまでの5年間は、私の実際の 価値を、理想の価値に変えるため の旅であった。
  22. 22. 私の実際の価値 を理想の価値に 変えるための旅
  23. 23. なぜ 参考文献?
  24. 24. 様々な本と の出会い
  25. 25. XP白本へ の回帰
  26. 26. ケントが 通った道
  27. 27. 世界は繋 がっている
  28. 28. –Kent Beck アレクサンダーは設計を次の ように考えることから始める。 設計とは、相矛盾する制約間 の対立を解決するための決断 であり、それでもなお残る制 約を解決するための決断を導 き出すものですある。
  29. 29. –Kent Beck クリストファー・アレクサン ダーの建築と施工に対する考 え方の概説。設計者および施 工者とその建築物を使う人と の関係は、プログラマと顧客 の関係によく似ている。
  30. 30. –Kent Beck 新しい特性を生むためのルール 体系の一例。このルールがよい かどうかには議論の余地がある が、ルール自体は一読の価値が ある。また、とても短いが、作 業空間の設計についての素晴ら しい議論が記述されている。
  31. 31. –Kent Beck 自分の考えを図で表現する方法。 線形に物事を考える人と 非線形に考える人との コミュニケーションを促進する
  32. 32. Nancy Margulies World Cafe’s Co-Developer
  33. 33. 2007/9/28
  34. 34. オブLOVE ワールドカフェ 2005/12
  35. 35. http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for %20Learning/margulies.htm
  36. 36. http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for %20Learning/margulies.htm
  37. 37. http://education.jhu.edu/PD/newhorizons/strategies/topics/Graphic%20Tools%20for %20Learning/margulies.htm
  38. 38. 視覚的に表現 することの重 要性と楽しさ
  39. 39. この本も、比喩(メタファ)と思 想についてよく論じている。比喩同 士がどのような形であれ融合するこ とで、まったく別の新しい比喩が出 来るかについても述べており、これ はソフトウェア工学の考え方と良く 似ている。土木工学や数学などから 来た古い比喩が、時間をかけてソフ トウェア工学特有の比喩になってい くのだ。
  40. 40. メタファは単なる レトリックではな く思考と深く結び ついている
  41. 41. 時は 金なり
  42. 42. 時間を浪費する 時間を節約する 時間のムダだ
  43. 43. 予定は埋まってる 予定は空いている 予定は一杯である 予定が溢れる
  44. 44. 時は 箱なり
  45. 45. タイムボッ クス
  46. 46. http://www.slideshare.net/kkd/metaphors-we-develop-a-software-by-7661294
  47. 47. –G.M.ワインバーグ バグという言葉を使っている組織は, 欠陥という言語を使っている組織は 異なった方法でソフトウェアを開発 し,保守している。
  48. 48. どっちが 品質を気 にしてそう?
  49. 49. サピア=ウォーフ仮説 「人間の経験や思考の様式はその言語習慣 によって実は規定されているのであり、 従って異なる言語を用いている人たちの 間では経験や思考の様式も違う のではないか」という考え方。 http://hirataka.sfc.keio.ac.jp/rindoku2.htm
  50. 50. TDD BDD
  51. 51. http://www.clear-code.com/blog/2014/11/6.html
  52. 52. 「振る舞い駆動開発」とは、TDDに触発されて Dan North氏により提唱され発展した手法です。 BDDはTDDの一流派ともいえますが、TDDに対し 以下の実現のための原則や工夫が加えられています。 • テストを「振る舞い」(機能的な外部仕様) の記述に特化させる • ユーザーの要求やアーキテクチャの設計仕様 といった、より上位のインプットとTDDのテスト につながりを持たせる テスト駆動開発/振る舞い駆動開発を始めるための基礎知識 http://www.atmarkit.co.jp/ait/articles/1403/05/news035_3.html#06
  53. 53. –A NEW LOOK ATTEST-DRIVEN DEVELOPMENT なぜこれが問題なのか? これから1分間、開 発者が普段テストについてどう考えているか 思い浮かべてみよう。プログラマはこう大抵 はこう考える。「全部にテストなんて書けな いよ」「これは本当に単純なコードだからテ ストなんて要らないな」「テストなんて時間 の無駄だ」「こんなテスト(ループ/データ取 得/機能、など)は何百万回もやったよ」 http://giantech.jp/pages/ikitema2/BDDIntro.html
  54. 54. テスト とい う言葉の重力に 引っ張られる
  55. 55. テスト と呼 ばず ビヘイビ ア と呼ぼう!
  56. 56. うまくいか なかった…
  57. 57. 言葉が思考 に強い影響 を与える
  58. 58. –Kent Beck 西欧社会における資源の高度 利用は、概して搾取と枯渇によ るものである。パーマカルチャー とは、シンプルな実践の相乗効 果によって、資源を持続的に高 度利用することを目的とした思 慮深い農法である。
  59. 59. –Kent Beck これには、XPとの類似点がい くつかある。たとえば、さまざ まな要素同士が相互に影響し合 うことで最大の収穫が得られる。 パーマカルチャーとは、異なる 作物を螺旋状に植え、不規則な 湖岸線を持つ湖を使うこで、相 互作用を最大にすることだ。 XPはオンサイト顧客とペアプ ログラミングによって、相互作 用を最大にする。
  60. 60. パーマカルチャー
  61. 61. 全米一住みたい街ポートランドに学ぶ、 創造・快適・環境先進都市の作り方 2014/10/22 ダイヤモンドクロス 2F 清水陽(@2013citrus)・懸田剛(@kkd) http://www.slideshare.net/kkd/ss-40629190
  62. 62. –PCCJより パーマカルチャーというのは、人間に とっての恒久的持続可能な環境をつくり 出すためのデザイン体系のことである。 パーマカルチャーという語そのものは、 パーマネント(permanent 永久の)と アグリカルチャー(agriculture 農業) をつづめたものであるが、同時にパーマ ネントとカルチャー(文化)の縮約形で もある。
  63. 63. 建築物 道具と技術 教育と文化 健康と精神的幸福 金融と経済 土地所有権と コミュニティ運営 土地と自然の 管理
  64. 64. 倫理 原則 実践 価値 原則 実践 PC XP
  65. 65. 倫理と価値 りんり1【倫理】 ① 人として守るべき道。道徳。モラル。 ② 「倫理学」の略。 かち1【価値】 ②  哲 善きもの望ましいものとして認め,その実現 を期待するもの。内在的なもの手段的なものなどにわ かれるが,特に,真善美など,普遍妥当性をもった理 想的絶対的価値をいう。
  66. 66. 相互連関的な 位置づけ 多機能 重要機能の バックアップ 効率的なエネ ルギー計画 生物資源の 活用 エネルギー 循環 小規模集約シ ステム 植生遷移と 進化の加速 多様性 接縁効果 問題は機会 情報と想像力 の集約 Introduction to Permaculture Principle
  67. 67. 人間性 経済性 相互利益 自己相似性 改善 多様性 反省 フロー 機会 冗長性 失敗 品質 小さな ステップ 責任の 受け入れ XPE 2nd Principle
  68. 68. –Kent Beck パーマカルチャーのように考えると デザインとは効果的に関連している 要素のシステムである
  69. 69. 残渣 ミミズ 畑 野菜 家庭 排泄物 排水 廃棄 投入 施肥 投入 排泄 水利用 水やり 栽培 調理 浄化槽 投入
  70. 70. –AppleSeed Permaculture The software development world is doing excellent work to move holistic & dynamic design processes forward. My friend and Gaia University colleague Patrick Gibbs pointed me to an Agile Manifesto for software development, whose principles seem very applicable to collaborative eco-social & permaculture design. http://www.appleseedpermaculture.com/agile-manifesto-principles-permaculture/
  71. 71. 全体論的・ダイ ナミックなデザ インプロセス
  72. 72. 全体論的 ✦ 全体は部分の総和ではない ✦ 部分を取り出して理解し、足し上げても全体の 理解にはならない ✦ システム開発を工程に分けて、それぞれを精緻に 改善しても(部分最適)、全体の最適化にはなら ない(全体最適)
  73. 73. ダイナミックな デザインプロセス ✦ 動的に状況が変わっていく中で、常に状況の変 化に合わせてデザインし続けるプロセス ✦ 要件の変化に適応する、自分たちのやり方を変 えていく、チームの改善から組織の改善へと広が る
  74. 74. 複雑世界の変革 はどの領域でも 似てくる
  75. 75. 複雑なものを受 け入れてどう人 が行動するか。
  76. 76. 制御から 適応へ
  77. 77. 傲慢から 謙虚さへ
  78. 78. –Kent Beck 非暴力的なコミュニケーショ ンの狙いは、人が判断と観 察を区別し、その奥にある 必要性を聞き出して、彼ら自 身の必要性を明確に述べら れるようにすることであ る。
  79. 79. –Wikipedia コミュニケーションにおいて相手と のつながりを持ち続けながら、お互 いのニーズが満たされるまで話し合 いを続けていくという、共感を持っ て臨むコミュニケーションの方法で ある。
  80. 80. NVCのプロセス 観察 感情 必要としていること (ニーズ) 要求 (リクエスト) 評価を混じえずに観察する どう思っているかではなく どのような感情があるかを読み取る 感情の根源にある 必要としているものを探す ニーズを満たす 具体的な要求を表現する
  81. 81. • 娘「テストが90点だったよ」 • 私「凄いね!でも惜しかったね! 次は100点目指してね!」 • 娘「90点とったんだから褒めて よ!」
  82. 82. • 娘「テストが90点だったよ」 • 私「凄いね!」 • 娘「100点取れなかったんだよ!」
  83. 83. • 娘「テストが90点だったよ」 • 私「(顔を見て)100点取れなく て悔しいの?」 • 娘「そう、悔しいんだよ!」 • 私「そうか、悔しいんだね。」
  84. 84. ユーザーストーリー 【役割】として 【具体的な要求】が欲しい それは【必要としていること】 だからだ
  85. 85. エクスペリエンスマップ http://www.ajike.co.jp/switch/ux_map/ 感情
  86. 86. 相手を本気で 大事にしたいと思 うかがコミュニケー ションの本質
  87. 87. –Kent Beck シンプルさと 明確さの価値について 検討している。
  88. 88. アーミッシュ 米国に住むキリスト教一派の ドイツ系アメリカ人で、近代文 明を拒否して生活しており、電 気、電話などは一切使わず、ま た基本的に自給自足で生きてい る人々です。 http://oka-jp.seesaa.net/article/162826592.html
  89. 89. http://plaza.rakuten.co.jp/ranran077/5006/
  90. 90. 問題となるのは選択の正誤ではなかった。 優先するのは何か、次にそのために 何が最適か、が考えられた。 –Sue Bender
  91. 91. アーミッシュを訪ねる前、私は選択肢 が多ければ多いほど自分は豊かだと思っ ていた。だが選択肢の多さと、 選択するということはまったく違う。 –Sue Bender
  92. 92. 選択すること ーこれが大切だと宣言することーーは、 人生の枠組みをつくることであり、 他の可能性を排除し、 残ったものに意味付けをすることである。 –Sue Bender
  93. 93. シンプル= 価値を明示 し守ること
  94. 94. 何を大事に して生きる か?
  95. 95. まとめ
  96. 96. –Kent Beck 私が実際に持っている価値は、 私が持っていると世間に思わせたい 価値ではないことに気づいた。 これまでの5年間は、私の実際の価値 を、理想の価値に変えるための旅で あった。
  97. 97. 自分が生きる上 で大切にしたい ことは何か?
  98. 98. 期待と現実が合致するとき、 人は満足するということなの だろう –Sue Bender
  99. 99. 理想と 現実の 一致
  100. 100. 他人では 変えら れない
  101. 101. 自分しか 変えら れない
  102. 102. Think about your values. Make conscious choices to live in harmony with them. 自分の価値を考え、その価値と調和した生活を 意識的に選択するのだ。
  103. 103. –Sue Bender 古い私はすこしも変わらない。 古い私、新しい私、不完全な私 それらすべてをひっくるめて 受け入れようとする私がある
  104. 104. 私が白本と 参考文献に学んだこと ✦ ソフトウェア開発の現場で役立つ様々なプラクティ スや原則 ✦ 世界の関係性、つながり、今の世界に大事なこと ✦ よりよい仕事・人生を送るために、自分の内面と 向き合うこと
  105. 105. XP Scrum Lean
  106. 106. XP Scrum Lean 個人 チーム 組織
  107. 107. Even programmers can be whole people in the real world. プログラマーでさえも全人に成り得る
  108. 108. XPと共に あらんことを

×