2026.03.24 (화)
새로운 프로젝트가 시작되었다!
이번 프로젝트에서는 MSA(Microservices Architecture) 기반의 물류 관리 및 배송 시스템을 설계하고 구현하는 것이 목표다. 기존 단일 서비스 구조가 아닌 서비스 간 협력과 데이터 흐름을 고려한 설계가 핵심이었다.
1. 발제문서 요구사항 분석
프로젝트의 주요 목표는 다음과 같다.
- 허브 기반의 물류 관리 시스템 개발
- 주문 생성 시 배송 경로 또한 자동 생성
- 허브 간 이동 경로 배송 처리
- 사용자 권한 별 기능 분리
- 슬랙메세지를 통한 알림
- AI를 활용한 배송 시간 예측
내가 분석한 시스템 흐름은 다음과 같다.
1. 수령 업체에서 상품 주문 요청
2. 주문 생성 시 배송 데이터 자동으로 생성
3. 출발 허브 -> 목적지 허브 이동 ( 허브 간 이동 경로도 팀원들과 상의해서 어떻게 처리할건지 정해야함!)
4. 목적지 허브 -> 업체 배송 ( 이 부분은 구현하기 보단 배송 상태로 처리하면 된다고 함)
5. 배송 완료
그래서 일단 처음으로 회원 권한이
1. 마스터 관리자
2. 허브 관리자
3. 배송 담당자
4. 업체 담당자
이렇게 네가지로 구분되어있기 때문에 유스케이스 작성을 위해서 발제문을 보면서 권한별 기능에 대해 정리했다.
2. 회원 권한 별 기능
공통
- 회원가입 요청
- 로그인
회원(사용자)
- 본인 정보 조회
- 슬랙 메시지 생성
- 상품 주문 / 조회
- 주문 조회 (본인)
마스터 관리자
- 회원 승인/거절
- 허브 생성 / 조회 / 수정 / 삭제
- 업체 생성 / 조회 / 수정 / 삭제
- 주문 생성 / 조회 / 수정 / 삭제
- 배송 생성 / 조회 / 수정 / 삭제
- 배송 간 경로 생성 / 조회 / 수정 / 삭제
- 배송 담당자 생성 / 조회 / 수정 / 삭제
- 사용자 정보 수정 / 삭제
- 슬랙 메세지 조회 / 수정 / 삭제
허브 관리자
- 회원 승인/거절
- 담당 허브 업체 생성 / 조회 / 수정 / 삭제
- 담당 허브 업체 상품 생성 / 조회 / 수정 / 삭제
- 담당 허브 주문 생성 / 조회 / 수정 / 삭제
- 모든 주문 , 배송 , 상품 현황에 대한 무제한 조회 권한.
- 배송 담당자 생성 / 조회 / 수정 / 삭제
- 허브 간 이동 정보 조회
허브 배송 담당자
- 배송 목록 조회(본인)
- 배송 상태 변경 (배송 중 .. 배송완료)
- 허브 간 이동 정보 조회
- 허브 조회
- 주문 조회
- 상품 조회
- 업체 조회
업체 배송 담당자
- 배송 목록 조회 (본인)
- 배송 상태 변경
- 허브 간 이동 정보 조회
- 주문 조회
- 허브 조회
- 상품 조회
- 업체 조회
업체 담당자 (생산업체)
- 상품 등록 / 수정 / 조회 (삭제는 마스터 관리자 / 허브 관리자)
- 본인 업체 수정
- 주문 생성 / 조회
- 허브 조회
- 허브 간 이동 정보 조회
- 배송 상황 조회
업체 담당자 (수령업체)
- 본인 업체 수정
- 상품 조회
- 주문 생성
- 주문 조회
- 배송 상황 조회
- 주문 취소
- 허브 조회
- 허브 간 이동 정보 조회
이렇게 기능 분석을 하면서 어떤 기능을 구현해야하는지 한눈에 정리했다. (발제문서가 매우매우x100 길어서 정리가 필요했음)
그리고 임시로 인프라 구성에 대해서도 정해보았다.
3. 인프라 구성 (임시)
DB
- Postgre
추후 사용 하게된 의의 등 작성(READEME…SA)
Spring 버전
- 3.x.x Spring initilaize 기준 (3.5.x)?
Java 버전
- java 17
메시지 큐 / 캐싱
- redis 7.2
스트림
- ?kafka?
보안/인증
- Spring Security
- JWT
- Keycloak
서비스 디스커버리
- Eureka
API 게이트웨이
- Spring Cloud Gateway
분산추적
- zipkin
API 문서화
- Swagger / OpenAPI
실행 환경
- Docker
- Docker Compose
로드 밸런싱
- FeignClient + Ribbon
서킷 브레이커
- Resilience4j
외부 연동
- Slack Webhook API
확정은 아니고 임시로 정해놓은 부분이라 수정가능성이 있다.
이제 요구사항 분석을 토대로 테이블 명세서를 작성할 예정 !
'Spring 개발일지' 카테고리의 다른 글
| [대규모 AI 시스템 프로젝트] MSA에서 공통 코드 관리하기 (2) (1) | 2026.03.31 |
|---|---|
| [대규모 AI 시스템 프로젝트] MSA에서 공통 코드 관리하기 (1) (1) | 2026.03.30 |
| [대규모 AI 시스템 프로젝트] 업체 및 상품 도메인 분석/API 명세서 작성, 유스케이스 도식화 (0) | 2026.03.27 |
| [대규모 AI 시스템 프로젝트] 도메인 추출 및 배송 도메인 분석 (0) | 2026.03.26 |
| Spring AI 활용 - RAG 구현 실습 준비 (0) | 2026.03.20 |