ComputerScience,Engineering/아키텍처

DDD, 도메인 주도 설계 첫걸음

TimeSave 2022. 8. 27. 20:57

도메인 주도 설계 첫걸음(위키북스 IT Leaders 시리즈 35)(원서/번역서: [해외]Learning Domain-Driven Design (Paperback)) | 블라드 코노노프 | 위키북스 - 교보문고 (kyobobook.co.kr)

 

도메인 주도 설계 첫걸음 - 교보문고

소프트웨어 아키텍처와 비즈니스 전략의 일치를 위한 핵심 패턴, 원칙, 실? | 소프트웨어 개발은 예전보다 어렵다. 개발자로서 지속적으로 변화하는 기술 트렌드를 따라잡아야 할 뿐 아니라 소

www.kyobobook.co.kr

 


전략적 설계

Part 1-1. 비즈니스 도메인 분석
    a) 비즈니스 도메인
    b) 하위 도메인
        b-1) 유형
        b-2) 비교
        b-3) 경계 식별
    c) 도메인 전문가


Part 1-2. 도메인 지식 발견
    a) 비즈니스 문제
        a-1) 도메인 지식
        a-2) 커뮤니케이션
    b) 유비쿼터스 언어 : 일관성
    c) 비즈니스 도메인 모델
        c-1) 모델
        c-2) 효과
        c-3) 모델링
        c-4) 지속
        c-5) 도구

Part 1-3. 도메인 복잡성 관리
    a) 일관성 없는 모델
    b) 바운디드 컨텍스트 : 경계, 컨텍스트의 범위
    c) 바운디드 컨텍스트 대 하위 도메인
        c-1) 상호작용
        c-2) 경계 : 물리, 소유
    d) 실생활의 바운디드 컨텍스트

Part 1-4. 바운디드 컨텍스트
    a) 협력형 : 파트너십, 공유 커널
    b) 사용자-제공자 : 순응주의자 패턴, 충돌 방지 계층 패턴, 오픈 호스트 서비스 패턴
    c) 분리형 노선
    d) 컨텍스트 맵


전술적 설계

Part 2-1. 간단한 비즈니스 로직 구현
    a) 트랜잭션 스크립트 : 구현, 사용하는 경우
    b) 액티브 레코드 : 구현, 사용하는 경우


Part 2-2. 복잡한 비즈니스 로직 다루기
    a) 도메인 모델

Part 2-3. 시간 차원
    a) 이벤트 소싱
    b) 도메인 모델

Part 2-4. 아키텍처 패턴

    a) 계층형 아키텍처
        a-1) 프레젠테이션 계층
        a-2) 비즈니스 로직 계층
        a-3) 데이터 접근 계층
        a-4) 커뮤니케이션
        a-5) 사용하는 경우

    b) 포트와 어댑터
        b-1) 의존성 역전 원칙
        b-2) 연동
        b-3) 사용하는 경우

    c) CQRS
        c-1) 폴리글랏 모델링
        c-2) 프로젝션
        c-3) 모델 분리
        c-4) 사용해야 하는 경우


Part 2-5. 커뮤니케이션 패턴
    a) 모델 변환
        a-1) 스테이트리스 모델 변환
        a-2) 스테이트풀 모델 변환
    b) 애그리게이트 연동
        b-1) 아웃박스
        b-2) 사가
        b-3) 프로세스 관리자


적용 실무

Part 3-1. 휴리스틱 설계
    a) 바운디드 컨텍스트
    b) 로직 구현 패턴
    c) 아키텍처 패턴
    d) 테스트 전략
    e) 의사결정 트리


Part 3-2. 설계 의사결정
    a) 도메인 변경 : 핵심,일반,지원, 전략, 전술
    b) 조직 변화
    c) 도메인 지식
    d) 성장

Part 3-3. 이벤트스토밍
    a) 누가
    b) 무엇이
    c) 과정
    d) 변형
    e) 사용하는 경우

Part 3-4. 실무
    a) 전략적 분석
    b) 현대화 전략
    c) 실용
    d) 확산


다른 방법론 및 패턴과의 관계

Part 4-1. 마이크로서비스
    a) 서비스
    b) 마이크로서비스
    c) 경계
    d) 인터페이스 압축하기


Part 4-2. 이벤트 주도 아키텍처
    a) 이벤트 주도 아키텍처
    b) 이벤트
    c) 연동 설계

Part4-3. 데이터 메시
    a) 분석 데이터 모델
    b) 관리 플랫폼
    c) 도메인 기준
    d) 제품 관점
    e) 자율성 활성화
    f) 에코시스템 구축
    g) 도메인 주도 설계를 엮기



Part 5. 실제사례


DDD 중심 마이크로 서비스 설계 | Microsoft Docs

 

DDD 중심 마이크로 서비스 설계

컨테이너화된 .NET 애플리케이션용 .NET 마이크로 서비스 아키텍처 | DDD 지향 주문 마이크로 서비스 및 해당 애플리케이션 계층의 디자인을 이해합니다.

docs.microsoft.com

필요한 내용만 추려서 DDD 당장 써먹기 | Popit

 

필요한 내용만 추려서 DDD 당장 써먹기 | Popit

그런 일이 가능할까? DDD 같은 개념서를 다 읽지도 않고, 필요한 내용만 대충 훑어서 써먹는 식 말이다. 못할 이유가 뭐가 있는가? 가능하다. 책을 다 읽는다고 해도 소화한 내용 중에서 당장 응용

www.popit.kr

DDD(Domain-Driven-Design) (velog.io)

 

DDD(Domain-Driven-Design)

D를 아십니까? >DDD라고 불리는 이 용어는 도메인 주도 설계라는 이름의 도메인과 일치하도록 소프트웨어를 모델링하는 데 중점을 둔 소프트웨어 설계 접근 방식이다. 특징 DDD는 계속해서 발전하

velog.io

DDD(Domain Driven Design) - 도메인 주도 설계란? 마이크로서비스의 관점에서 — 천천히 올바르게 (tistory.com)

 

DDD(Domain Driven Design) - 도메인 주도 설계란? 마이크로서비스의 관점에서

객체지향에서부터 도메인 주도 설계를 이해하기 위해서는 객체지향을 먼저 이해할 필요가 있습니다 객체지향에서의 핵심은 뭘까요? 객체지향에서의 핵심은 실세계의 객체(물건, 사람, 주문 ....

huisam.tistory.com

DDD(Domain Driven Design) - Incheol's TECH BLOG (gitbook.io)

 

DDD(Domain Driven Design) - Incheol's TECH BLOG

Bounded Context (바운디드 컨텍스트)

incheol-jung.gitbook.io

DDD 핵심만 빠르게 이해하기 :: 온달의 해피클라우드(Happy@Cloud) (tistory.com)

 

DDD 핵심만 빠르게 이해하기

마이크로서비스의 설계 방법론인 DDD(Domain Driven Design)에 대해 제가 가진 지식과 그간의 경험을 기반으로 정리하였습니다. 이 글을 읽기 전에 먼저 일하는 방식 변화를 이끌고 있는 애자일, 마이

happycloud-lee.tistory.com