Skip to content

Latest commit

 

History

History
188 lines (128 loc) · 6.74 KB

README.md

File metadata and controls

188 lines (128 loc) · 6.74 KB

🚀 시험차량 관리 시스템


🏛 아키텍처 구조도

Architecture 2 (Confirmed)



🔧 사용 기술

Java Spring Boot MySQL Docker AWS

TypeScript ReactJS



📦 프로젝트 구조

├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── testcar
│   │   │           └── car
│   │   │               ├── common # 어노테이션, 예외처리 등 공통 유틸
│   │   │               ├── config # 설정 빈
│   │   │               ├── infra # 외부 api 연동 서비스
│   │   │               └── domains # 도메인 별 패키지
│   │   │                   └── ** # 각 도메인
│   │   │                       ├── entity # 엔티티
│   │   │                       ├── exception # ErrorCode 정의
│   │   │                       ├── model # DTO, VO 정의
│   │   │                       ├── util # 유틸
│   │   │                       ├── repository # 레포지토리 디렉토리
│   │   │                       │   └── **Repository.java # 레포지토리 클래스
│   │   │                       ├── **Service.java # 서비스 클래스
│   │   │                       └── **Controller.java # 컨트롤러 클래스
│   │   └── resources
│   │       └── db.migration # Flyway를 이용한 DB 마이그레이션 파일
│   └── test
│       └── java
│           └── com
│               └── testcar
│                   └── car
│                       ├── common # 테스트용 엔티티, DTO 생성 팩토리 정의
│                       └── domains # 도메인 별 테스트
│                           └── ** # 각 도메인
│                               ├── entity # 엔티티 테스트
│                               ├── request # 요청 DTO 생성 팩토리 정의
│                               └── **Test.java # 단위 테스트 클래스


🦚 git branch 전략

main: release 전용
dev: 개발 서버 배포 전용
feat: 기능 개발
fix: 버그 수정
refactor: 리팩토링
chore: 기타 작업
docs: 문서 작업
test: 테스트 코드 구현
  • 각 브랜치는 dev 브랜치에서 생성
  • 작업 후 dev 브랜치로 PR 후 merge


📜 요구사항 정의서

요구사항 정의서



🖋 화면 디자인 설계

🔗 Figma

디자인 설계서 대시보드 시험차량 상세



🗃️ 데이터 베이스 설계

테이블 정의서

테이블 정의서

인덱스 정의서

인덱스 정의서

물리 ERD

물리 ERD

논리 ERD

논리 ERD



📚 API Docs

Swagger

Swagger 라이브러리를 이용하여 API Docs를 작성하였습니다.



🖥️ 화면 구현

  • 대시보드

1

  • 시험차량 대여

2

  • 대여 이력

3

  • 시험 수행 이력

4

  • 차량 관리

5

  • 차량 등록

6

  • 재고 관리

7

  • 시험장 예약

8

  • 시험장 예약 이력

9

  • 시험장 관리

10

  • 주유소 관리

11

  • 주유 이력 관리

12

  • 지출 내역 관리

13

  • 사용자 조회

14



📊 테스트

통합 테스트 시나리오

통합 테스트 시나리오

단위 테스트

테스트 커버리지

  • Jacoco 를 이용한 테스트 커버리지 측정 결과
  • 엔티티 및 서비스 레이어에 대한 단위 테스트 커버리지 100%를 달성하였습니다.