AgileJapan2012に参加しました。今回は、実行委員長が西河さん!それに、開催場所も大阪、という、新しい流れの会になりました。多くの人がブログを書いてくれることを期待しています。ぼくも少しだけ、書こう。
これまでのAgileJapanでは、基調講演を海外と日本のツインにして、海外に日本のことを知ってもらうこと、日本と海外の人の交流を作ること、それと、より「日本のアジャイルってなんだ?」という視点を出すこと、をやってきた。
- 2009 - Mary Poppendieck と黒岩さんのツイン基調講演。
- 2010 - Allan Shaloway と野中郁次郎先生のツイン基調講演。
- 2011 - Linda Rising と當仲さん(USP研究所)のツイン基調講演。
このあたりのことについては、「InfoQ: 日本のアジャイルに何が起きていたのか、何が起きているのか」、とか、「リンダの基調講演が、英語記事になりました」を参照してください。
そして、今回、
- 2012 - Jonathan Rasmusson と岸良さんのツイン基調講演。
が実現した!(そして、JR を角谷さんが日本に紹介してくれる。)こんな機会を大阪で作れたのがよかった。そして、図らずも、JR の新しいリーダーシップの科学の話、岸良さんのマネジメントを変える必要がある(全体最適は実は、集中と選択だ)という話、がリンクして、全体の筋が通った感じがした。
そのほか、面白かったこと。。。。
- 角谷さん、午前チュートリアルで関西弁。。
- 道場主、せいぞろい、すごかった!
- 和智さん、角谷さんが、Daniel Pink のビデオを、字幕つけてくれた!
- IPAからの報告が、たんたんとしていたけど、内容がよかった。日本での大規模事例を押さえていて、さらに、そこで行われている「工夫」が書かれていた。
- 吉羽さんのセッション、人気すぎて、立ち見でも入れない状態(すごかった)。
- 吉羽さんの「アジャイルな開発からアジャイルな組織へ」のスライドがすばらしい。これは必ず見るようにお願いしたい。
- 西村さんの、基本のキ、のワークショップ。ちょうど、顧客役の人に廊下で秘密を教えている場面を通りかかる。
- みんな積極的に、JRに絡んで話していた!
- DEEP AGILE PEOPLEがディープすぎて、新しい次元!
- 『アジャイル、あるとき、ないとき』のタイトルの意味がやっと分かった。(大阪ローカルやん)
- オージス総研さんの90年代の事例が、大規模、繰り返し型という意味で参考になる。
おそらく、大阪での開催で、アジャイルジャパンに初参加、という方が7割以上いたはず。そして、多くの方が懇親会まで来てくれ、「こんなやり方の会があるんですね」、「自分だけじゃなくて、仲間がいたんですね」、といってくれたことがうれしかった。
最後に、個人的に一番感動したこと。『アジャイル、あるとき、ないとき』で偶然一番内側の輪に座っていた方が、
私にとって、XPの白本は憧れでした。でも、あれを自分の仕事でやれる気がしなかった。でも、あるとき、友人と自分がやりたいソフトウェアを作る機会があった。プログラミングが楽しかった。そのとき、はじめて、XPやれる、と思った。アジャイルやれない、と思っている人は、プログラミングが楽しい、という経験をするといいのじゃないか。
という話をしてくれたこと。自然に拍手が出た。(ぼくはちょっと泣いた)
さて、来年はどこでやろうね?東京に戻るのもいい。名古屋、というのもいいね。札幌?
いいソフトウェアを作りたい、と考えている人が、いい仕事をできるよう、日本を変えていこう。多くの人に来てもらって、この流れを作ろう。プログラマだけではなく、上司やお客さんを巻き込んで、作っていこう。そんな場にアジャイルジャパンをしていきたい。
参加者のみなさん、スポンサーのみなさん、そして、関西サポーターのみなさん、ありがとうございました。関西サポーターがいなかったら、このイベントは成り立ちませんでした。
(スタッフ、レポーター、スピーカーの集合写真使わせてもらいました)
今日はチェンジビジョンの6周年ですが、astahは実はもっと古く、1997の年末に最初の構想がかかれたようです。
Astahは昔の名前をJUDEといい、この名前が非常に長く使われていたのですが、ドイツの方からのフィードバックを真摯に受け止めて、改名しました。JUDEは、Java and UML Developers Environment の略でした。
そして、その前の名前をJOMTと言います。今でも、内部のパッケージ名には、jomtが使われています。
最初の名前JOMTは、JavaとOMTをつなぐツール、という意味です。今日、このツールの最初の「構想書」なるものを発掘しました!3ページにわたって、最初の「動機」や「仕様のポイント」がかかれたものです。今読んで思うのは、
- Javaにハンパなくコミットしている。仕様書の最後に、JDK1.2 finalにあわせてリリースしたい、などと書いてる。(そして、「Javaが言語として速度上、デスクトップアプリで使い物になるかどうか、は疑わない」と書かれている!)
- UMLよりも、OMTが使える、と考えていた。⇒これは後にUMLに変更。
- ビジネスのことはほとんど書いていない!
- 逆に、「製品の強み」にしたいところと、「内部構造のポイント」(言語、リポジトリ、アーキテクチャ、UI)は早くから決まっていた。
- 動機は、Roseを使ったときに感じたこと。
などなど。
あと、当時、リポジトリとして想定していたのは、Javaのソースコードそのものをリポジトリにする、というアイディアで、@parameter などのjavadocコメントの形でUMLのデータそのものを埋めてしまおうと思っていたんですね。。。。
これを発掘して、また今後も、新しいastahへの思いを持ちました。Web、クラウド、HTML5でどのような開発ツールが作れるか。。。次の10年を創りたい!
今日、2/22はチェンジビジョンの設立記念日。満六歳の誕生日を迎えることができました。みなさんの支援、ほんとにいつもありがとうございます。
今日も、こんなビデオを作って贈ってくれた方がいます。
Astahのよさが30秒で分かる、素敵なビデオです。どうもありがとう!!
2/16 デブサミで、
『アジャイル開発の10年と今後を語ろう。』と題して話しました。内容については、新野さんのレポートがすごくまとまっているので、ご紹介。
publickey
平鍋氏「アジャイル開発の10年と今後を語ろう」、デブサミ2012
これまで10(+1)年のアジャイルを書籍を軸に振り返り、リーンの果たした役割、そしてそこからはじまった流れが、現在の2つの方向が、
- 組織改革
- リーンスタートアップ
というビジネスへの出口に向かっていることを示したかった。また、
- 野中郁次郎先生やトヨタなど、日本からの影響が大きい分野
- 本質は「知行合一」にあること。「考えること」と「行うこと」を分けて考えるのではなく、両方が同時に起こること。
も言いたかった。それと、現在の方向は、Context が強く意識され、
- 方法論、という外側から管理で固めていく方法ではなく、
- プラクティスを集めたり、工夫したりして、自分たちで作り出すもの
というのが正しいんだ、というのがちゃんと正論として理解されつつあることも。だから、現場で考えよう、ということが言いたかった。
機会をくれた、岩切さん、papanda ありがとう。岩切さんの父上が見てくれた、と聞き、感激。永平寺の話入れてよかった。
当日見せた、アジャイル書籍のマインドマップ。
あわせて読みたい:
二日目には、角谷のさんの「アジャイルマニフェストディケイド」が同じ開発プロセストラックで行われ、おそらく、最高の集客だと思われる。さすが、コトバ作りの達人である。物語も秀逸。ここにも、「自分と文脈」、「意味と場所」、というようなことに近い、何かがある。
野中郁次郎先生を一橋大学に訪問、アジャイル、スクラム、創造、マネジメントについてディスカッションする機会を得ました。
先生はもちろん、ナレッジマネジメント、知識創造経営、そして、Scrumという言葉を生んだ、「The New New Product Development Game」という1986年の論文の著者の一人。もう一人は現在ハーバードの竹内さん。一昨年の AgileJapan 2010の基調講演、昨年は、Jeff Sutherland との対談が Innovation Sprint で実現、ハーバードの竹内さんのクラスにJeff Sutherland が呼ばれたりするなど、アジャイル会との交流が進んでいます。
ぼくが持ち込んだ、顧客を巻き込んだ、見える化された職場のワークスタイルの写真なんかを見ながらお話ししていたら、
PDCAって日本人大好きなんだけど、これは本当に欲しいもの、いいもの、そして感動は作れないんだ。ロジック思考、アメリカ的分析思考、MBA思考。最初に、Plan、っていうけど、大事な意味は、計画(Plan)から出てこない。最初に、共感、とか、、、個人の俺は誰でどう考えていて、お前は誰でだからどう思う、という全身体的な付き合いがある。そこに共感、共振、があって、それをチームで共有化する。SECIモデルなんだけど、ここに「創造」の本質がある。だからリーダーは、共感を作る「場」を作ることができないといけない。だから、触れ合う。見える化する。徹底的に話あう。演繹では生まれない。計画を書いて、仕様書にして投げ合ってもそこからは意味は出てこない。計画という言語が先ではない。まず、思いがあり、共有がある。これをアブダクションっていう人もいるけど、ロジックだけでは、意味が生まれない。帰納的に、発見とそれを型にしていくことを繰り返す。意味は形式ではなくて、その場の文脈から生まれるんだ。」
という話をされた。
「そして、そこから型をつくって、組織に埋め込む。言葉にする。ユニ・チャームの高原社長は、共振人材、をつくるといっていて、そこにはフロネティック・リーダシップの6項目が書かれている。そしてそれを組織の中で実践をしている。身体性が復権して、共振から型に。その場作り。それには徒弟制度しかない。ボディとマインド、切り離せないから。共感は、言葉より前にある。赤ちゃんが微笑むとお母さんが微笑む。この会話には言葉がない。ニューロサイエンスの成果で共感構造(ミラーニューロン)が発見され、これが説明可能になった。ユニ・チャームだけでなく、エーザイ、JFE、それぞれ、SECIモデルを核にした新しい組織作りに取り組んでいる。」
ペアプログラミングについても、
「プログラミングという活動を、マニュアルに書くことができますか?出来ない。ITも使う。けど、共感も使う。その場で、会話と感情、全身で伝える。これは、近代的徒弟制度だ。」
パターンランゲージについて、
「アレグザンダーの手法について、いま、とても注目している。まちづくりの最初は、対話から。作り手のカタログではなく、そこに住む人との対話を発生させる装置と、その場をつくるリーダー。文脈が、意味を生成して構造にしていく。それを、コレクティブ(集合的)にやる。」
AgileJapan2012 も期待しているよ!ということで、お弁当を食べながらの一時間の時間はあっという間に過ぎてしまいました。そして、
で、本はいつできるんだい?
はい!しっかり巻き込まれましたよ。
「スクラム、そして、アジャイル。~日本が取り戻すソフトウェア開発手法はここにある」、書きます。
アジャイル開発では、チームの状況を共有するミーティングを毎朝行う。これを、デイリー・スクラム、と呼ぶ。短時間で立ったまま行うことを習慣化することが多く、スタンドアップ・ミーティング、と呼ぶこともある。(※前者はスクラム、後者はXPからの用語)
チームは、現在のプロジェクトの状況を壁を使って見える化し、チームで共有する。現在の状況を示すタスクボードや、かんばん、バーンダウンチャート(進捗を示すグラフ)、そのほかの貼り物をする。このような場所で行うと、朝会の伝達効率がいい。
各自が短く次のこと(3つ)を報告する。
- 昨日やったこと
- 今日やること
- 障害となっていること
アジャイル開発では、コードを継続的にインテグレーション(結合)して常にテストが通る状態に保つ。同様に、毎朝、チーム自身もインテグレーションし、みんなの頭の中と行動を結合し、最新の動ける状態に保つ。
日本では、朝会、と言う言葉がよく使われる。たったままやるので「たちっぱ」という言葉で呼ぶチームもある。ぼくも「プロジェクトファシリテーション実践編:朝会ガイド」という、この朝会ミーティングの司会の仕方をずいぶん昔に書いている。定位置、定時刻、短時間、で行うようにして習慣化する(自然と『そろそろ朝会の時間だね』という言葉が出てくるとよい)。話す内容には、上記のほかに、例えば、「今日は子供を向えにいかないといけないので、5時で帰ります」というような連絡もここでする。チームは自分の仕事に透明性を持って参加することが重要。
この朝会を、文書による進捗報告で代用できる、と考えてはいけない。この場で起こるちょっとした質問と回答で、ある人が大きな問題だと思っていたことが解決することがある。それに、プロジェクトの雰囲気が協調的になり、誰か一人が困っている、という状況を救うことができる。みんなが、ひとりぼっちで、与えられた仕事をこなすためにプロジェクトに参加しているんじゃなくて、共通のゴールに向かって何かを一緒に産み出していく感じ。
もしかしたら、朝全員の顔を見ること、そして、「おはようございます」で始まり、「今日もよろしくお願いします」で終わる気持ちのよいミーティングを持つ、ということは、チームでする仕事の基本なんじゃないだろうか。と思っている。
以下、参考になる参照など。
- 朝会のパターン:立ってるだけじゃないよ(Martin Fowlerのblikiをkdmsnrが訳した)
- 「プロジェクトファシリテーション実践編:朝会ガイド」(オブジェクト倶楽部, 平鍋)
- 朝会を実践してみて(プログラマの思索)
- 朝会のアンチパターン(気楽に生こうか)
- 朝会のススメ(オブラブ、天野) -- 朝会ビデオの脚本
- 会社を楽しくするために「朝会」で実践してみたコト(Lancers社長日記)
毎年注目している、VersionOne社の
State of Agile Development Survey Results
ですが、昨年の結果が発表されています。この調査はもう6年続いていて、ぼくも毎年追っかけているものです。ここ数年は同じ傾向が続いているのですが、いくつか解説したいと思います。(たぶん連載)
結果のソース⇒http://www.versionone.com/state_of_agile_development_survey/11/
まずは利用されている方法論。これは、昨年とほとんど変わっていなくて、やっぱりScrumとXP+Scrumを足すと70%に近い。Scrumの圧勝だ。XP単独というのは2%まで下がっている。今年の大きな変化は、Kanbanが認知されたことだろう。3%にまで上がってきている。それでもまだ3%というのがScrumの強さを物語る。また、Custom Hybrid(自己流のハイブリッド)というのも多くなっていて、これは、「プロセスは現場で作るもの」、というアジャイルの本質が浸透してきた結果なんじゃないだろうか(だといいな、と思っている)。
次は、使われているテクニック。これは、プラクティスレベルと考えてよいだろう。朝会(デイリースタンドアップ)、イテレーション計画、ユニットテスト、は数年間ずっとトップ。今年気づきは、ストーリーマッピング(N)が認知されたこと!Jeff Patton よかったね!それと、やっぱりKanban(S)だね。前回はAnalog Taskboardの方がKanbanよりも上にあったが、今回逆転している。逆に、BDDがちょっと下がった気がするけど、これはどう読んだらいいんだろう。。。
第一回目はここまで。
ソフトウェア工学の新しい理論化、および復興運動である、SEMATを何回かにわたって紹介してきた。
この最近の状況を見ている。今年2012年、Jan.15日付のIvar Jacobsonらによる Semat -Three Year Vision (PDF)が出ており、この中身(一部)を見た感想。
この中で「言語」と「カーネル」を作ろうとしているが、その成果の一部のモデルが以下。
Jacobsonは、長大なプロセスは今は必要なくて、プラクティスの集合が大事、と言い始めているが、それが表れている。さらに、Way of working(仕事の仕方) という言葉が「プロセス」の代わりに使われていて、それが「プラクティス」の集合であり、それが仕事を「ガイド」する。と読める。
SEMATは基本的な考え方を使って、現在、現場で行われている仕事の仕方を記述したい。また、アカデミアで行われている調査や理論を、表現したい。そのための言語、ボキャブラリを作り始めている。まずは、Scrumをこの枠組みで表現する、ということもやってみているらしい(上記PDF参照)。
また、(Semat自身の)成果のどう評価するのか、という手法も検討に含まれていて、そこに出てくる絵が面白い。
BFH(Better/Faster/Happier)という観点から実践者、産業、そしてアカデミア、の3つグループに本当に価値のあるものにしたい。ということで、このHappier という視点があることは、アジャイルがもたらした大きな影響だと思う。
SEMATについては賛否両論があるが、今後もウォッチして紹介していきたい。現在、ソフトウェア開発の分野が工学として機能していないこと、それが、現場と、産業界とアカデミアの意識の開きに課題があること、まだ、そこを議論するまでに基礎となる言葉と文法自体を、ぼくらが定義できていないこと、は間違いがなく、それに立ち向かう大きなチャレンジとしてみている。
3/16(金)、今年も「アジャイルジャパン2012」が開催されます。今年は大阪での開催。アジャイルの裾野を広げるためにも、大阪を昨年の「サテライト」中継開催から昇格、メイン会場にしました。大阪のみなさん、そしてその他の地区のみなさんも、ぜひ大阪に来てください。ぼくも大阪で参加するつもりです。
これまで、イベントを大阪で開催するのは勇気が要りました。本当に人が集まるのだろうか、、、などなど。でも、今年の大阪は違います。実行委員長の西河さん、そして前川さんは、大阪に拠点を置いて活動しています。それに、アジャイルジャパン2010からお世話になっているOSN(Osaka Study Network)のメンバー、XPJUG関西、PFP関西、要求開発アライアンス西日本、すくすくスクラム瀬戸内(※2/6追記)などなど、大阪のコミュニティーが動き出しました。講演者の中にも、オブ脳の牛尾さん、TDDの細谷さん、品質の森崎先生、チケット駆動の小川さん、オージス総研のオブジェクト指向の重鎮、藤井拓さん、スーパープログラマ山根さん、などなど、多数の大阪勢。それに、東京からは永和システムマネジメントの西村さんや市谷さん、アッズーリの濱さん、サムライ湯島道場の梶浦さん、、、などなどが遠征して迎え撃つ、という、あぁ、全部ご紹介できないですが、とんでもないメンバーが集う会になりそうです。当日はみなさんにお会いできるのを楽しみにしています!
もちろん、基調講演はジョナサン、そして、TOCのゴールドラットコンサルティングの岸良さん、IPAからアジャイルの動向調査発表など、関西の方はぜひ、見逃さずに参加してください。申し込みはこちらから。⇒アジャイルジャパン2012サイト
さて、ぼくなりに見所をいくつか。。。。
- 基調講演のジョナサンについて
『アジャイルサムライ』はみなさん読みましたか?とっても易しくアジャイルのキホンを解説しています。それも、プラクティスレベルとともに、「心構え」として。ぼくがジョナサンに会ったのは本家のAgile2011。偶然にも、アジャイルジャパン2011で基調講演してくれた、リンダライジングに紹介されたんです。ぼくの最初のジョナサンの印象は、「こんなに若くて謙虚な感じの青年がこの本を書いたんだ」、という驚きです。
ぼくは、「日本語版、すごく売れているよ、すごいよ、日本にたくさんのこの本のファンがいて、勉強会も「道場」という名前でいくつもあるよ。ぜひ、日本においでよ!」という話をしました。その後、角谷さんが彼と話をつけてくれ、大阪での基調講演が決まりました。これは、アジャイルサムライの読者への彼からのメッセージ(川口さんが撮ったAgile2011での日本へのメッセージビデオ)
YouTube: Jonathan Rasmusson : message for Japanese "The Agile Samurai" readers
彼の大阪での最初の講演は、「Agile In A Nutshell」で、この講演の概要はAgile2011の、川口さんと藤原さんのレポートがあります。アジャイルってもう一度整理したい方にぴったりです。また、本編は、「アジャイルリーダーシップの背後にある驚くべき科学について」となっています。こちらはぼくもはじめて。楽しみにして聞きたいと思います。
- 日本からの基調講演、岸良さん!
アジャイルジャパンでは、いつも海外から1名、日本から1名の基調講演を準備します。今年は、国際的にTOCに分野で活躍されているゴールドラットコンサルティングの岸良さん。
岸良さんとは、5年来、アジャイルやプロジェクトマネジメントの分野でことある毎にご一緒させてもらっています。『ザ・ゴール』を書いたゴールドラットに見初められ、博士が亡くなるまで、愛弟子として活躍され、現在も博士の遺志を継いでTOCを世界に広める活動をしてらっしゃいます。
岸良さんは、マネジメントに関する多くの本を書いてらっしゃいます。本のイラストは奥さんが描かれているのをご存知でした?また、TOCを応用した科学的な「人」のマネジメントが評価され、公共事業の改革にも取り組まれています(宮崎県のダムの例は有名)。
モチベーションや心理学まで踏まえた、「人」を科学する視点にはいつも驚かされるのですが、さて、今回はどんなお話をしてくれるんでしょうか?!期待が高まります。
さて、今日はここまで。このほかにも、面白いセッションがたくさん。次のブログでは、DEEP AGILE PEOPLE を解説しようと思います。(すごいキャラクターぞろい。。。牛尾さん、川端さん、原田さん、細谷さん、森崎先生という関西にゆかりをもつ、まさに深い人たち。。。。)
もうすぐ、早割りが終了します。申し込みはお早めに。⇒アジャイルジャパン2012サイト
アジャイルのプラクティスを、もう一度解説して行きたいと思います。できるだけ、日本の文脈にあった内容を加えて、実践できるように。また、野中先生に後でコメントを頂く予定。
- ペア・プログラミング
文字通り、2人一組になってペアでプログラミングを行う。XPでの1つのプラクティスに挙げられており、1台のPCを交互に使って行うのが基本形。昨今ではデュアルディスプレーを使ったり、ネットワークと画面共有を使ったりして遠隔地で実践しているチームもある。
コーディングは単純作業ではない。1つ1つの変数や操作の名前を決めることや、その構造、アルゴリズムにいたるまで、多くの設計判断が入り込む、クリエイティブな活動である。また、ミスが起こりやすい作業でもある。刑事やパイロット、スキューバダイビングなど、リスクが高い作業はペアで行うことは現実の世界にはたくさんある。二人でプログラミングを行うことで、リアルタイムにレビューをしていく効果、また、コードの中に注入されていく知識を共有していく効果がある。
別の視点からは、会話をしながら考えを共有することで、チームの一体感も高まるし、よいアイディアが出やすい。実際にキーボードを打っている方を「ドライバ」、横で一歩引いた視点から助言や質問を投げる方を「ナビゲータ」という。ペアの交代は15分くらいの短い間隔で行われ、開発のメリハリ、リズムも生まれる。特に、「テスト駆動開発」(後でリンク)と組み合わせることで、より会話を誘発してプログラミング活動を対話として捉えることもできる。
また、一人で書かれたコードは、独りよがりでその人しか読めないような職人コードになる傾向があり、これを回避する効果もある。すなわち、リアルタイムにレビューしながらコーディングしている、という感覚だ。レビューを後回しにするのでなく、その場で行うことで、設計のエラーをフロントロードできる。
最初の写真はAstahの中国チームの立ち上げ初期に、できるだけ日本のプログラマと中国のプログラマをペアにすることによって、知識を伝達しているところ。
よくある質問:
- 工数が2倍になりませんか?
管理者からは、効率を心配する声があがることが多いプラクティスでもあるが、ペアプログラミングによる工数の増加は2倍ではなく、1.15倍であり、その代わりバグの混入率が15%低下するテストパス率が15%向上するという報告がある。後になってバグを取り除く工数を考えると、効果は高いと言える。また、この質問は、開発行程、テスト行程、などを分けて工数管理している組織から多い。請負契約などを含めて行程が分断されて、部分最適が起こり始めると、全体の品質向上という視点から離れてしまいがち。
- 二人でプログラミングって、集中できますか?
実際にやってみるとわかるのだが、ペアプロは非常に疲れる。脳を酷使しながらコミュニケーションを取るからだろう。ペアプロの机には、チョコレートなどのお菓子を置くことが推奨されている。(写真2では周囲にお菓子を配置)
参考情報:
すべてのプログラミングをペアで行うべきかどうかには、意見が分かれる。Jim Coplienはプログラミング作業だけでなくリスクが大きい作業や逆にクリエイティブな作業はペアで行ったほうが効果的としており、より広くPairwise Work"Developing In Pairs"という言葉を使っている(組織プロセスパターン)。また、ペアプログラミングの研究はLaurie Williamsが大きく貢献しており、書籍『ペアプログラミング』にさまざまな組み合わせ(初心者と上級者のマトリクス)が上げられている。
野中先生への言及ポイント:
マイケル・ポランニーの身体知と場、についてペアプログラミングの解釈をお願い。







ストレス社会との付き合い方
「思いやり経営」のススメ
テレワークが労働者のマインドを変える
求む、クックパッド男子
37歳の常識――我々は一生学び続ける