DDD 로 프로젝트 시작하기(수박겉핥기)

wally·2022년 6월 14일
0

1. 역할 분담 및 주제 설정

  1. 팀원 역할 분담
  • scrum master
  • product master
  • developers
  1. 주제 설정 (예시 : 나이키 응모 사이트)

2. 시나리오 및 ERD 생성

  1. 시나리오 작성
  • 회원가입, 로그인, 상품을 보고 응모를 하고 당첨이 되는 전체적인 메인 로직으로 작성
  1. 주요 도메인 도출 (회원, 상품, 응모)

5. 시나리오 기반의 도메인 객체 상세화 (ERD 혹은 객체)

3. DDD - event storming

마이크로서비스 개발을 위한 Domain Driven Design

  1. DDD - event storming 을 통한 시나리오 고도화
  • command, event, external 를 사용
  • 각 도메인에 존재하는 시나리오 생성
  • 예외 상황까지 고려
  1. DDD - event storming 의 결과물을 바탕으로 aggregate 들의 domain 경계를 나눈다.

8. DDD - 컨텍스트 매핑

9. DDD - SNAP-E 를 통해 risk 및 API 작성

  1. DDD - risk 작성

  2. 시나리오 바탕으로 도메인별 기능 명세

4. git 및 협업 툴 설

  1. git repository 설정
  • access 설정
  • issue template 설정
  • PR template 설정
  • project(선택)
  • milestone 설정
  1. 일정관리 툴 결정
  • notion
  • git project
  • Jira
  1. issue 에 기능들 추가한 후에 스프린트 설정 후 to do 에 issue 할당

5. 프로젝트 setting

  1. 프로젝트 설정을 위한 설정
  • 프로젝트 설계 (멀티 모듈, MSA)
  • 의존성 (라이브러리) 결정
  • 패키지 구조 결정
  • db 결정
  • 코드 컨벤션 결정
  • commit 컨벤션 결정
  • 기술스택
  • delete 방식
  • ERD 최종 결정(데이터 타입 등 결정)
  1. 프로젝트 설정
  • 의존성 결정
  • 도메인 패키지 분리
  • 공통 로직 생성
    • 공통 엔티티
    • 예외처리
    • Api response
  1. 일정에 맞춰 개발 진행
profile
클린코드 지향

0개의 댓글