키오스크 프로젝트 회고록
프로젝트 개요
이번주차에 키오스크 만드는 프로젝트를 진행했었다. 그 과정동안 겪은 일들과 고민, 고심한 일들을 정리를 하고자 한다.
프로젝트는 팀원들과의 사전 협업을 통해서 깃 방식부터 시작을해서 서로 역할, 개발할 범위들을 잘 나눠서 진행했다. 그 과정에서 팀원들과의 소통과 교류를 통해서 많이 배우게되고 많이 생각할 거리도 많았다.
사전 협의사항
팀원들과 사전에 한 협의는 다음과 같다:
- 모든 팀원이 최소 기능 한가지씩은 개발하기
- 전체 개발 분량을 최대한 공정하게 나누기
- 서로 간의 의견을 존중하고 적극적인 소통하기
Git 관련 이슈와 해결방안
Git 전략
- Dev 브랜치를 메인에서 분기
- Dev 브랜치에서 각 팀원별 브랜치 생성
- 컨플릭트 최소화를 위한 전략 수립
- 각자의 작업은 개인 브랜치에서 진행 후 Dev 브랜치로 병합
발생했던 주요 이슈들
1. gitIgnore 설정 문제
- Ds_Store 파일로 인한 오류 발생
- gitIgnore 파일 설정 재정비를 통한 해결
- 팀원들과 gitIgnore 설정 공유 및 동기화
2. 공통파일 수정으로 인한 컨플릭트
- SceneDelegate 파일의 루트뷰 설정 관련 충돌
- 팀원들이 각자 개발 파트 확인을 위해 루트뷰 수정
- 수정된 내용이 그대로 커밋-풀 되면서 충돌 발생
- 해결방안:
- SceneDelegate 파일 수정 시 커밋하지 않도록 팀 내 규칙 수립
- 루트뷰 변경이 필요한 경우 팀원들과 사전 협의
3. 파일/함수명 중복 문제
- 중복 함수 생성으로 인한 충돌
- 파일명 중복으로 인한 컨플릭트
- 해결방안:
- 메인 파일 관리자가 상황에 맞게 수정
- 수정사항을 팀원들과 공유하여 적용
- 파일명과 함수명 컨벤션 설정
- 중복 가능성이 있는 부분 사전 협의
4. Pull 미수행으로 인한 문제
- 팀원 중 한 분이 지속적으로 Pull 없이 Push 시도
- 심각한 컨플릭트 발생
- 해결방안:
- 수정 파일 별도 보관
- 브랜치 재생성
- 프로젝트 재클론
- 보관했던 파일 재적용
- 이후 Pull-Push 프로세스 재정립
개발 관련 사항
담당 파트
- 메인뷰 개발
- 전체적인 UI/UX 구성
- 네비게이션 흐름 설계
- 전체 프로젝트 관리
- 팀원들이 개발한 뷰/컨트롤러 통합 작업
- 각 기능 간 연동 테스트
- 버그 수정 및 최적화
통합 과정에서의 이슈
- 카테고리뷰, 카드뷰 통합
- 테이블뷰, 버튼뷰 통합 시 문제점
- 뷰 기능 작동 오류
- 시뮬레이션 상 터치 인식 문제
- UI 요소 간 상호작용 문제
- 문제 해결
- 팀원들의 신속한 수정 협조
- 코드 리뷰를 통한 문제점 파악
- 재사용 가능한 컴포넌트 설계
개인 회고
팀장으로서의 경험
- 부족한 점을 보완해준 팀원들께 감사
- 사전 준비와 공부의 중요성 인식
- 팀원들의 적극적인 협조와 도움
- 어려운 부분에 대한 질문 수용
- 지식 공유와 상호 학습
배운 점
- 뷰와 화면 디자인 공부의 필요성 인식
- 협업과 커뮤니케이션의 중요성 체감
- 정기적인 팀 미팅의 가치
- 명확한 의사소통의 중요성
- 기술적 역량과 함께 소프트 스킬의 중요성 이해
향후 계획
- 주말을 활용한 화면구성 및 객체 관련 추가 학습
- UI 컴포넌트 심화 학습
- 화면 전환 및 데이터 전달 패턴 학습
- 다음 프로젝트에서 더 나은 커뮤니케이션 방식 도입
- 새로운 기술 학습을 위한 준비
- 최신 iOS 개발 트렌드 파악
- 디자인 패턴 학습
마치며
이번 프로젝트를 통해 기술적인 성장뿐만 아니라 팀 협업의 중요성을 깊이 이해하게 되었다. 앞으로도 지속적인 학습과 함께 더 나은 팀워크를 위해 노력하고자 한다.
특히 팀장으로서 부족했던 부분들을 보완하고, 다음 프로젝트에서는 더 나은 리더십을 발휘할 수 있도록 준비를 해야한다는걸 느꼈다.
팀원들께 다시 한번 감사의 말씀을 전하며, 이번 경험을 토대로 앞으로의 프로젝트에서도 더 나은 결과를 만들어낼 수 있도록 노력해야겠다.
iMacDonald 프로젝트 깃허브