2025/02 28

도메인 주도 설계의 필요성

도메인을 중심으로 SW 설계1. 우리가 필요한 이유도메인을 명확하게 구분하고 객체 간 관계를 올바르게 설계하기 위해JPA를 효과적으로 활용하기 위해기술 부채를 줄이기 위한 선행 작업DDD에서 필요한 개념을 익히고, 프로젝트에 적용할 수 있는 최소한의 기준을 마련하기 위해목차DDD의 바운디으 컨텍스트 이해DDD의 애그리거르(루트 이해)도메인 관점으로 설계 그 결과, 같은 객체간 연관관계가 맺어진다면 도메인관 유지보수 뿐만 아니라 확장성이 쉽지 않게 된다.종속적인 관계 - 영속성 전이(Cascade)가 가능생명주기가 같으면 종속적인 관계독립적인 관계는 서로 간의 영향을 주지 않아야 한다.생명주기가 다르면 독릭접인 관계우리의 도메인이 확장되어 복잡하다면...?복잡하다면 보통 계층적인 구조를 가지고 시작한다. ..

CHAP01. 프로젝트 개인 회고

개인 회고 템플릿 (SWOT)🔹 SWOT 분석이란?Strengths (강점): 프로젝트에서 잘한 점Weaknesses (약점): 부족했던 점Opportunities (기회): 배울 기회가 있었던 부분Threats (위협): 나의 성장을 방해한 요소📝 프로젝트 개요프로젝트명: FlexRoute ['유연성(Flexibility)'과 '경로(Route)'을 가지는 아키텍처]진행 기간: 25.02.12 ~ 25.02.26역할: 팀장맡은 도메인 - Store, Reivew, Category목표필수 기능 도메인 구현모놀리식 아키텍처면서 4계층으로 구현MSA를 염두에 두고 각 도메인 독립성 확보도전 과제 달성📊 개인 SWOT 분석✅ 1. Strengths (강점 - 내가 잘한 점)💪 프로젝트에서 나의 강점이 ..

Chap.01 : Project Day 10 - Scrum

장소 : ZEP 참여자 : 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  결과물 산출물 제출2. 뒷정리 및 제출 후 확인 전일 작업각 도메인 별로 통합테스트 및 단위테스트 구현중간 배포 확인결과물 산출 정리 - API 명세서 / 테이블 명세서 수정, 테스트 확인, 피피티 양식 틀 구현, README.md 작성각 도메인 별로 테스트 코드 수정 및 테스트 금일 스크럼 정리 및 진행 상황 보고테스트 마무리최종 배포최종 결과물 정리 및 결과물 제출  내일 작업발표

Chap.01 : Project Day 9 - Scrum

장소 : ZEP 참여자 : 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  테스트 진행 상태 확인2. 완료시점 마무리 준비 전일 작업(주말) 각 도메인 별로 테스트 코드 작성 및 기능 코드 수정작업 진행금일 스크럼 정리 및 진행 상황 보고각 도메인 별로 통합테스트 및 단위테스트 구현중간 배포 확인결과물 산출 정리 - API 명세서 / 테이블 명세서 수정, 테스트 확인, 피피티 양식 틀 구현, README.md 작성각 도메인 별로 테스트 코드 수정 및 테스트  내일 작업결과물 산출 정리 및 제출

Chap.01 : Project Day 8 - Scrum

장소 : ZEP 참여자 : 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  각자 담당 도메인 개발 현황 점검2. 테스트 진행 상태 확인3. 문제점 해결 혹은 구현 예정 전일 작업각자 도메인 별 기능 개발 완료통합 및 깃허브 Merge 진행 금일 스크럼 정리 및 진행 상황 보고각자 담당 도메인 개발 현황 점검정민수현재 진행 사항깃허브 PR 및 Merge통합 테스트 구현 중추가 문제 해결기획 및 설계 발표 구상테스트 및 배포 일정, 도전과제 체크 노현지현재 진행 사항테스트 코드 구현 중추가 문제 해결 사항JPA Auditing 적용 염금성 현재 진행 사항단위 테스트 및 통합 테스트 코드 구현 중추가 문제 해결이후 시큐리티 환경에서 테스트를 위한 관련 파일 작업 예정 이지언현재 진행 사항WebClient..

Chap.01 : Project Day 7 - Scrum

장소 : ZEP 참여자 : 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  각자 담당 도메인 개발 현황 점검2. 테스트 진행 상태 확인3. 문제점 해결 혹은 구현 예정4. 발표 관한 논의 (가볍게 진행) 전일 작업각 도메인 개발 / 추가 및 수정 작업 점검 및 피드백각 도메인별 테스트 코드 진행 금일 스크럼 정리 및 진행 상황 보고각자 담당 도메인 개발 현황 점검정민수현재 진행 사항각 도메인 기능 구현 완료 - 가게, 리뷰코드리뷰 받고 마무리 수정 진행 상태단위테스트 구현 완료각 도메인별 단위테스트 구현 완료리뷰 클라이언트 구현리뷰 집계하여 StoreServie에서 집계 합산 가능토록 구현추가 문제 해결통합 테스트 구현User쪽 인증받아서 진행 노현지현재 진행 사항각 도메인 기능 구현 완료 - 유저..

Chap.01 : Project Day 6 - Scrum

어제 한일, 오늘 할일,  내일 할일장애물 개선 장소 : ZEP 참여자 : 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  각자 담당 도메인 개발 현황 점검2. 문제점 해결3. 개발 진행 마무리 결정 전일 작업각 도메인 개발 / 추가 및 수정 작업 점검 및 피드백각 도메인별 테스트 코드 진행 금일 스크럼 정리 및 진행 상황 보고각자 담당 도메인 개발 현황 점검정민수현재 진행 사항리뷰 집계리뷰 집계 업데이트 및 조회 기능은 구현 완료합산 데이터 받아오기 기능은 진행 중테스트단위 테스트는 대부분 구현 완료통합 테스트는 추후 구현 예정 추가 문제 해결예외 핸들러 개선예외 상황에 대한 핸들러 추가 및 수정 진행 중비즈니스 로직 테스트주요 비즈니스 로직 중심의 테스트 코드 작성 권장 (이지언의 cart 테스..

Chap.01 : Project Day 5 - Scrum

어제 한일, 오늘 할일,  내일 할일장애물 개선 장소 : ZEP 참여자 : 서동우(튜터), 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  각자 담당 도메인 개발 현황 점검2. 문제점 해결3. 개발 진행 마무리 결정 어제 작업각자 도메인 개발 / 추가 및 수정 작업 점검개발 진행 마무리 결정 및 테스트 진행일 결정 (관련 사항은 노션으로 확인)각 문제점 해결 도출 금일 작업각자 담당 도메인 개발 현황 점검  정민수현재 진행 사항 OrderId 제거 : 필요 없으므로 제거 처리ResponseDto 수정 : 프라이빗 접근 제어자 수정가게 삭제 처리 변경 : 실제 삭제 대신 deletedAt 플래그를 true로 설정 후 반환하도록 변경URL 수정 : {id} → {store_id} 로 변경, API 엔드..

Chap.01 : Project Day 4 - Scrum

Ch.1 AI 활용 비즈니스 프로젝트어제 한일, 오늘 할일,  내일 할일장애물 개선 장소 : ZEP 참여자 : 서동우(튜터), 정민수, 염금성, 노현지, 이지언 스크럼 진행1.  각자 개발 진행 사항 확인2. 문제점 해결3. 개발 진행 마무리 결정 및 테스트 진행일 결정 어제 작업주말 간단하게 개발 진행 사항 확인도메인 정의 작성Getter / Setter 사용여부 확인UUID 사용 전략이 다양하다 - 평일 스크럼으로 결정관리자, 가게 주인 상세조회 권한 확인금일 작업각자 개발 진행사항 보고 도메인 정의 (책임)추가각 도메인을 역할, 협력(연관관계), 책임 기준으로 정의합니다.예를 들어, 주문 도메인에서는 상품이 주문할 상품에 대한 책임을 집니다.주문, 주문아이템, 상품 등이 서로 협력하며, 어떤 액터..

03. Git Branch 전략 (Git flow)

브랜치 전략이란여러 개발자가 동시에 작업할 수 있도록 소스코드를 효율적으로 관리하는 방법이다.주요 브랜치 전략Git-flowGitHub-flowGitLab-flow1. Git-flow사용 시기 : 중대형 프로젝트나, 배포 주기가 명확하고 여러 기능을 병렬로 개발해야 할 때 언제 쓰나?여러 개발자가 동시에 작업하는 대규모 프로젝트에서 유용버전 관리가 명확하고, 각 단계별로 안정적인 배포가 요구될 때 사용main (master): 배포 가능한 안정된 코드develop: 새로운 기능 개발이 이루어지는 브랜치feature: 특정 기능 개발을 위한 브랜치. develop에서 분기하여 작업release: 배포 준비가 완료된 버전의 브랜치. QA와 버그 수정을 진행hotfix: 배포된 버전에서 발생한 긴급 버그를 수..