생성형 AI로 MVP 만들기 1편
Intro
나는 생성형 AI를 사용하면서 두 가지 장점을 느꼈다.
첫 번째는 내가 모르는 분야에 대해 결과물을 나보다 높은 퀄리티로 생산해 준다는 것이다. 나는 디자인이나 기획은 개발만큼 잘하지 않아서 Chat GPT에 물어볼 때가 많다. 결과물이 대부분 만족스러운 경우가 많았다. 두 번째는 내가 잘아는 분야의 시간을 절약해준다는 것이다. 생성형 AI로 인해 개발하는 방식이 바뀌었다. 내가 직접 타이핑할 코드를 IDE에 입력하는게 아니다. 내가 작성할 코드에 대한 생각을 글로 잘 정리해서 chatGPT에게 부탁한다. 코드 결과를 눈으로 훑어보고, 테스트 케이스를 몇가지 추가한다. 이로 인해 코드를 타이핑하는 시간을 줄일 수 있었다.
생성형 AI의 장점 두가지를 토대로 재밌는 시도를 해보려고 한다. 나는 매일 이런 제품 저런 제품이 있으면 좋겠다고 생각하는데, 그런 제품을 생성형 AI의 도움을 받아 만들어보려고 한다. 풍부한 상상력을 빠르게 실현 시켜줄 수 있는 도구이기 때문이다.
아이디어와 관계 없이 제품을 만드는 순서를 다음과 같이 정의해보자. (이것도 생성형 AI에게 물어보았다.)
- 아이디어 도출 및 문제 정의 / 결과물: 문제 정의서, 주요 기능 리스트
- 제품 기획 / 결과물: 요구사항 명세서
- 디자인 / 결과물: UI/UX 디자인
- 개발 / 결과물: 동작 가능한 소프트웨어, 소스 코드
- 제품 출시
- 사용자 반응 및 피드백 수집
- 운영 및 유지보수
- 개선 및 확장
나는 여기서 1~3번을 잘 알지 못한다. 스타트업에 근무하면서 일부 ‘참여’ 해봤지 온전히 내가 책임을 갖고 ‘시작’해본 적은 없다. 사이드 프로젝트를 하면서 부족하다는걸 절실히 느꼈다. 1~3번의 받침이 없다보니 4번 과정에서 항상 흔들렸다. ‘이걸 왜 만드는거지?’, ‘이럴 땐 어떻게 해야하지?’ 등의 질문이 꼬리에 꼬리를 물었고 제풀에 지쳐 결국 5번에 도달하지 못했다.
모든 일이 그렇듯 시작이 어렵다. 언제든 부담없이 시작할 수 있다면 무엇이든 편하게 만들 수 있을 것 같다. 그래서 1~5번을 힘 빼고 진행할 수 있도록 제품 개발 과정과 프롬프트들을 정리해두고 재활용하면 되겠다고 생각했다.
1. 문제 정의서
이 프롬프트를
시작으로 아이디어를 도출하고 문제를 정의했다. 이 프롬프트의 응답을 통해 목표 달성을 위한 몇가지 제안을 받았다.
목표를 달성하기 위해 도움을 줄 수 있는 방법은 다양하다.
- 목표 설정을 명확하게 한다.
- 진행 상황을 추적한다.
- 장기적인 동기 부여와 지속성을 유지한다.
- 작은 성과나 실패에 대해 피드백한다.
나는 평소 생각해두었던 ‘만다라트 기법’을 사용하여 제품을 만들어 보기로 했다.
그 다음으로 문제 정의서 구조를 어떻게 만들어야하는지 물어봤다.
그래서
문제 정의서 구조를 다음과 같이 정의했다.
지금까지 문제 정의 및 문제 정의서 구조를 알아냈고, 이를 토대로 GPT에게 문제 정의서를 작성하도록 요청했다. 그리고 다음과 같이 문제 정의서를 작성했다.
2. 주요 기능 리스트
문제 정의서를 만들었으니 이제 주요 기능 리스트를 만들어보자.
사용중인 생성형 AI(chatGPT나 claude)의 대화창을 새로 열자. 컨텍스트 윈도우(문맥 창)는 LLM이 한 번에 처리하고 ‘기억’할 수 있는 텍스트의 양을 의미한다. 컨텍스트가 커질수록 관련 정보를 효과적으로 검색하고 연결하는 것이 어려워진다. 대화 내용이 많아질수록 관련성 있는 정보를 찾고 처리하는 계산량이 기하급수적으로 증가하기 때문에 응답의 정확도와 일관성이 저하될 수 있다.
그래서 나는 어느정도 대화를 나눈 후 목적을 달성하면 그 다음 문제는 새로운 대화창을 열어서 해결한다. 새로운 대화창을 열고, 이전에 대화한 내용을 요약해서 알려주고 대화를 시작하면 된다.
주요 기능 리스트 대화 시작 프롬프트를 사용해서 대화를 시작했습니다.
gpt 응답에서 마음에 안드는 부분이 있으면 수정을 요청하면 됩니다. 저의 경우 gpt가 알림 시스템을 제시했는데, 제 생각엔 웹 서비스로 만들면 알림 시스템을 만들 필요가 없고 대신 주별로 성과 리포트를 보여주는 기능이 있으면 좋겠다고 수정을 요청했습니다.
주요 기능 리스트도 이렇게 완성했습니다.
다음 글에서 제품 기획을 이어서 진행해보겠습니다.