패스트캠퍼스 챌린지 26일차

도메인 주도 설계 개요(DDD) 및 기존(전통적) 방법론 소개

기존 개발 프로세스

기획자

- 사업기획 

- 서비스기획

- 요구사항 정의

마케터 

- 사업기획

- 지표 관리

- 아이디어 제안(기획자에게 추가적인 아이디어 제안)

개발자

- 설계 및 구현(기획자와 마케터가 구상해 놓은 것을 실제로 구현) -  DB의 구조는 어떻게? 언어는 뭘로? 보안은 어떻게? 서버는 어떻게? 등을 정의. 

- 유지보수

디자이너

- 페이지 및 배너 디자인

=> PM이 이러한 인원의 트러블을 조율하고 일정에 차질이 없도록 관리하는 사람 - PM


=> 해당 인원들을 통해서 하기와 같은 업무 프로세스를 수행

기획/디자인/마케팅에서 전체적인 프로세스

  1. 시장조사(IF 시장성이 있다면 서비스 기획)
  2. 서비스 기획
  3. 베타 서비스 개발
  4. 마케팅(소규모) - User Feed Back바탕으로 기획 수정
  5. 서비스 기획
  6. 마케팅(소규모)...반복

개발자 입장의 프로세스

전체적인 요구사항 => 설계 => 구현 => 마케팅 => 수정된 요구사항 => 설계 => 구현 => 반복...

- 기획과 개발에서 각자의 애로 사항 발생 - 소프트웨어 개발과 도메인 모델(기획)과의 불일치 발생

- 결론적으로 도메인을 추상화하여 모델을 만들고 모델을 실체화하여 소프트웨어를 만들기까지 어려움이 발생

: 의사소통에서 많은 loss발생

참고) 도메인: 실제 서비스 / 모델은 서비스를 개발자가 구현을 하기 위해 간략화한 설계도


해결방안

DDD

1. 보편언어 사용

도메인에 대한 어휘를 이해관계자(기획자, 개발자, 분석가)들이 모두 이해할 수 있는 공통 언어로 정의. 

2. 모델 주도 설계

도메인과 모델의 간극을 최소화

분석/설계/구현의 모든 단계를 관통하는 하나의 모델을 유지

=> 의사소통이 좀 더 잘 되도록 하자!

도메인의 복잡성, 즉 소프트웨어의 복잡성을 해결하기 위해서는 의사소통을 잘 되도록 해야 한다. 

 

DDD(전략적 설계)

  • BROAD하게 비즈니스에 맞도록 맞게 설계하는 것 
  • 서비스 안에서 일어 날 수 있는 모든 상황(Context)을 고려 - Event Storming(주문, 주문 취소, 배송 등등등)
  • 이것들을 바탕으로 각 Context 그룹핑
  • 왜 그Context 룹핑?: 하나하나 Context를 설계하기에는 너무 어려움. 어느 정도 추상화 하기 위해 영향으로 구분. 
  • Bounded Context
  • 컨텍스트 맵핑을 통해 Bounded Context간의 관계를 정의

=> 최종적으로 도메일 모델을 생성. 

=> 도메인 모델: 일종의 설계도로 서비스의 다양한 기능들을 간략화해서 추상화한 설계도. 

=> 여러가지 Context를 분리하고 Context mapping으로 연결하고 분리와 연결한 기능을 가지고 있음. 

예)

맞춤형 AI 문제 추천 앱

  1. 아이가 먼저 진단 테스트(Diagnostic test)를 봐서
  2. 레벨을 진단(Level(by part)). 즉, 아이의 수준을 진단 한 다음
  3. 어떤 부분에서 취약점이 있는 지 판단하여
  4. 판별된 Level을 바탕으로 Custom problem set, 즉 유사한 문제를 추천. 
  5. 학생이 문제를 풀면 거기서 Wrong Prob. 를 통해 결과물을 바탕으로 
  6. 다시 Level(by part)로 Level을 진단하고 Custom problem set을 생성
  7. 최종적으로 Level을 통해 백분위 - Predicted Points - 를 계산하고 어떤 부분을 집중적으로 봐야 할 지 알기 위해 Custom Course를 추천

DDD(전술적 설계)

- 전략적 설계보다 전략 안에서 세세하게 모델링하는 것

- 개발방법론이 아닌 일종의 철학. 

 

지금까지 DDD의 철학에 대해서 알아 보았는데, 의사소통만 DDD가 쉽다 뿐이지 솔직히 개발자가 개처럼 일한다는 건 DDD나 뭐나 똑같은 것 같다. 그래서 강의의 짤 인증샷과 함께 오늘은 -끝-

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성 되었습니다.

#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #한 번에 끝내는 AWS 인프라 구축과 DevOps 운영 초격차 패키지 Online!

https://bit.ly/3FVdhDa

 

수강료 100% 환급 챌린지 | 패스트캠퍼스

딱 5일간 진행되는 환급챌린지로 수강료 100% 환급받으세요! 더 늦기전에 자기계발 막차 탑승!

fastcampus.co.kr

 

 

+ Recent posts