1차 프로젝트 진행 1일 차
저번 주까지 1차 프로젝트에 대해 사전 조사와 명세서를 작성했다.
오늘은 ER 다이어그램을 작성하기 앞서 개념적 ERD를 먼저 작성한 뒤 논리적 ERD를 만들어보았다.
원래 목표했던 타임라인보다 많이 뒤처져있는데 아직도 협의가 끝나지 않은 부분이 있어 진행상황을 빠르게 나가야 할 필요를 느낀다.
팀플이란 정말 힘든 것이다...
나는 구현에 들어가기 앞서 모두가 공유할 수 있는 스크립트를 작성해서 팀원과 공유하려고 한다. 그러면서 협의 과정을 거쳐서 모두가 동의했을 때 구현에 들어가야 나중에 혼란이 오는 것을 막을 수 있을 것 같다.
오늘은 데이터베이스 퀴즈를 봤는데 마지막에 두 문제 정답을 바꾸는 바람에 85점이 나왔다ㅠㅠ
연휴까지 앞으로 2틀! 오늘 너무 컨디션이 안 좋았는데 조금만 더 버텨보자...!
1차 프로젝트 진행 2 ~ 3일차
2일 차에는 앞으로 협업을 하기 위해 필요한 것들을 정리하고 상의하는 시간을 가졌다.
깃과 깃허브 사용 방법을 배우고 머지할 때 주의할 것들을 들었다.
3일 차부터 본격적으로 코딩을 시작하게 되었다.
주말 동안 깃허브 머지가 잘 못 되거나, gitignore 파일 공유하고 수정하는 것에 많은 시간이 들어갔다.
나는 그때까지 작업했던 코드가 삭제되어서 다시 처음부터 해야 했다.
1차 프로젝트 진행 4일 차
연휴가 끝나고 돌아와서 각자 결과물을 머지하고 구현되지 않은 기능을 구현하기로 했다.
각자 발표 전까지 할 일을 정해주고 정리했다.
회고록
타협하는 과정과 모델링 과정이 정말 쉽지 않았다.
마지막날 까지도 서로 간섭하는 부분 (입고 -> 재고 -> 출고, 입고-> 창고)을 구현하는 데 있어서 결국 연관 관계를 맺지 못했다. 시간 관리가 부족했고, 구현하는 시간은 충분히 있었지만 처음 하는 팀 프로젝트이다 보니, 깃을 사용하는 데 있어서 끊임없이 문제가 발생했다. 이런 문제들을 해결하고 구현하려고 하니까 시간이 부족했었다.
그리고 데이터베이스 쿼리를 통합하는 것도 큰 일이었다. OS에 따라서 MS에서는 잘 작동되는 쿼리문이 Mac에서는 작동되지 않는 문제가 있었다. 산출물 관리도 부족했고 노션도 잘 활용하지 못한 것 같다.
개인적으로 내가 맡은 기능인 창고관리와 출고관리에서 앞으로 구현해야 할 부분은
1. sub_warehouse의 총면적을 입력받을 때 부모 창고인 warehouse의 총 면적을 불러와서 비교한 뒤 더 크다면 예외처리를 하고 다시 입력받을 수 있도록 하는 것,
2. sub_warehouse를 생성하면, 각 화물이 들어가는 하나의 단위 정보를 가지는 section_warehouse가 자동으로 만들어지는데 섹션 창고의 필드값을 수정할 수 있는 기능,
3. 각 창고를 join 해서 sub_warehouse를 검색했을 때 서브 창고가 가지고 있는 섹션 창고들의 정보를 확인하거나, 총창고를 검색했을 때 sub_warehouse의 정보까지 출력할 수 있는 기능
이 있고 그 외 반복적으로 사용되는 메서드를 리팩토링 하고 try catch 문을 try with resources로 변경하는 것들이 있다.
다음 프로젝트에서는 추상 클래스와 인터페이스에서 어떤 메서드가 필요할지 먼저 정한 뒤 각 기능을 설계하는 것이 좋을 것 같고, 깃이 꼬일 경우를 대비해서 백업용 브랜치를 만들어두는 것도 좋은 것 같다.
그리고 각 기능 간 연관 관계 (Join)이 필요한 경우, 해당 연관 관계를 먼저 다 설정 한 뒤, 변경 사항이 필요하는 경우를 최소화하는 것이 좋을 것 같다고 느꼈다.
'주간 랩업 > [SSG] JAVA 기반 백엔드 개발 과정' 카테고리의 다른 글
[12주차] 웹 기초 4 ~ 8일차 (0) | 2024.08.31 |
---|---|
[11주차] 웹 기초 1~3일차 (0) | 2024.08.25 |
[9주차] 데이터베이스 11 -15일차 (0) | 2024.08.10 |
[7주차] 데이터베이스 1 - 5일차 (0) | 2024.07.27 |
[6주차] 자바 고급 5 - 9일차 (0) | 2024.07.19 |