✏️ 2023-02-06 Today I Learn

@mitoconcrete · February 06, 2023 · 5 min read

최종프로젝트 시작

다들 목표로 하는 도메인과 기능들이 다를테니 프로젝트 아이템을 선정하기에 앞서, 팀원들과의 대화를 통해 니즈를 파악했다. 정말 다양한 이야기들을 통해 다양한 주제가 나왔는데, 총 3가지의 아이템이 선정 되었다. 그리고 프로젝트의 니즈가 다음과 같이 정리되었다.

  1. 대용량 트래픽을 적용하기에 설득력이 있을것 : 억지로 트래픽이 발생할 상황을 끼어넣지말자.
  2. 외부 API 를 연동 할 수 있어야한다.
  3. 프론트 리소스가 많지 않을 것

각자가 원하는 기능과 솔루션에 따라 이야기를 나누어 보았고, 적절한 트래픽이 발생 할 수 있으며, 외부API를 끌어올 가능성이 있고, 프론트 리소스가 작지만 많은 것을 시도해 볼 수 있는 '예약 대기 서비스'를 구현해보기로 하였다. 쿠폰과 같은 API를 이용해 트래픽을 경험해볼 수 있도록 하고, 지도 API나 OAuth와 같은 기능을 통해 외부 API를 사용해 볼 수 있으며, 기반이 된 서비스인 '테이블링'을 찾고로 해보았을 때 크게 많은 화면이 필요하지 않겠다는 생각을 했다.

따라서, 우리는 예약대기 서비스를 이용하기로 했다.

기능 결정하기

주제를 정했으니, 이제 세부기능을 정해야하는데 문제가 발생했다. 각자가 중요로하는 서비스의 핵심이 다 다르고, 그에 따라 각자가 상상하는 서비스의 모습이 모두 달랐던 것이다. 굉장히 심플한 서비스로 오해하고 계신 분도 계셨고, 주제를 선정하기 위해 굉장히 많은 아이디어들이 오갔는데, 실제 선정된 아이디어가 아닌, 유사한 다른 아이디어로 착각하신 분도 계셨다. 일단 모든 팀원들이 혼란을 겪고 있는 상태에서, 각자가 서비스를 한다고 했을 때 떠올랐던 이미지가 무엇인지 말해보자고 제안드렸다. 각자의 니즈가 달라서 그 니즈에 따라 서비스가 정해진 것 같았다. 따라서, 위에서 선정한 기준을 제시하며, 예약 대기 서비스를 해야하는 이유에 대해서 말씀드렸고, '우리가 개발할 것은 예약대기 서비스야'라는 것이 머릿속에 모두 잡히니, 필요기능들에 대해서는 술술 나왔다.

ERD결정하기

오래 걸릴 줄 알았는데, 생각보다 더 오래걸렸다. 또, 각자가 생각하는 Entity와 그 연관관계에 대한 기준이 다르다보니, 많은 이야기가 오갈 수 있었다. 대신 앱개발이후에 발생될 수 있는 문제점들을 다른 사람들의 시선으로 찾아서 미연에 방지할 수 있도록 하는데 의견이 다른 부분이 많았고, 주요 핵심 컴포넌트를 구성하고, 빠르게 구성해야하다보니, 본의아니게 다른 팀원 분 들께 푸시를 한 것 같아서 너무 죄송했다 그래도 대략적인 엔티티의 구조를 완성할 수 있었다. 하지만, 연관관계나 몇몇기능들에 대한 완성이 미흡해서 내일 진행하기로 했다.

@mitoconcrete
어제보다 조금 더 성장하기 위해 기록합니다.