서비스를 제공하기 위해선 데이터베이스 설계가 필수적입니다.
데이터 베이스 설계에서 가장 중점적으로 생각했던 요소는 정규화 작업을 통한 도메인 분리였습니다.
아직도 결정하지 못한 문제는 자동차 도메인(테이블)을 만들 것인지 아닌지 입니다.
자동차 도메인을 만들려면 고유한 번호가 필요합니다. 테이블 행의 아이디로 고유성을 가져갈 수 있습니다. 고유번호는 다르지만 자동차 번호외의 모든 값이 같은 경우에는 어떻게 할 것인가 입니다. 그래서 해당 데이터들을 구분할 수 있는 자동차의 전체 번호를 고유번호로 사용해야합니다. 하지만 현재 사용자들이 실질적으로 사용하고 있는 데이터의 경우에는 자동차번호의 뒷 4자리입니다.
간단하게 다시 정리해보면.
자동차 도메인(테이블)을 만들기 위해서는 고유번호가 필요합니다. 하지만 실 사용자는 자동차의 고유성을 무시하고 뒷 4자리만 사용하고 있습니다. 문제를 어떻게 해결할 것인가 입니다.
사실 해결방법은 간단합니다. 사용자들이 앞으로 차량의 고유번호를 사용하게 하면 자동차 도메인 관리가 가능합니다.
현재 테이블 설계에는 자동차 테이블이 존재하지만 사용하지는 않기로 했습니다. 먼저 현재 사용자들이 쓰는 방식과 유사하게 테이블 설계하여 서비스를 제공하고 사용자와의 대화를 통해 이를 해결해봐야 겠습니다.
설계한 테이블은 아래와 같고 DDL도 추가해 놓겠다.(1차 시안이다.)
'about.Programing > ToyProject' 카테고리의 다른 글
[EasyValet.] #8. Github Action으로 CI/CD 적용하기 - SSH 편 (0) | 2022.09.14 |
---|---|
[EasyValet.] #7. gitignore 적용하기 (0) | 2022.09.11 |
[EasyValet.Trouble Shooting] #4. Cross Origin Resource Sharing(CORS) (0) | 2022.09.06 |
[EasyValet] #2. 프로젝트를 진행을 위한 Git-branch 전략 : Github-Flow (0) | 2022.07.18 |
[EasyValet] #1. 발렛파킹을 도울 수 있는 서비스를 만들기로 했습니다. (0) | 2022.07.18 |