週末DDDトーク(3月第一週)

DDDについてのトークを見かけたのでまとめました。
1
かわべ たくや @kawakawa

"プチ"ドメイン駆動設計導入してみて佳境迎えているけど、プログラマー側視点から見ると、分業化がしやすい。ドメイン毎に小さいAPIを作っている感じ。 ・・・ただし今、結合試験でパフォーマンス問題に悩まされている。 コアドメインに注力できなかったのが原因かな。

2015-03-06 12:33:46
増田 亨 @masuda220

@kawakawa パフォーマンス問題は、ドメイン駆動設計では悪くない兆候だと思います。改善のリファクタリングに取り組むわけですが、その時も、テクニカルな改善よりも、モデルが間違っていないかの検討が大切かと。業務的に間違ったことをやろうとしているから遅いのではないか?

2015-03-06 13:16:52
けんじ_最新_コピー @fukanoya

@masuda220 @kawakawa 業務的に間違った事とありますが、もし業務自体が陳腐化している部分がある時、業務フローを再検討するのは難しい時もあると思いますが、対処はどうされますでしょうか? 横からで本当にすいませんがご助言頂ければ幸いです。

2015-03-07 21:45:25
増田 亨 @masuda220

@fukanoya @kawakawa 業務的に間違っている、というのは業務の手順や構造と、処理の順番や構造がかけ離れていることを意図していました。わかりにくかったですね。すみません。業務フローや業務ルールがあまりにひどい場合は、改善を提案するようにしています。ダメ元で w

2015-03-07 21:53:42
HARADA Kiro @haradakiro

@masuda220 @fukanoya @kawakawa そこで、ちょっとずつ機能をリリースして、業務がどう動くかを観察できるのが、DDD/Scrumの一番のメリットだと思ってます。業務を変えられる可能性を、ソフトウェアの力を借りて試す。

2015-03-07 21:59:34
けんじ_最新_コピー @fukanoya

@haradakiro @masuda220 @kawakawa 原田さん DDD/Scrumで業務を変えられる可能性をソフトウェアの力を借りて試す ワーク受けたのでに、そこまで考えた事もなかったです。ありがとうございます。

2015-03-07 22:26:20
HARADA Kiro @haradakiro

@fukanoya @masuda220 @kawakawa あのワークはまだぜんぜん完成に遠いので、また懲りずにお付き合いください。

2015-03-07 22:55:57
かわべ たくや @kawakawa

@haradakiro @fukanoya @masuda220 中々返答できずスミマセン。今回のパフォーマンス問題の中心は、通信がボトルネックで一定数以上負荷がかかると通信速度が極端に遅くなるということです。しかし原因はハードではなく、ソフトにあったという処がミソかなと。

2015-03-07 23:58:35
かわべ たくや @kawakawa

@haradakiro @fukanoya @masuda220 ドメインに詳しい人は、通信が爆発的に増える可能性は事前に認知していたが、それが通信(API)担当者と共有できていなかったのが直接の原因ですが・・・「知ってはいたが認識が及ばなかった」に近いかなと。悩むところです。

2015-03-08 00:02:44
増田 亨 @masuda220

@kawakawa @haradakiro @fukanoya ユビキタス言語を使った意図伝達という文脈だと、「爆発的」という言葉が出てきた時に、その曖昧性に敏感に反応して、もっと具体的な言葉への言い換えを意識的にやってみる、とかかなあ。

2015-03-08 08:23:28
かわべ たくや @kawakawa

@masuda220 @haradakiro @fukanoya 有難うございます。そうですね。コアドメインに全員で取り組めば、だれか1人は「爆発的」という言葉の意味に疑問を持つ人は出たかもしれません。もしくはコアドメインだけ早めにリリースすれば気づけたかもしれません。

2015-03-08 08:52:54
かわべ たくや @kawakawa

@masuda220 @haradakiro @fukanoya 今回は、分業しやすいからとドメインごとに進める危険性を知ることができました。それにまして、DDDはウォーターフォールと相性問題も改めて知ることができましたwww。

2015-03-08 08:55:51
増田 亨 @masuda220

@kawakawa @haradakiro @fukanoya やって見たからこそ、わかること、学べることって、たくさんありますよね。

2015-03-08 09:30:11
かわべ たくや @kawakawa

@masuda220 @haradakiro @fukanoya はい、ほんとそうだと思います。DDDでも説かれていますが、FeedBackLoopの重要性はヒシヒシと感じます。 ウォーターフォールだとモデル実装⇒検証の期間がやはり長くなりますね。

2015-03-08 10:14:00
増田 亨 @masuda220

@kawakawa @haradakiro @fukanoya 「問題が発覚した時には手遅れ」を、どうやって防ぐかですよね。ウォーターフォールで上流でがんばればそれが防げるケースって、ビジネスや技術が相当枯れて固定的な状況だけ。でも、いまどきそんな状況はないですよね。

2015-03-08 10:19:05
けんじ_最新_コピー @fukanoya

@masuda220 @kawakawa @haradakiro 私の経験上での話ですが、上流行程に何かしらのチエックリストがあれば少し改善されるかも。SIで常駐作業している時、基本設計レビュー議事録見たりしますが、参加者の暗黙知による指摘がほぼ全てに感じます。

2015-03-08 10:41:26
増田 亨 @masuda220

@fukanoya @kawakawa @haradakiro レビュー自体には参加していない? SIモデルだと、開発者がそういう場で会話に参加するっていうことはないんでしょうかねえ。

2015-03-08 10:47:29
けんじ_最新_コピー @fukanoya

@masuda220 @kawakawa @haradakiro 言葉が足りませんでした。自社からSIに常駐させられて詳細設計以降をする時です。ないと言えばないかもWFで行程終わった扱いw。担当者に直接聞きますがレビュー議事録に設計の経緯やコンセプトを拾える事が多いです。

2015-03-08 11:05:18
増田 亨 @masuda220

@fukanoya @kawakawa @haradakiro ああ、そういう状況なんですね。そうやって経緯やコンセプトを読み取ってもらえれば、議事録も、役に立ちますね。もう20年くらい、そういう現場からは離れちゃったので、実感がありませんが。

2015-03-08 11:08:31