wecode 3차 프로젝트 (richmaker)회고록
[프로젝트 주제]
공동 계좌의 관리 플랫폼
[시연 영상]
[팀구성]
팀명: richaker
Product Manager: 최지준(F)
Project Manager: 이인재(B)
Teammates: 김만규(B), 김민재(B), 한진한(B), 권영경(B)
[프로젝트 기간]
2023.09.04 ~ 2023.09.24 (총 3주)
[적용 기술 및 협업 툴]
⚙️FrontEnd
JaveScripit, React, Sass, Tanstack-qeury, axios, nivo
⚙️BacktEnd
Javascript, node.js, mysql
⚙️ Collaboration Tool
Github, Trello, Figma, Notion, Slack, Postman, dbdiagram
[github]
- FrontEnd GitHub: https://github.com/wecode-bootcamp-korea/48-3rd-richmaker-frontend
- BackEnd GitHub: https://github.com/KIMMANGYU2023/wecode48th_richmaker_a
[프로젝트 진행 방식]
- 프로젝트 진행을 위한 Product 담당을 선정
- 3차 프로젝트에서는 유사한 어플리케이션을 이용해 PET 분석 및 ERD 작성
- 분석에 근거하여 개발 가능한 기능을 세분화하고 멤버별 티켓 할당
- Trello를 사용하여 티켓 할당 부분을 체크
1.모델링 구축
<ERD 구축>
우리의 프로젝트는 공동 관리 플랫폼의 특성상 두 개의 데이터베이스를 활용하고 있습니다. 하나는 유저 정보를 관리하는 데이터베이스이고, 다른 하나는 유저가 보유하고 있는 데이터를 관리하는 데이터베이스입니다. 이런 구조로 인해, 우리는 데이터 보안에 특별히 중점을 두고 작업하였습니다. 두 개의 데이터베이스를 독립적으로 관리하면서도, 유저의 정보와 그들의 데이터가 안전하게 보호되도록 다양한 보안 조치를 적용하였습니다.
[User Flow]
전화번호 입력 → 회원가입 → 전화번호 입력 → 패스워드 입력 →
계좌,카드 선택 → 공동관리 인원 추가 → 공동관리 계좌, 카드 추가
Trello
담당했던 기능
1. 로그인
- 사용자 정보 작성 (전화번호, 패스워드)
- 이메일, 비밀번호 작성할때 정규식표현, 유효성검사 실시
2.회원가입
- 본인인증 기능은 마이데이터에 저장된 번호일경우 CI값 유저에게 전달
- 회원가입때 작성한 전화번호, 패스워드를 받아 정보를 저장
3.패스워드 변경
- 기존의 패스워드와 새 패스워드를 받아 변경
- 기존 패스워드가 다를경우 비밀번호를 확인해주세요 alert창을 보내는 예외처리
- 사용자의 토큰을 받아 사용자 인증확인
4.프로필 이미지 변경
- 유저가 URL이미지를 보내는것이 아닌 파일을 보내는것이여서 AWS S3를 이용하여 유저의 프로필이미지 URL을 저장
- 사용자의 토큰을 받아 사용자 인증확인
[Product Review]
Good Point
프로젝트를 시작하는 첫 주부터 우리 팀의 기획과 의견 조율이 원활했습니다. PET 분석을 통해 주요 어려움을 빠르게 해결하며 진행했습니다. 특히 문제나 궁금증이 생겼을 때, 스탠드업 미팅을 통해 팀원들과 즉시 해결 방안을 찾았습니다. 이러한 원활한 커뮤니케이션 덕분에 문제를 빠르게 해결하고 질문의 갈증을 빠르게 해소할 수 있었습니다. 또한, 다른 팀보다 우리 팀은 프론트엔드가 한 명이 더 적어서, 두 명 모두 힘들지 않게 열심히 작업을 진행했습니다. 백엔드와의 통신 중 생긴 문제점을 빠르게 해결하려는 모습이 인상적이었습니다.
Bad Point
두 번째 주부터 프로젝트의 진행이 어려워졌습니다. 백엔드에서 두 명의 팀원이 스탠드업 미팅에 적극적으로 참여하지 않아서 커뮤니케이션에 어려움을 겪었습니다. 특히 마지막 스탠드업 미팅에서는 할당된 작업을 모두 완료했다고 생각했는데, 3주차 스프린트 때 통신 문제로 예상치 못한 어려움이 발생했습니다. 이러한 문제의 원인과 해결 방안을 고민해야겠다는 생각이 들었습니다.
[프로젝트의 문제점]
일부 팀원과의 커뮤니케이션 어려움.
시간적 관리 부족으로 인한 일정 압박.
Solution
프로젝트 진행 중 커뮤니케이션과 통신 문제로 여러 어려움이 발생했습니다. 코드는 완성 상태였으나 통신에 문제가 있었고, 해당 문제의 티켓 담당자는 "내일 다시 해보자"는 의견만 내놓고 당일에 해결하지 않았습니다. 프론트엔드 작업은 이 문제 해결이 전제되어야만 진행이 가능했습니다. 이에 대한 대응으로, 슬랙을 통해 팀원들의 작업 진행 상황을 확인하고, 티켓 할당을 더 세분화하여 각 팀원이 맡을 부분을 확실하게 정하였습니다. 추가로, 담당 팀원의 코드를 직접 받아 프론트엔드와 통신을 시도하였고, 문제가 발생한 부분을 수정하여 문제 없이 통신이 가능하게 만들었습니다. 수정된 코드와 함께 문제가 발생했던 부분을 슬랙을 통해 해당 팀원에게 공유하였습니다.
[프로젝트를 통해 배운점]
3차 프로젝트는 2차 프로젝트와 달리 팀원들과의 커뮤니케이션과 협업이 정말 힘들었다. 스탠드업 미팅은 참여도가 불성실하고, 통신을 할 때도 책임감 없이 진행되어서 많이 힘들었다. 기업에 가였을 때 프로젝트 때 만났던 분과 성향이 비슷한 분과 일을 하였을 때, 내가 먼저 그 분의 티켓 담당이 어떻게 되었는지 다시 한 번 확인하여 팀원들에게 상황을 공유하고, 어떻게 대처하고 해결해 나아가야 하는지를 미리 알 수 있어서 좋았습니다. 이번 프로젝트는 생각보다 시간이 조금 더 많이 걸린 듯한 느낌입니다. 원래 우리가 2주차 스프린트 때 마무리를 하여 3주차 스프린트 때는 코드를 정리하는 시간을 가지려 했지만, 일부 팀원의 코드가 프론트와 통신이 제대로 이루어지지 않았기 때문에 시간이 지체된 것 같습니다. 이번 3차 프로젝트의 경험을 통해 나만의 티켓만 신경 쓰는 것이 아니라, 팀원들의 현재 진척도와 통신이 예상했던 방향으로 잘 진행되고 있는지 확인해야겠다는 생각이 들었습니다.