SlideShare a Scribd company logo
1 of 26
Download to read offline
ソフトウェア開発のやり方の改善
2020年7月30日(木曜日)
有限会社 システム設計
代表 増田 亨
a better way of developing software
CCSR手法
C : Continuous(継続的)
C : Concurrent(並行的)
SR : Stepwise Refinement (段階的改善)
2020/7/30 2
ソフトウェア開発の現状
膨大な時間とコストをかけて
品質の悪いドキュメントとコードを量産
地図も羅針盤も六分儀も持たず
場あたり的な開発の繰り返し
複雑怪奇
変更がやっかいで危険な
ソフトウェア
2020/7/30 3
ソフトウェアの状況
複雑怪奇
変更がやっかいで危険
全体像がわからない
全体が見通せない
つながりが見えない
つながりが予想外
軸・中心がわからない
大きな固まり
2020/7/30 4
改善の三つの着眼点
開発者が主体的に
➢ 全体像の認識合わせ
➢ つながりを確かめ整える
➢ 軸を強化し、周辺を広げる
コードに責任を持つ
・全体に興味を持つ
・俯瞰図を眺めて、方向と関係を確認する習慣
・俯瞰図を自分で描いて説明する練習
・つながりに興味を持つ
・つながりを確認する習慣
・不要なつながりを取り除く習慣
・軸を中心に考える習慣
・広げるまえに軸を強化する習慣
・広げたら、さらに軸を補強する習慣
この三つに取り組むと、見通しのよい、構造が安定し、変更が楽で安全なソフトウェアを生み出せる
CCSR手法は、この改善活動を現場に導入し実践するための手引きとヒント
2020/7/30 5
改善のアプローチ
① 要件定義・仕様化・実装の継ぎ目をなくす
② ビジネスロジックを軸に組み立てる
③ 値の種類(型)でモジュール化する
2020/7/30 6
① 要件定義・仕様化・実装の継ぎ目をなくす
ふわふわした
要求
複雑怪奇な
実装
質の高い要件定義
しっかり設計された
実装
明確な仕様の記述断片的で
あやしげな
変換ゲーム
つながりの軸
2020/7/30 7
① 要件定義・仕様化・実装の継ぎ目をなくす
質の高い要件定義
しっかり設計された
実装
仕様を明確に記述
RDRA 2.0 ・要件の可視化と認識合わせ
・つながりによる整合性
Javaで記述
JIGで可視化
・RDRAモデルとの直接的なマッピング
・ソフトウェア仕様を型式的に記述
・IDEで入力補完・リファクタリング・インスペクション
実装パターン
フレームワーク
・型の定義をそのままクラスとして実装
・ビジネスロジックの実装パターン
・ドメインオブジェクトと外部形式のマッピングメカニズム
2020/7/30 8
② ビジネスロジックを軸に組み立てる
三層+ビジネスロジック
プレゼンテーション層
アプリケーション層
データソース層
ビジネスロジック
ビジネスルールの
オブジェクト表現
ドメインオブジェクトの永続化
記録と参照
計算判断の実行
外部形式と
ドメインオブジェクトの
マッピング
2020/7/30 9
② ビジネスロジックを軸に組み立てる
アプリケーション
ビジネス
ロジック
事業活動
ビジネス
ルール
ビジネスモデル
事業方針
つながりで理解する
ビジネスルールの理由を
ざっくりと理解する
要件定義の軸として
ビジネスルールに
焦点を合わせる
ビジネスルールの
オブジェクト表現
ビジネスルールで扱う
値の種類(型)に注目して
仕様化と実装を行う
2020/7/30 10
③ 値の種類(型)でモジュール化する
ファクト ロジック リザルト
ビジネスで起こったことや
現在の状態を表現する
さまざまな値(型)
計算・判断の式
計算・判断の結果を表現する
さまざまな値(型)
2020/7/30 11
ビジネスルール表現の3要素
カプセル化
③ 値の種類(型)でモジュール化する
ファクト ロジック リザルト
ビジネスで起こったことや
現在の状態を表現する
さまざまな値(型)
計算・判断の式
計算・判断の結果を表現する
さまざまな値(型)
メソッドの返す型メソッドフィールドと引数
ビジネスルールをカプセル化して
アプリケーション固有の型を定義
→ 変更が楽で安全になる
2020/7/30 12
2020/7/30 13
CCSR手法の試行・導入・実践
手法とツール
CCSRハンドブック
初伝・中伝・奥伝
パターンカタログ
俯瞰図・詳細図
要件定義ツール
Enterprise Architect
+ RDRA アドイン
仕様記述ツール
IntelliJ IDEA
+ JIG プラグイン
参照実装
・図書館システム
・ビジネスロジックパターン
・オブジェクトマッピング
プロセスの概要
技法の解説
実践のヒント
githubで公開中
ビジネスプロセス、
システム機能、
型の設計パターン
入力補完
可視化
リファクタリング
インスペクション
ブラウザで利用
AppStream
2020/7/30 14
CCSR 導入と実践の支援
正しいものを正しく作る塾
第2シーズン 9月開講
(個人・法人)
CCSR ラーニング
リモート稽古
(個人)
ワークショップ
(法人)
OJT(実案件)
(法人)
稽古相手と稽古の場の提供
(マンツーマン/小人数)
2020/7/30 15
CCSR手法の導入と実践
C : Continuous(継続的)
C : Concurrent(並行的)
SR : Stepwise Refinement (段階的改善)
2020/7/30 16
ソースコード全体
開発活動全体
個人のスキル
チームの振る舞い
CCSR手法
ハンドブックとパターンカタログの紹介
2020/7/30 17
要件定義・仕様化・実装が
連動した開発活動
ハンドブックは、このプロセスで
開発を進めるための技法や指針
を説明
2020/7/30 18
事業活動モデルの基本要素
アクタ
リソース
プロセス
・意思のある行動主体
・嗜好のある判断主体
・行動履歴
・顧客
・サプライヤ
・従業員
・物品
・場所
・人
・時間
・イベント連鎖
・約束と履行
・予定と実施
・現在のリソース
・将来のリソース
・起きたこと
・起きるべきこと
2020/7/30 19
売買契約の
獲得
調達の予定
提供能力の
維持
・注文
・予約
・販促
・引合
・条件提示
・合意 契約の履行
調達の進捗
・物品
・サービス
・仕入
・生産
・提供
・回収
・受入
・支払
顧客支援の
活動
6つの主活動
・相談
・連絡
・報告
・納期回答
・提供可否
・利用可否
2020/7/30 20
管理番号の発番
(registration) 中核機能
アカウント
open()
close()
suspend()
isAlive()
・アクタ
・リソース
・プロセス
・値(value)の変化の発生
・状態(status)の変化の発生
起きたこと or 起きるべきこと
イベント発生の
記録
履歴から
状態の導出
・現在 or 将来の値(value)の導出
・現在 or 将来の状態(status)の導出
ビジネスロジック
(計算・判断)
値/状態を使った
ビジネスルール基づく計算・判断通知(notification)
備考(remarks)の記録・参照
パフォーマンス測定 監査ログ
実体化(materialize)
可視化(visualize)
・締め処理
・請求
・査定
・一覧(選択・順序)
・詳細表示
システム機能のモデル
事業活動が異なっても、
これらの要素の組み合わせで実現する
連携(invocation/queueing)
認可
2020/7/30 21認証
ビジネスロジックを表現する値の種類と操作のパターン(型の設計パターン)
金額 数量 単位 換算率
日付 日数 期間
帯域
(band)
時刻 時間数 時間帯
識別番号
・ビジネスルールを記述するための基本語彙
・型(もっとも軽量な形式手法)で仕様を記述する(手続き的プログラミングをやらない)
・引数と返す型を明示して、契約による設計を徹底する(防御的プログラミングをやらない)
・すべてイミュータブル(不変)にして挙動を安定させる(テストを減らす)
生成・比較・文字列表記
加減乗除・比較・min/max・文字列表記
加減乗除・比較・min/max・文字列表記
区分 種類 タイプ カテゴリ 分類・一致/不一致・分岐処理
識別名
グループ リスト セット
マップ
(写像)
集合操作・集約演算・検査
2020/7/30 22
要件定義と仕様記述の
可視化サンプル
2020/7/30 23
RDRA 要件定義:軸となるビジネスルールの可視化
ユースケース複合図状態遷移(ユースケース付き)
2020/7/30 24
ソースコードから実装の中核を可視化
application/service/* domain/model/*
2020/7/30 25
JIGでソースコードから自動生成
三層+ビジネスロジックの可視化
プレゼンテーション層
presentation/*
アプリケーション層
application/*
データソース層
datasource/*
ビジネスロジック層
domain/model/*
2020/7/30 26
JIGでソースコードから自動生成

More Related Content

What's hot

ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDDドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD増田 亨
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門増田 亨
 
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門増田 亨
 
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計するドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する増田 亨
 
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装までドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで増田 亨
 
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方増田 亨
 
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8Koichiro Matsuoka
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方増田 亨
 
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント増田 亨
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ増田 亨
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計増田 亨
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring増田 亨
 
ドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かうドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かう増田 亨
 
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かうビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう増田 亨
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し増田 亨
 
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみようドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう増田 亨
 
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドラインドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン増田 亨
 
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primerオブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer増田 亨
 
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2増田 亨
 

What's hot (20)

ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDDドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
 
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
 
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計するドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
 
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装までドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
 
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方
 
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
ドメイン駆動設計 モデリング_実装入門勉強会_2020.3.8
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
 
ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
 
ドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かうドメイン駆動設計 複雑さに立ち向かう
ドメイン駆動設計 複雑さに立ち向かう
 
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かうビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
 
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみようドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
 
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドラインドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
 
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primerオブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
 
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2
 

Similar to ソフトウェア開発のやり方の改善

CI to CD、ソフトウェアの継続的アプローチ
CI to CD、ソフトウェアの継続的アプローチCI to CD、ソフトウェアの継続的アプローチ
CI to CD、ソフトウェアの継続的アプローチYou&I
 
企業向けUXデザイン導入のポイント
企業向けUXデザイン導入のポイント企業向けUXデザイン導入のポイント
企業向けUXデザイン導入のポイントRoy Kim
 
2019 fy social Entrepreneurship_visual report
2019 fy social Entrepreneurship_visual report2019 fy social Entrepreneurship_visual report
2019 fy social Entrepreneurship_visual reportjun_suto
 
2019FY_Socialentrepreneurship_visual report.pdf
2019FY_Socialentrepreneurship_visual report.pdf2019FY_Socialentrepreneurship_visual report.pdf
2019FY_Socialentrepreneurship_visual report.pdfjun_suto
 
200824 SysML Tutorial
200824 SysML Tutorial200824 SysML Tutorial
200824 SysML Tutorialopenrtm
 
2024年度新入社員研修オープン講座_基本資料20231027.pptx
2024年度新入社員研修オープン講座_基本資料20231027.pptx2024年度新入社員研修オープン講座_基本資料20231027.pptx
2024年度新入社員研修オープン講座_基本資料20231027.pptxssuser06bf461
 
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-Concent, Inc.
 
RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1openrtm
 
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~Noriko Kawaguchi
 
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考えるソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える増田 亨
 
ソフトウェアテストの最新動向
ソフトウェアテストの最新動向ソフトウェアテストの最新動向
ソフトウェアテストの最新動向Keizo Tatsumi
 

Similar to ソフトウェア開発のやり方の改善 (13)

OP2024
OP2024OP2024
OP2024
 
CI to CD、ソフトウェアの継続的アプローチ
CI to CD、ソフトウェアの継続的アプローチCI to CD、ソフトウェアの継続的アプローチ
CI to CD、ソフトウェアの継続的アプローチ
 
企業向けUXデザイン導入のポイント
企業向けUXデザイン導入のポイント企業向けUXデザイン導入のポイント
企業向けUXデザイン導入のポイント
 
2019 fy social Entrepreneurship_visual report
2019 fy social Entrepreneurship_visual report2019 fy social Entrepreneurship_visual report
2019 fy social Entrepreneurship_visual report
 
2019FY_Socialentrepreneurship_visual report.pdf
2019FY_Socialentrepreneurship_visual report.pdf2019FY_Socialentrepreneurship_visual report.pdf
2019FY_Socialentrepreneurship_visual report.pdf
 
OP2024new
OP2024newOP2024new
OP2024new
 
200824 SysML Tutorial
200824 SysML Tutorial200824 SysML Tutorial
200824 SysML Tutorial
 
2024年度新入社員研修オープン講座_基本資料20231027.pptx
2024年度新入社員研修オープン講座_基本資料20231027.pptx2024年度新入社員研修オープン講座_基本資料20231027.pptx
2024年度新入社員研修オープン講座_基本資料20231027.pptx
 
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-
DXとデザイン思考 -実践にみる、DX推進におけるデザインの有用性と可能性-
 
RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1
 
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~
XDDPプラクティス路線図とパターン・ランゲージ ~時を超えた派生開発の道~
 
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考えるソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える
 
ソフトウェアテストの最新動向
ソフトウェアテストの最新動向ソフトウェアテストの最新動向
ソフトウェアテストの最新動向
 

More from 増田 亨

事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述増田 亨
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来増田 亨
 
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイルドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル増田 亨
 
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイルプロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル増田 亨
 
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチレガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ増田 亨
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方増田 亨
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう増田 亨
 
DDD sample code explained in Java
DDD sample code explained in JavaDDD sample code explained in Java
DDD sample code explained in Java増田 亨
 
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指してアジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して増田 亨
 
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かすドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす増田 亨
 
SoR 2.0 summary
SoR 2.0 summarySoR 2.0 summary
SoR 2.0 summary増田 亨
 
毎日が越境だ!
毎日が越境だ!毎日が越境だ!
毎日が越境だ!増田 亨
 
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築増田 亨
 
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる増田 亨
 
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイルドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル増田 亨
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則増田 亨
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則増田 亨
 

More from 増田 亨 (18)

事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
 
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイルドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
 
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイルプロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
 
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチレガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かうソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
 
DDD sample code explained in Java
DDD sample code explained in JavaDDD sample code explained in Java
DDD sample code explained in Java
 
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指してアジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して
 
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かすドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす
 
SoR 2.0 summary
SoR 2.0 summarySoR 2.0 summary
SoR 2.0 summary
 
毎日が越境だ!
毎日が越境だ!毎日が越境だ!
毎日が越境だ!
 
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築
 
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる
 
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイルドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
 

ソフトウェア開発のやり方の改善