포스트

새로운 서비스 만들다가 방금 깨달은 점

뭔가 깨달은 게 있는거같아. 서비스 만들때 모델 인터페이스를 굉장히 많이 만들거든? 그리고 그것들을 프론트에서 완성하기보단 api 호출로 백엔드에서 받아오는게 이상적일거야. 그러면 백엔드에서 내부적으로 다양하게 db에 쿼리해야 겠지? dbTable은 다양한 프론트 요구를 다 커버하기 위해서 유기적으로 굉장히 압축되고 짜임새 있도록 만들어져야 할거야. 정보의 압축. 그래서 초기 서비스 만드는 입장에서 다른 기획단계를 충분히 거치지 않고 dbTable부터 설계하는건 사실 어려워. 압축을 하려면 압축하기 전의 모양이 먼저 있어야 하니깐. 그러면 초기 서비스 만드는 입장에서 프론트의 UI/UX 상에서 어떤 데이터 인터페이스들이 사용되는지 다 정리해보는게 사실 상 가능한 첫 수순일거야. 그리고 그 인터페이스를 구상하려면 실체가 되는 데이터를 먼저 알아야겠지? 어떤 데이터가 서비스에 필요한지 알려면 실제로 데이터를 시뮬레이션으로 만들어보는 수밖에 없어. 요새는 ai가 더미데이터를 잘 만들어줘서 이걸 혼자서도 할 수 있는거같아. 다행이지. 근데 말이야, 실체가 아니라 흉내로부터 나온 더미데이터라서 그런지 여러 데이터 응답(인터페이스)들이 정말 유기적으로 연결되는지는 ai가 못 돕고 내가 판단해야 하네. 근데 나도 잘 몰라. 그래서 깨달은 사실이 있어. 아하! 이거이거 디지털 서비스 만들기 전에 미리 아날로그로, 종이에 써가면서, 소꿉장난 병원놀이, 편의점놀이 하듯이 실제 서비스 예행 시뮬레이션을 하고 가는게 순서구나. 그래서 이런 상상도 들었지. 시뮬레이션 팀도 따로 있을 수 있겠는데? 기획팀인가? 그니까 만드려는 서비스에 대해서 실제로 코드나 db작업 하나도 하지 않고, 그냥 아날로그 펜과 종이로 서비스에서 오고가는 데이터와 의사결정을 예행해보는거지. 혼자 하는게 아니라 진짜 어린애가 역할극 하듯 말이야. 그리고 필요한 데이터와 모델 인터페이스를 구체화하는거야. 그래서 나는 ai에게 이런 팀도 꾸려달라고 하는게 좋겠다.라고 생각이 들었어.


지금까지 만드는 서비스들은 안 그렇게 했었어.

첫 번째 서비스(성경말씀카드)는 프론트 한 페이지, 백엔드 api 엔드포인트 한 개 이렇게 왔다갔다 하면서 한 쌍씩 만들었고, db와 dbtable은 작동만 하면 되도록 신경도 안썼지. 다행히 마이크로서비스화 했기 때문에 코드 관리가 잘됬어. 그런데 dbtable을 직접 설계하지 않았기 때문에 블랙박스를 가지고 하는 느낌이 계속 들었지.

두 번째 서비스(XX유투브서비스)는 성경말씀카드 서비스보다 좀더 복잡한 형태의 서비스로 구상했었어. 그리고 첫 번째 서비스 개발의 시행착오를 교훈 삼아, dbTable을 좀 직접 알고 설계하려고 처음 시도했지. 그런데 어디서부터 해야할지, 그리고 기획과 어떻게 연결될지 잘 안떠올랐어. 그래서 프론트부터 개발하고, 거기에서 백엔드로 호출해서 받아야 하는 데이터들을 정적 mockdata화 해서 보관하기로 했지. 이렇게 하면 프론트만 만들면서도 기획의 영향력을 데이터구조(mockdata json)까지 넓게 뻗어나갈 수 있을 것 같았어. 그리고 이렇게 하면 또 좋은 점이, 백엔드와 분리되어서 개발할 수가 있을 것 같았어. 확정된 mockdata를 사이에 두고 양쪽(프론트, 백엔드)를 두 사람이 맡아서 각자 할 수 있잖아.

사실 방금까지 그 mockdata를 계속 만들고 있었어. 모델 인터페이스도 만들고. 그러다가 깨달았던거야. 아하, mockdata도 얕보면 안되는구나. 가짜가 아닌 진짜 mockdata는 서로 연결되어 있고 이미 그 자체로 좋은 dbTable을 품고 있구나. 가짜 mockdata를 만드니까 안좋은 dbTable을 품게 되겠구나.

그래서 더 한 단계 기획 프로세스 상에서 앞 단을 보게 된거지. “소꿉놀이 시뮬레이션”이 필요하다는 걸.

아무튼 이번 두 번째 서비스도 첫 번째 서비스처럼 이렇게 잘 만들어갈 수는 있어. 사실 mockdata를 거의 다 만들긴 했거든.(좋은 mockdata인지는 모르지만..) 그래서 이번에는 소꿉놀이 안할 수도 있어. 아니면 좀 미루던지.

그렇지만 확정적인건,

나는 세 번째 프로젝트 부터는 프론트엔드를 만들어보기도 전에, 종이와 펜, 그리고 보드게임과 소꿉놀이 하듯이 서비스 예행 시뮬레이션을 먼저 해볼거야. 재밌겠다.ㅎㅎ


이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.