Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

パターンライティングワークショップ AgileJapan 2013

1,884 views

Published on

AgileJapan 2013で実施したPattern Writing Workshopの資料です。
今回のワークは「パタンの書き方」を参考にして実施しました。
http://www.cultureworks.jp/blog/?p=44
皆様に作っていただいたパターンと、その過程の議論もとても興味深くうかがいました。
満席を超える参加をいただいただけでなく、満足度のアンケートも5点満点のところ平均4点以上いただくことができました。ご指摘いただいた点は次回に活かします。ありがとうございました。ご質問やご意見などがございましたら、お気軽にお声がけください。
ワークショップに参加してくださった皆様、AgileJapan 2013を応援してくださっている皆様、どうもありがとうございました。

六辺さんによる「コミュニケーションメディアとしてのパターン:Agile Japan 2013 レポート(3)」
http://www.manaslink.com/articles/12082

Published in: Education
  • Be the first to comment

パターンライティングワークショップ AgileJapan 2013

  1. 1. パターンライティングワークショップ  Agile  Japan  2013 2013年5月24日  本橋 正成(カルチャーワークス)  羽生田栄一(豆蔵)  
  2. 2. 自己紹介 羽生田 栄一 •  株式会社 豆蔵  •  回文  –  行けっ!孔子だ!New羽生田氏、烏骨鶏(いけっこうしだにゅうはにゅうだしうこっけい(にゅうで一文字))  –  @HHany 本橋 正成 •  合同会社カルチャーワークス/東京工業大学  •  回文  –  ルナ飛びし本橋の志は灯火となる(るなとびしもとはしのしはともしびとなる)  –  本橋は友(もとはしはとも)  –  @motohsi  
  3. 3. 目的 •  本日、お持ち帰りいただきたいこと  –  アジャイルの知見をパターンの技術を用いて、表現し、デザインすることができる。 –  他の人のアジャイルに関する知見をパターンという形を通じて共有することができる。  •  そのために  –  パターンとパターンランゲージ、プロジェクトランゲージについて知ることができる。  –  実際にパターンを書いてみる。    •  この資料の一部は、J.  Yoder氏の資料を参考にしています。  •  このワークショップは「パタンの書き方」を参考にしています。  h?p://www.cultureworks.jp/blog/?p=44  
  4. 4. 問い:  なぜ、パターン技術  (含むパターンランゲージ、プロジェクトランゲージ)  を使うのか。  もしくは、パターン技術がないと世界はどうなるか?
  5. 5. 2010  ソフトウェア・シンポジウム、平鍋氏の基調講演発表資料より
  6. 6. パターン パターンという見方
  7. 7. Tokyo  Camii  &  Turkish  Culture  Center  h?p://www.tokyocamii.org/ CultureWorks,  LLC 8
  8. 8. デザイン・パターン (日本語訳) 発売日: 1999年10月 h?p://www.amazon.co.jp/gp/product/images/4797311126/ref=dp_image_0?ie=UTF8&n=465392&s=books CultureWorks,  LLC 9
  9. 9. アナリシス・パターン h?p://www.amazon.co.jp/dp/4894716933/ h?p://en.wikipedia.org/wiki/File:Event-­‐analysis-­‐pa?ern.svg (日本語訳) 発売日: 2002年4月 CultureWorks,  LLC 10
  10. 10. h?p://www.amazon.co.jp/gp/product/images/0201741571/ref=dp_image_0?ie=UTF8&n=52033011&s=english-­‐books CultureWorks,  LLC 11
  11. 11. 日次ミーティング  IPAのプラクティス(パターン)サンプル •  別名  –  朝会、朝礼、デイリースクラム、スタンドアップミーティング  •  要約  –  毎日、時間を決めて短い時間で関係者が顔を合わせる。その結果、チーム全体が日々の必要な情報を共有できるようになる。  •  問題  –  情報の共有遅れが問題を大きくする  –  情報共有の時間が取れないまま、状況認識と問題対処への判断が遅れると、問題が大きくなり、より深刻な状況を招いてしまう。   •  フォース  –  関係者が多忙なため、情報共有のための時間が取れない  –  情報共有の間隔が空いてしまうと、情報量が増え、共有に必要な時間が余分にかかってしまう。  •  解決策  –  チームのメンバー全員が集まって必要な情報を短い時間で毎日共有する。  –  短い時間(15分が目安)で済むように、必要な情報に絞って共有する。  –  情報共有の間隔が長くなるほど、共有に要する時間が必要となるため、毎日短いミーティングを設けるようにする。  [IPA  2013]
  12. 12. 組織構造のバウンダリをゆるめる  IPAのプラクティス(パターン)サンプル •  要約  –  組織やプロセスの構造が生み出すボトルネックがあれば、バウンダリをゆるめることによって、発生している問題を当事者である「我々の」問題として解決しやすい構造を作る。その結果、根底の問題を解決できるだろう。 •  問題  –  組織やプロセスの構造が生み出すボトルネックがある。  –  プロダクトオーナーは、バックログの維持など、開発チームを含むステークホルダーとの調整や、継続的に発生する割り込みなどの状況で忙殺され、相対的にボトルネックになりやすい。 •  フォース  –  バウンダリを明確に切り分けようと思っても、複雑で現実的ではないが、その周辺こそ創造性を発揮しやすいところである。  –  コンテキストによって、それぞれの持つ意見が正しいことが説明できる。しかし、明確なバウンダリ内にいると他のコンテキストを理解しにくくなる。専門性を活かしたいが、原理主義的に自分の専門を持つことにより、他の状況を配慮せず深い対立を生み出すことがある。  –  専門知識の交換には時間が必要であり、異なった部門にいると、コミュニケーションの時間が限られる。  •  解決策  –  組織的な構造が生み出すバウンダリをゆるめよう。お互いに役割を越えてチームとして助けあおう。 [IPA  2013]
  13. 13. パターンとは?  パターンの定義 アレグザンダーの定義  “各パターンが、環境の中で繰り返し繰り返し発生する問題を記述し、その問題に対する解決策の要点を記述します。その解決策は、全く同じことを繰り返すことなく、何百万回も適用可能であるようにします。”    
  14. 14. 採用したパターンの形式 •  プラクティス名  –  プラクティスの日本語名/英語名 •  別名  –  プラクティスの別名 •  要約  –  プラクティスの概要説明 •  状況  –  解決すべき問題が発生する状況 •  問題  –  特定の状況下で発生する問題 •  フォース  –  問題解決策を選択する上で、かぎとなる考慮点・制約事項 •  解決策  –  プラクティスそのものの説明。具体的な工夫も解説  •  留意点  –  プラクティスを適用する上でコンテキストに応じた留意点  –  プラクティスをそのまま適用できない場合の代替策 –  うまくいかない場合の注意点 •  効果  –  プラクティスを活用した時に得られる効果 •  利用例  –  調査先企業への調査から得られたプラクティスの利用例 •  関連プラクティス –  関連性の高いプラクティス •  参考文献 –  プラクティスが紹介されている文献 CultureWorks,  LLC [IPA,  2013]
  15. 15. 名前  •  単語もしくは短いフレーズ —  パターンのエッセンスです。名詞句であるべきという人もいます。 – 名前は、ささいなことではなく、とても重要です。 •  良い名前は、コミュニケーションを拡張します。特に名前を聞いたときにその意図を思いめぐらせれば。 – パターンは何かを”構築”します。パターンの名前は、パターンが構築するものついて言及しましょう。
  16. 16. 別名  同じパターンは、他の会社や出版物など他の場所にも存在しているかもしれない。  エクスパートは、民間の伝承や、深い意味を思い起こさせる直感的ではない名前を用いることがあります。別名は、初学者を助けます。  略語もしくはニックネームは、議論を容易にします。  
  17. 17.  文脈 Context  設定ーターゲットユーザ、パターン適用、サイズ、スコープ、タイミング、メモリの制約など。変わったら解決が役に立たなくなるかもしれないことなら何でも。  Ä あなたは、新しいアイデアを紹介するためのミーティングに呼ばれた「エバンジェリスト」もしくは「専任のチャンピオン」です。そのユーザコミュニティのメンバーは、参加の可否は自由です。あなたは資産を持っている、個人的な貢献がある、もしくは、「近くのスポンサー」や「投資家」です。  
  18. 18. フォース  問題が困難となるゆえん  フォースはしばしば矛盾しており、緊張を作り出します  –  顧客を幸せにしたいです  –  リソースが制限されています  Ä しなくてはならないもっと重要な仕事がいつもあります  Ä 新しいアイデアに興味をもつ人がほとんどです  
  19. 19. 問題  Problem  短く、そのパターンが解く問題を短く完全に記述してください。  ミーティングはいつも、ありふれた人間味の        ないイベントである  どのように我々のミーティングに参加したい      人々を集めればよいのだろうか?
  20. 20. 解決策  Soludon  問題を解く提案された方法です。コンテキストによって決定された重要なフォースを解きほぐしてください。他のフォースは無視してもかまいません。  対象聴衆を心に思い浮かべてください。  よいパターンは生成的(Generadve)です。  Ä ミーティングで食事をとること —  朝はコーヒー、紅茶とジュースと一緒にドーナツかベーグル。午後はクッキーとドリンク、お昼にはランチ。  
  21. 21. 結果として生じる文脈  Resuldng  Context  /  Consequence  もしその解決策を適用したときに起こること、どのフォースが解決され、どのような問題が発生しうるか、どのようなコストと利益があるか  「問題は解決しました」だけでは十分ではありません。    Ä 食事は、ありきたりのミーティング、発表や会合を、より特別なイベントに変える。もし最初に提供されれば、ミーティングをポジティブな雰囲気で始められる。  
  22. 22. 他のセクション  よく知られた使い方:  あることが一度の発生は「(一回だけの)出来事」です。二度目の発生は偶然の一致です。もし、それが三回以上発生したら、それはパターンです。  Jim  Coplien/Gerald  Weinberg/Bunny  Duhl  関連パターン:  一緒に使用するパターン、使用されるパターン、似ている他のパターン    –  無料の食事ががあるとよいのに、予算がない場合、持参した食事(Brown  Bag)にしましょう。自分自身で食事を持ってきたとしても、人々は一緒に食べることができます。  
  23. 23. パタンランゲージ パタンの有機的に繋がった集合
  24. 24. パターンランゲージとは •  概念(パターン)の集合である。  •  有機的なつながりがある。  •  様々なレベルやスケールに渡っている。  – 技術的、組織的、そのほか、複数の観点でまとめられている。  
  25. 25. パターンランゲージの例:  •  AlexanderのGarden  – アレグザンダーによる唯一のパターンランゲージダイアグラム  From  The  Timeless  Way  of  Building  
  26. 26. ライティングパターンのための  パターンランゲージ  (Meszaros  &  Doble)  
  27. 27. 1  :  Release  planning  to  release  product  increments  2  :  Iteradon  planning  meedng  3  :  Iteradon  4  :  Planning  poker  to  esdmate  tasks  during  sprint  planning  5  :  The  project  velocity  is  measured  6  :  Short  daily  meedng  to  resolve  current  issues  7  :  sprint  retrospecdve  to  learn  from  previous  sprint  8  :  Kanban  9  :  Sprint  review  meedng  to  present  completed  work  10  :  Task  board(Task  card)  11  :  Burn  down  chart  to  monitor  sprint  progress  12  :  Flexible  process  13  :  User  stories  are  wri?en  14  :  Mutual  commitment  to  sprint  backlog  between  product  owner  and  team  15  :  Incepdon  Deck  16  :  Priorides  (product  backlog)  maintained  by  a  dedicated  role  (product  owner)  17  :  Rapid  feedback  18  :  Pair  Programming  19  :  Automated  regression  test  20  :  Test  Driven  Develpment  21  :  Unit  Test  Automadon  22  :  Acceptance  tests  are  run  onen  and  the  score  is  published  23  :  System  Metaphor  24  :  Spike  Soludon  25  :  Constant  refactoring  26  :  Simple  Design  27  :  Only  one  pair  integrates  code  at  a  dme  28  :  Condnuous  Integradon  29  :  Use  collecdve  ownership  30  :  Code  wri?en  to  agreed  standards  31  :  When  a  bug  is  found,  tests  are  created  32  :  Analog  Tools  33  :  Customer  Proxy  34  :  The  customer  is  always  available  35  :  Product  Owner  36  :  Development  process  and  pracdces  facilitated  by  a  dedicated  role  (Scrum  master)  37  :  Agile  Coach  38  :  Team  members  volunteer  for  tasks  (self-­‐organizing  team)  39  :  Niko-­‐niko  Calendar  (Smiley  Calendar)  40  :  Set  a  sustainable  pace  41  :  Right  agile  style  for  their  organizadon  42  :  Give  the  team  a  dedicated  open  work  space  43  :  One  whole  team  44  :  Move  people  around  45  :  Set  up  a  dedicated  integradon  computer  46  :  User  Story  Mapping  47  :  Definidon  of  DONE  48  :  Fun  is  important  49  :  Slacking  Organizadonal  Structure  Network  of  Referred  Pracdces  as  a  Pa?ern  Language 123456789101112131415161718192021222324252627282930313233343536373839404142 43444546474849CultureWorks,  LLC
  28. 28. プロジェクトランゲージ パタンのインスタンス
  29. 29. プロジェクトランゲージの例 昨日は初回リリースが無事に終わり、今はふりかえりをしている。最初、スパイク・ソリューションで技術的なリスク事項を確認し、シンプルデザインを心がけたので見通しは良かった。共通の部屋で、チーム全体がひとつになって開発を行った。チームは、ファシリテータ(スクラムマスター)と開発をした。プロダクトオーナーは、様々な調整に走り回りなかなか仕様が決まらなかったことが課題であった。  昨日のリリースに対して障害の報告があがってきた。バグ時の再現テストですぐに確認できたので、継続的インテグレーションを用いてリリースを行った。リファクタリングのタイミングについては意見が割れている。 今後の体制は、顧客プロキシを実現しつつ、組織構造のバウンダリをゆるめながら進むことで、合意を得られた。このプロジェクトは、TOCと組み合わせるなど組織にあわせたアジャイルスタイルが実現できている。ただ楽しい工夫をもくろんでいることは内緒である。
  30. 30. プロジェクトランゲージ •  パタンランゲージのプロジェクトごとの適用である。  – パタンの関連性によって構造が生み出される。  – プロジェクトは、ストーリ(物語)によって語られる。  – パターンを語彙として、それらを組み合わせて、ビジョン(まだ存在しない未来のイメージ)を表現したもの  
  31. 31. プロジェクトランゲージのメタモデル クラス図1pkgPatternLanguageProjectLanguage Project1..*1Pattern1..*1Story1..* 0..*embeded inVision1..*11..*1ContextForce- postsituation1..*1Solution11..*1..*1..*- precontxt1..*1..*Problem1..*1..*- presituation1..*1..*1..*1..*1..*1..*- result contxt11..*
  32. 32. ワークショップ どうやってパタンを書くのか
  33. 33. ランゲージを創る  Pa?ern  Language コトバ発見  Ethnographical  Approach  ビジョンを創る  Project  Language 対立解消  Conflict  Transformadon  過去を紡ぐ    知識記述 設計・修復  Design  and  Configuradon  知識共有 文化を紡ぐ パタンランゲージの世界β 知識発掘 CultureWorks,  LLC 未来を紡ぐ    行為・現象
  34. 34. Soludon  [S]  解決策  Masanari  Motohasi,  CultureWorks,  LLC Pa?ern  Matrix Problem  [P]  問題 Force  [F]  フォース Context  [C]  文脈(現象) Name  名前 Consequence  [R]  結果(利点・課題) Problem  domain  問題領域 Soludon  domain  解決領域 「こうしたら」  •  うまく行ったこと  •  学んだこと  •  ちょっとしたこと  •  あ、それだ!  •  問題領域に対して解決する  「こうなった」  •  良かったこと・利益  •  悪かったこと・課題・留意点  「こうしたかったら」  •  発生した問題  •  なぜ解決策が妥当か  •  どんな問題を解決したのか  「なぜならば」  •  他の可能性ある解決策を妨げること  •  問題を難しくさせる特定する条件  •  なぜ難しい問題なのか  •  考慮した点。  •  〜だが、〜〜。  「こんなときに」  •  どのような状況や環境下でその問題が起こるのか?背景は何か?  •  解決策を適用しても変わらない問題に隠された仮定や前提。  •  解決策を思い出しやすい、わかりやすい名前  •  別名も書く(専門用語、関連する用語を含む)  •  名詞句が多い  Author  :   @motohasi  Date          :    May  24,  2013  for  weaving  experience!  Share  your  knowledge!  1 3 4 5  マッチしているか? 思いついたときは随時追加する 5 必要に応じて反復(今回のワークでは省略) 小さめのお芋を用意し、事前に吹かした後、たき火で焼き芋を作る。  例: 印刷物を処分出来た。  課題:  •  近所迷惑  •  消火が必須  •  紙だけではダメ  「リファレンスガイド」を印刷して、大量の紙が出来た。 •  興味のありそうな人や関係者には回覧しおわった。 •  保存しておくスペースがない。  •  処分したいが、近くに紙を食べてくれる山羊はいない。 •  リファレンスガイドなど大量の紙が出る。  •  目が疲れるので、紙で読みたい。 食べてもおいしいプラクティス 2 6
  35. 35. 発表するパターンの順番 1.  名前  2.  文脈  3.  問題  4.  フォース  5.  解決策  6.  結果  a.  利益  b.  課題
  36. 36. 問い:  なぜ、パターン技術  (含むパターンランゲージ、プロジェクトランゲージ)  を使うのか。  もしくは、パターンがないと世界はどうなるか?
  37. 37. ありがとうございました •  アンケートのお願い  – 付箋紙にご記入ください。  – 満足度を5点満点でご記入ください。  – ご感想、ご提案をご記入ください。  •  ご質問やご意見、コンタクトをご希望される方は、お声がけください。  – 本橋  @motohasi  – 羽生田  @HHany  

×