2주차 도메인 설계 TIL - Park-ha-neul/hhplus-e-commerce GitHub Wiki
2주차에는 시나리오를 선택하여 해당 시나리오 요구사항 분석 및 설계 문서를 작성하는 방식을 학습했다.
시나리오를 확인한 뒤, 전체적인 흐름을 시퀀스 다이어그램, 클래스 다이어그램으로 설계하고 DB를 설계하는 ERD 를 진행하였다.
기능 개발을 들어가기 전에 전체적인 흐름을 먼저 설계하고 개발하는 경험은 적어서 설계 경험을 향상시킬 수 있는 좋은 과제였다고 생각한다.
진행했던 설계 순서
-
요구사항 정리 (기능적/비기능적)
-
시퀀스 다이어그램 작성
- 요구사항의 기능 흐름을 시나리오로 그려서 객체가 어떤 순서로 동작하는지 표현 (기능/로직의 흐름을 명확히 함)
- ERD 설계
- 기능 흐름에 대한 데이터 구조 정의
- 어떻게 연결되는지 설계
- 클래스 다이어그램 작성
- 시퀀스 다이어그램 + ERD를 참고하여 코드 단위 클래스의 책임과 관계를 구체화
- 객체 간 상속, 의존 관계 등을 설계
결론 및 아쉬웠던 점
- 처음 설계하고 코드리뷰를 하면서 설명을 하다보니 빠진 부분을 찾게 되었다.
- 코드리뷰를 받기 전 누군가에게 설명한다는 생각으로 먼저 검토를 하고 진행했다면 빠진 부분을 찾았을 거라고 생각함
다음 주 목표
- 코드리뷰 피드백 내용 반영 (빠진 부분 추가)
- 설계 내용을 바탕으로 기능을 개발한다.