[트러블 슈팅] 실제 데이터구조에 맞춰 테이블 구조를 변경하는 과정

#트러블 슈팅

교내에서 직접 학과에 데이터를 전달받으며, 여러 변경사항이 생기기 시작했다. 먼저, 현재 상황은 모든 데이터는 엑셀데이터로 전달받는다. 엑셀데이터라면 하나의 테이블 구조에서 전달되고 그 테이블의 형식을 따라가는게 나중에 조회 API로 전달하기에도 편하다. 그래서 테이블 구조가 변경되어야 한다고 생각했다.

도메인 개선 전

image

따라서 데이터 테이블을 굳이 쪼개어 두면 조회수가 늘어난다거나, 중복될 데이터가 존재할 수 없는 경우 테이블을 합쳐야겠다는 생각을 하였다. 노란색 박스는 그 영역을 표시하였다.

그리고 전달받은 데이터로는 테이블로 두기보다 속성값으로 관리하는게 맞다는 생각이 들었다. 해당 영역을 빨간색 박스로 표시하였다.

마지막으로 테이블 구조상 전달력이 떨어지는 이름의 테이블이 있었다. 이름을 변경하여 데이터의 의미를 제대로 알기 쉽도록 하고싶었다.

도메인 개선 후

image

먼저 UserClassList라는 이름을 수강한 강의목록이라는 의미를 전달하기위해 Enrollment라는 이름으로 변경하였다. 그렇게 보니 ClassReview 라는 이름도 Review라고 조금 덜어내도 될것 같았다. 그리고 쓸데없이 쪼개졌던 노란색 박스 영역을 하나의 Lecture 테이블로 만들었다. 속성값은 엑셀데이터의 규격에 맞춰서 설정하였다.