DoorKeeper
http://yokohama-dojo.doorkeeper.jp/events/3959
以下の書籍をターゲットとした読書会なのです。
![]() | アジャイルサムライ−達人開発者への道− (2011/07/16) Jonathan Rasmusson 商品詳細を見る |
場所はいつもの横浜、アットウェアさんです。
参加者は30名、定員MAXだったようで、かなりの盛況!
今回は特別編ということで、スタッフの @terahide27 氏が講師となり、「設計」をテーマにワークショップをやりました。
■導入&ワークショップ
by @terahide27 氏
ちなみに表紙の絵は @s_kic 氏が書いてくださったとのコト。
参加者が協力して創りあげた、という過程が素晴らしいですねー。
しかし、ツンデレなタイトルである。
以下、個人メモ。
■@terahide27 氏の自己紹介:「深夜アニメのカバレッジが90%」 (P.7)
・むむ、今期は豊作だと聞いているが、90%はスゲーな。。。
・ちなみに@makopi23、先週、映画館へ行ってきました。助手が可愛すぎて生きるのが辛い。
定退日なので勤務地から2駅隣の映画館で見てきた。やっぱシュタインズ・ゲートの世界観、カッコええわぁぁ。/劇場版『STEINS;GATE 負荷領域のデジャヴ』予告編 (2:05) #sm20472147 nico.ms/sm20472147
— makopi23さん (@makopi23) 2013年5月22日
・あと「宇宙兄弟」もずっと見てて、よく泣かされてます。エンジニア向けのアニメだと思うんだ。
■「折鶴」の設計書を書け、とのお題(P.11)を参加者全員でやってみるワークショップ
・やべー、設計書を書くどころか、折鶴の作り方ぜんぜん覚えてなかった。
→ @makopi23、折鶴は諦め、紙ヒコーキにチェンジ。実際に折り紙で作ってみてから、設計書を書いてみる。
・いざ折り紙の設計書を書く段階になって、あれ?何をどう書けばいいんだ?と悩みこむ。
・自分が作れないものは設計書も書けない、という事実を再認識した。
■どうだった?(P.12)
・@terahide27 氏曰く、
①「How(どう作るか)に注力しすぎ。What(何を作るか)をもっと考える必要がある。
②いきなりゴールが決まっているものを書かせると、whatを書かずにhowを書いちゃう
■設計ってなに?(P.13)
・自分が思っているる設計と、回りが思っている設計は違う
・ウチの班のディスカッションでは「最初に完成図を書くべき」という意見が出た。
■設計の定義(P.22)
・設計は「どんなものを作るかを考える作業」とここでは定義する。
■共通の枠組みがあったほうが話がしやすい
・工程
・構成要素
・粒度
・アーキテクチャ
■みんな詳しすぎるので視野が狭くなる。
→ 抽象化が大事
■「共通の性質」の例
・P.46は「ツンデレ」という共通の性質がある
・抽象化すると「嫁」になる。(・・・!?)
■共通の枠組みがあったほうが話しやすい
■ドキュメントの役割
①忘れない
記録として残しておく
②分かりやすい
ソース読むより図とか表とかのほうが全体像を掴みやすい
③時空を超える
時間を超える
■相手に合わせたものであることが大事
■設計書を書くのが「設計」作業ではない
■「Coolな折り紙」をチームで作るワークショップ
P.70のスライドのあたり。
制限時間内で、チーム毎にクールな折り紙を作ることになった。
■要件
・複雑
・モチーフが現実のもの
・目新しい
・曲線が混じっている
あと、他のチームが再現できるよう、設計書も作らねばならない。
■ウチのチームで作ったもの
お花!

・・・やべぇ、カッコ良すぎる orz
■工夫したこと
①設計書として、作っているところをiPadで動画撮影した。
②雛形を用意した。(途中まで折っておき、ポイントとなる折り目や切れ目にマジックで指示を入れておいた)
おかげで、他のチームに折り紙を再現してもらった際の完成度は高かった!
■反省点
・他のチームの人に再現してもらう際に、完成済みの折り紙を最初に見せなかったのがダメだった。
(全体像を知ってもらうために、最初に完成物を見せるべき)
■他のチームから出た、ワークショップの感想
・折り紙で「蛙」を表現しようと思った。
→ 情報を言語化できないから蛙を表現できなかった(設計書を書けなかった)
・「飴」を折り紙で表現しようとしたが、全員が「飴」に対し暗黙の共通認識があった。
→ そのおかげで、折り紙で作ることができた
・折り紙で「くらげ」を作ることにしたが、職人技が必要だった・・・orz
→ 作った職人さん本人が他のチームの折り紙を作る役として出て行ってしまったので、
よそのチームから来た人に作り方を示そうにも、誰も再現できなかった
・折り紙で「半分に折る」といったような「パターン」が無かった。
→ パターンが無いと、同じものはできないな、と思った。
■まとめ
■アジャイルサムライの13章「リファクタリング」で、「大変なのはきれいな設計を保ち続けること」と言っている。
■まとめ
・段取り重要
・考えること重要
・伝えること重要
・効率よくしたいね
・記録を残そう
ちなみにウチのチームの机と模造紙はこんなカンジ。

■ビアバッシュでのワンシーン
「ツンデレ」スライド(P.46)の周りに参加者が集まり、品評会をするワンシーン。
みなさま、お気に入りのツンデレキャラについて熱く語るッ!

ちなみに私、この中からだと、右上から2番目の助手が良いでございます。STEINS;GATEは神ゲー。
■参考図書
今回の特別編の参考書です。
![]() | システム設計の謎を解く 強いSEになるための、機能設計/入出力設計の極意 (2013/05/24) 高安 厚思 商品詳細を見る |
出版元であるソフトバンククリエイティブさんからも、この日の特別編に1名参加されていました。
んで、この書籍について裏話とかいろいろ紹介してくださいました。
あと、参加者へ数冊のプレゼントも!ありがとうございます~
まだ新しい書籍ですが、かなり人気は高いそうです。
エンジニアにとって避けて通ることのできない「設計」、改めて学ぶには良い書籍だと思います。
6-2節にはアジャイルの話もあるとのこと。
あと、@terahide27 氏がレビュアーとして、書籍の中にも名前があるそうです。(ココ、重要らしい!)
★感想:
ワークショップで折り紙を作り、その設計書を書く、ということをやったわけなんですが、やっぱ自分が作れないと設計書なんて書けないことを実感。
ソフトウェア開発の世界では、コーディングの経験がないようなSEが書いた設計書を元に実装する、なーんてことが往々にしてあるわけなんですが、上手くいくはずがない。
あと、プログラミング能力が高いからといって、素晴らしい全体アーキテクチャを設計できるかといったら、そうとは限らないわけでもある。
そんな私も、良い設計ができるよう日々修行しているわけであるが、いろいろ考えさせられる1日になりました。
最後に講師の @terahide27 さんはじめ、参加者のみなさんありがとうございました。