본문 바로가기
Sparta 내일배움캠프 Java 5기/[13주차] Spring 심화 Team Project ✓ 2024. 7. 16.

(24.07.16) A08조 "Palette" Project - KPT 회고

Summary


👍 KEEP
  • 협업 회의 시, 너무 기능 구현 또는 해야할 일에서만 회의를 하는 것이 아니라 서로 Small Talk을 섞어가면서 활기찬 분위기와 좋은 컨디션으로 프로젝트를 진행할 수 있었다.
  • 프로젝트를 시작 하기 전, GitHub 규칙, Git Convetion, .env 를 통한 환경변수 설정 및 docker-compose.yml을 통한 협의를 통해 개발 환경을 일치시켜, 개발 환경 관련 트러블이 발생하지 않았다.
  • GitHub에 Pull Request 진행이 있을 때 곧바로 Merge 되는 것이 아니라 서로의 코드를 보면서 부족한 부분이나 놓친 부분을 점검해주는 코드리뷰/피드백을 적극적으로 할 수 있었다.
  • 서로의 코드와 로직 등 각 팀원간 분배되어 구현된 기능과 파트에 대해서 서로 코드로써 존중을, 개인별로 컨디션을 확인하면서 배려하는 개발 분위기를 유지할 수 있었다.
 ⛳TRY
  • Spring Security에 대한 이해를 충분히 한 후 보안 부분에 대해서 WBS 설정 단에서 큰 영역으로 지정하여 기능 분배를 한다.
  • 개발이 끝난 후에도, 테스트 코드를 작성하여 기능을 검증하고, 테스트 시나리오를 작성하여 점검을 하면서 예외 및 오류를 확인을 한다.
  • 아침 팀 회의 시 GitHub Issues 등 스케쥴/아젠다 협의 툴을 활용을해서 매일 해야할 일들을 점검하고 Daily 스케쥴을 작성을 하고, 하루의 마무리에 점검을 할 수 있도록 한다.
  • 문제가 발생했을 경우 Trouble Shooting을 기록하고 팀원들과 공유하면서 해당 사항을 기록하고 서로 도와주면서 해결할 수 있도록 한다.
  • FE 단에서 작동될 경우를 점검하면서 BE 단에서의 서버 코드 개발이 완성이 되어야하고, 필요할 시, 적극적으로 FE-BE 개발 담당간 많은 협의와 회의를 해야한다.

PROBLEM
  • Spring Securty의 Filter 단에서의 Error Handling이 잘 정리가 되지않아서 React의 View 화면단에서의 UX에도 영향을 끼친 부분이 있었다.
  • Redis에 대한 구체적인 강의가 없었고, 개발 시간이 부족했기 때문에 해당 부분을 담당한 팀원 외에는 Redis에 대한 이해와 구현을 이해하기 어려웠다.
  • React를 활용한 Front End 디자인과 기능 구현에 너무 많은 시간을 소모할 수 밖에 없어 다른 기능을 점검하거나 개발해야하는 시간이 많이 부족했다.
  • 트러블/이슈가 발생했을 때, 이 부분에 대해서 서로 회의/협의를 하면서 적극적으로 대처할 수 없었다.
  • FE 단의 구현에 많은 시간이 사용되었기 때문에 GitHub Organization을 확장하여 Actions를 통한 추가적인 CI/CD 구현을 할 수 없었다.
  • 테스트 코드를 작성해서 기능 구현에 대한 검증을 할 수 없었다.

TRY /  Action Plan

  1. 오전 회의에서 모든 팀원들은 서로의 프로젝트 진척도를 적극저긍로 공유를 하고, 다같이 협의를 하면서 하루의 계획을 설정 → 저녁에 점검할 수 있도록 한다.
  2. 예외 처리에 관한 부분까지 테스트 코드를 작성하여 검증을 하고, 프로젝트가 완성 된 후에도 테스트 시나리오를 통해 실패의 경우도 점검을 할 수 있도록 한다.
  3. Spring Security를 하나의 기능 개발 단위로 보는 것이 아니라, FE단의 실제 서비스의 UX 까지 영향을 끼칠 수있다는 점에서 큰 팀 WBS 담당 단위로 설정을 한다.