안드로이드 앱 기획을 시작하며 (얼굴 MBTI 테스트)
인공지능으로 얼을 분석하여 외향인지 내향인지 알려주는 프로그램을 개발하고자 한다.
이번 시리즈는 인공지능을 활용하여 사진을 외향인지 내향인지 판단하는 어플리케이션을 기획 및 개발하면서 힘들었던 점이나 발전한 점, 느낀 점 등을 적을 예정이다. 이 블로그에 다음과 같은 글을 쓰는 이유는 생각이 정리됨과 함께, 사람의 기억과는 달리 블로그의 글은 삭제하지 않는 한 영구적으로 존재하기 때문이다. 이제부터 본격적으로 글을 써보도록 하겠다.
프로젝트를 시작하며
이번 프로젝트를 시작하게 된 계기는 한양대학교 에리카에 있는 활동 중 '또래 튜터링'이라는 프로그램에 참여한 것이다. 이 프로젝트를 진행하기 위해 소프트웨어학부 동료 1명과 인공지능학과 동료 1명과 팀을 꾸렸다.
우리는 android와 database, 인공지능을 통해 실제 앱을 만들어 보고 런칭까지 해보는 작은 스타트업의 일종으로 방향을 잡았다. 학교에서 배우는 이론들은 많지만 그것들을 어떻게 사용해야 할지는 몸소 겪어보며 경험하는 것이 가장 좋은 방법이라고 생각한 것이 그 이유이다.
많고 많은 아이디어들이 있었지만 그중에서 얼굴로 MBTI를 판별하는 을 만들게 된 것은 우연히 '조코딩'이라는 유튜버가 동물의 닮은 상을 찾는 웹을 퍼블리싱한 것을 보며 저런 간단한 어플로 개발을 시작하는 것은 어떻겠는가라는 생각이 들었기 때문이다.
'얼굴의 형태를 통해 외향/내향을 구분하는 어플리케이션 개발'이라는 주제를 확정한 후 우리는 개발 회의에 돌입했다.
첫 번째 개발 회의
# 회의 내용
먼저 우리 3명의 개발 파트를 나누었다. 인공지능학과 친구가 AI 및 백엔드 파트를 맡고 싶다고 입장을 밝혀서 소프트웨어학부 친구와 나는 프런트, 즉, android의 개발 및 서버에서 데이터를 전송하거나 받을 수 있는 api개발을 하기로 했다.
그 후, 안드로이드를 개발할 때 Java와 Kotlin 중 어떤 언어를 사용할지 결정하였다. 우리는 Java를 프로그램 설계 방법론이라는 Java를 다루는 과목이 이미 있었기 때문에 새로운 언어를 배우자는 취지 및 가독성의 이점이 있는 Kotlin을 사용하는 것으로 결정했다.
다음으로 사용자 타깃층을 설정했는데, 우리는 mbti에 관심이 많은 mz세대와 인스타를 많이 사용하는 사람, 공감대가 좋은 사람을 주로 공략하기로 하였다. 또한 이미 만들어진 어플이 있는지 찾아본 결과 우리 프로젝트 주제와 비슷한 웹 서비스가 존재하기는 하나 정확도가 매우 떨어져서 상품성이 적절하다고 판단하였다.
또한 이번 개발에서는 Github를 적극적으로 이용하기로 결정하였다. 지금까지는 Github이라는 사이트에 가입만 해놓고 사용할 수 없어서 묵혀두고만 있었다. 하지만 이번에 Github을 사용하면서 개발자로서의 강점을 하나 더 추가시길 계획이다.
우리 어플의 핵심 기능은 다음과 같다.
# 핵심 기능
카메라로 얼굴을 찍으면, 그 사람의 mbti를 추측한다.
- 카메라로 사진 찍기
- 찍은 사진을 서버로 보내기 / 분석된 mbti 받기 - AI
- 앱의 View를 통해 분석된 mbti를 제공하기
- If 분석된 mbti가 맞았는가?
- 맞았을 때 : 홈 화면으로 이동
- 틀렸을 때 : 사용자 입력으로 mbti를 입력받고, 홈 화면으로 이동
# 다음 주 회의 주제
- " 얼굴로 mbti를 추측하는 앱 " 설계 구성 ( 플로우 차트, 와이어프레임)
- 기능 구체화 ( 핵심 기능의 구체화 )
- 안드로이드 템플릿 구성 ( 아키텍처 구성, Github 소스코드 업로드 )
- 백엔드 개발 스택, 템플릿 구성 - node.js 개발 템플릿