Upgrade to Pro — share decks privately, control downloads, hide ads and more …

事業戦略を理解してソフトウェアを設計する

 事業戦略を理解してソフトウェアを設計する

#jjug_ccc 2025 Spring 発表資料

①事業戦略とソフトウェアシステムの設計
②事業戦略「超」入門
③ソフトウェア設計と事業戦略を結びつける技法

Avatar for 増田 亨

増田 亨

June 06, 2025
Tweet

More Decks by 増田 亨

Other Decks in Programming

Transcript

  1. 大きな泥団子が生まれる3つのシナリオ 9 大きな泥団子 修正 拡張 修正 修正 修正 修正 拡張

    拡張 拡張 拡張 拡張 修正 修正 修正 拡張 修正 シナリオ① 卓越した設計でスタート シナリオ② 最少の設計でスタート シナリオ③ 小さな泥団子でスタート 積みあがるバックログ 無理な日程 度重なる仕様変更 限られたリソース 人の入れ替わり ビジネスの圧力 結果は同じ…
  2. 大きな泥団子の原因と設計の改善方法 10 混在 断片化 分離 集約 重複 一元化 いろいろ同時に考える 異なる関心事は

    別々に考える あちこちを同時に考える 関連が強い関心事は 一箇所に集めて考える あちこちで同じことを考える 一つの関心事は ただ一箇所で考える
  3. 業務領域の種類と設計方針 中核 一般 補完 競争優位 ◎ × × 複雑さ 〇

    〇 × 変化 〇 × × 設計方針 ドメインモデル イベント履歴 既成の解決策 CRUD/ETL 調達方法 内製 購入?模倣? 外注? 19
  4. 業務領域の種類で設計方針を変える 中核 一般 補完 競争優位 ◎ × × 複雑さ 〇

    〇 × 変化 〇 × × 設計方針 ドメインモデル イベント履歴 既成の解決策 CRUD/ETL 調達方法 内製 購入?模倣? 外注? 35
  5. こういう文脈で捉える 40 差別化戦略 ビジネス ルール 業務 ロジック 高業績の持続 独自の価値提案 独自の活動

    排他的選択 活動の決め事 活動を刺激 活動を制約 ビジネスルールに 基づく計算判断 業務特化のデータ型 業務視点の抽象化 具体化 具体化
  6. 42

  7. 設計 判断 さらに解像度をあげると 46 開発者が事業活動を理解して、その理解を設計判断に活かす 事業活動 課題 課題 仕組み 仕組み

    関係者 開発者が理解 トランザクション スクリプト アクティブ レコード ドメイン モデル イベント履歴式 ドメインモデル 値オブジェクト 集約 業務サービス レイヤード ポートと アダプター CQRS Web API メッセージング 送信箱 サーガ プロセス マネージャー イベント駆動型 アーキテクチャ マイクロ サービス データメッシュ トランザクション ロールバック 排他制御 テスト戦略 イベント ストーミング 大きな リファクタリング この本の主題 かつ 今日の話の焦点 (第1章~第4章) (第5章~第16章) (第10章、付録A)