프로젝트

팀 프로젝트 KPT 회고

자바 주차가 끝나면서 팀과 마지막 프로젝트 과제를 하게되었다.

프로젝트

  • 팀명 : 스프링 A02
  • 팀원 : 김민중, 박지환, 김진훈
  • 개발 기간 : 2023.10.24 ~ 2023.10.30
  • 개발 내용 : 호텔 예약 프로그램 만들기

📜 KPT 회고

1. KEEP (잘 한 것)

협업

  • 기능별로 개발 역할 분담
  • branch를 활용해서 각각의 기능 개발 브랜치를 만들고 main 브랜치에 병합함
  • 깃허브 이슈를 통해 각 기능에 대한 티켓을 발행하고 담당과 PR을 통해 코드 리뷰를 하며 완성도를 높임
  • 저번 팀 프로젝트에서 하고 싶었던 것들을 잘 적용함

기술

  • Stream API를 적절히 사용하여 컬렉션 객체를 순회하는 코드를 가독성 좋게 작성함
  • 클래스의 역할과 책임을 적절히 분리하여 객체 지향적으로 설계 및 구현을 시도함

2. PROBLEM (아쉬운 것)

협업

  • 메인 프로세스 설계 미흡으로 기능 병합시 충돌 발생
  • 코딩 컨벤션이 지켜지지 않아서 전체적인 코드가 어색함

기술

  • SOLID 원칙을 잘 지키지 못했음

3. TRY (하고싶은 것)

협업

  • 코딩 컨벤션 정하고 개발
  • 공통 기능에 대한 역할 분담을 잘 정하기

기술

  • 리팩토링 시도
    • 추상화를 통한 클래스간 결합도 낮추기

# FEEL

김민중

이번 팀 프로젝트를 진행하면서 분석, 설계, 구현, 테스트의 흐름에 맞춰 진행하였습니다. 시스템의 구조를 잡고 각 팀원간 기능을 분담하고 git을 이용하여 협업을 하면서 pr을 하여 팀원들간 코드리뷰를 통해 코드의 완성도를 높이는 좋은 경험을 하였습니다. 다음에는 각 좀더 객체지향 설계 원칙을 지키면서 각 클래스간의 결합도를 낮추고 응집도를 높이는 설계 / 구현을 하려고 합니다.

박지환

이번 팀 프로젝트를 하면서 아직도 깃 협업 관련하여 부족하다는 것을 많이 느꼈습니다. 그리고 객체 지향적 관점에서 객체의 역할 분배에 대해 잘 모른다는 느낌을 받아 아쉬웠습니다. 다음에는 단일 책임의 원칙 및 메모리 분배 측면을 좀 더 신경써서 만들어보려 합니다.

김진훈

프로젝트를 기획할 때 도메인의 기능을 정하고, 인터페이스를 설계하고 진행했습니다. 기획한 기능들은 쉽게 개발할 수 있었는데 미처 생각하지 못했던 부분들을 개발할 때 각자의 코드가 충돌하는 부분이 있어서 그 문제를 해결하며 협업할 때 정해야 하는 다양한 규칙들에 대해서 다시 한 번 생각하는 기회가 됐습니다. 다음에는 더 명확한 기획과 branch 전략으로 충돌 없는 merge를 목표로 하겠습니다.

728x90