sandbox

Scala, Android, Architecture, Management, Service Design あたりを主戦場としております

4/9 DDD カンファレンスに参加してきました

先週土曜日、DevLove さんが主催する DDD カンファレンスに参加してきました。

DevLOVE Beautiful Development - ソフトウェアの核心にある複雑さに立ち向かう
http://kokucheese.com/event/index/9530/

ソフトウェア開発への取り組み方を改めて考えさせられる、とても有意義な素晴しいイベントでした。
もう既にまとめは皆さんに書いて頂いているので、遅ればせながら以下にかいつまんで感想を。

技術ではなくビジネスに焦点を


言葉にしてしまえば、当たり前の事だと思います。
システム開発において達成すべきはビジネス上の価値創造であって、どんな技術で実現したかは、ただの手段の話でしかないので。


しかし、"ビジネスに焦点を" というだけではなく、"ビジネスに焦点をあてたコードが書けていたか" という所まで自身に問いかけると、これは全然出来ていないなと。
例えば、陽の巻の渡邊さんが紹介されていた様なクソコードを、過去に自身も書いた事がある様な気がします…w


では、具体的にどの様なコードがビジネスに焦点をあてたコードと言えるのか、という点については、陽の巻の渡辺さんと、増田さんのセッションを見て、若干だけども理解出来たかなぁと。
あとはイベントでの講演者の皆さんの指南を礎としながら、DDD 本を手にとって理解を進めようかなと思ってます。


20110409_DevLOVE「ブレイクスルー体験記」_渡邉健太郎さん
http://www.youtube.com/watch?v=ovkG_sTYOKw


20110409_DevLOVE「実践! ドメイン駆動設計」_増田亨さん
http://www.youtube.com/watch?v=77BTZWq3GiQ

DDD でのモデリングとは


id:t-wada さんのセッションで、今回の様なイベント申し込みを例に、実際にモデリングしてみようぜというブートキャンプがありましたが、自身の経験としては効率性を重視した Transaction Script 的な設計が多かったのもあり、いざ設計してみようとなると、今までの考え方に引きずられ、最初にユースケース洗いだして、サービス層のロジック考えてという様な流れで考えてしまったり、ER 図の様な概念図を書きたくなってしまったりと、結局何をもって DDD でモデリングしたと言えるのか、DDD ではどの様なプロセスでモデリングを行うのか、という所がクリアでなく、悶々としたまま時間が過ぎ去りました。


未だ、上記の様なお題があった時に、どの様な手法でモデリングしていくのかはクリアになっていませんが、これは DDD 本読めという所でもあるかもしれないので、一旦書籍の到着を待ちたいと思います。


20110409_DevLOVE「DDDについて」_和田卓人さん
http://www.youtube.com/user/developlove#p/u/7/QMltFqbwhdw

まとめ


まず、震災後の複雑な状況の中、イベントを開催してくださった DevLove の皆さん、登壇者の皆さん、そして会場を提供下さった Oracle さんに感謝致します。


このイベントのお陰で DDD という考えを、皆さんのお話しを通じて知る事ができ、ソフトウェア設計、実装における考え方として深い示唆を与えて頂きました。


これから DDD 本を実際に読んで、更に理解を深めていきたいと思います。


※目標3人に DDD 本を買わせおすすめします。


エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)