[App]앱 처음부터 런칭까지 (A to Z)

2022. 8. 5. 00:33programing/etc

반응형

 개인적인 사이드 프로젝트로 앱을 만드려고 생각한건 어언 4년전.... 저는 항상 생각만 하고 실천을 못하고 있습니다.. ㅜㅜ이번 기회에 블로그도 자주 올리면서 사이드 프로젝트를 진짜 진행해보려고 합니다. 요즘 flutter에 관심이 가는 중이기도 하고, 프리랜서 다운 프리랜서가 되기 위한 준비를 조금씩 해야 할 것 같습니다. 그럼 앱을 만드는 과정을 알아보도록 합시다!

 

제가 PM을 해본적도 없고, 대규모 앱을 만드려고 하는건 아니기에 우선 간단하게 시작해볼게요..ㅎ

 

1. 아이디어

 -who: 타겟 사용자는 누구인가?

 -what: 사용자의 니즈는 무엇인가?

 -how: 니즈를 어떻게 제공 할 것인가?

 -goal: 앱의 최종 목적은?

 

2. 시나리오 및 기능

 위의 아이디어를 바탕으로 사용자가 다운로드부터 사용자가 주로 사용하는 기능을 정의한다.

 

3. 일정계획

아래 기획, 설계, 개발, 테스트, 런칭에 대한 일정을 잡는다.

 

(프로젝트 인원 PASS!!)

 

3. 기획

 -플로우챠트

  앞서 정리한 기능들을 바탕으로 화면 플로우 챠트를 작성합니다. 플로우챠트란화면이동에 대한 순서와 화면별 기능을 간략하게 정리한 챠트이다. (저는 스토리보드, 와이어프레임과 같이 진행할 예정이므로, 일단 PASS..)

 -스토리보드 & 와이어프레임

 앱의 골격입니다. 화면의 순서 흐름은 물론, 주요 기능들의 설명을 기술합니다. 간단한 디자인까지 정의 할 수 있고, 보통 사용하는 툴은 ADOBE XD, BALSAMIQ, AXUVE, VISIO, OVEN, PPT 등이 있습니다.

 -상세기능

 CRUD(생성, 조회, 수정, 삭제) 마다 상세 기능 정의

 

(디자인 PASS!!)

 

4. 설계

 1)서버

  일단 PASS

 2)언어

  일단 PASS (저는 FLUTTER)

 3)앱 개발 방법 선택

 

  -웹 앱

 웹앱은 모바일 웹이라고 보면 된다. 개발 단가는 가장 싼 편에 속하지만, 브라우저로 접근해야된다는 단점이 있다.

웹이기 때문에 구현하고나면 Android/IOS 상관없이 접속이 가능하다.

 

  -하이브리드 앱

  모바일 웹을 네이티브로 감싼 앱이라고 보면 된다. 즉, 기기에서 아이콘을 눌러서 앱을 실행하지만 그 내부는

웹뷰(브라우저)로 되어있는 것이다. 웹앱보다 편리한 접근을 원하거나, 푸시 알림 등의 네이티브 기능이 필요할 때

하이브리드 앱으로 구현을 한다. 이전에는 네이티브로 Android/IOS 각각 브라우저로 감싸서 별도의 결과물을 만들어냈지만, 최근에는 크로스플랫폼 개발툴을 이용하여 Android/IOS 결과물을 동시에 만들어내기도 한다.

어쨌든 결국엔 웹앱을 감싼 것이기 때문에 퀄리티면에서는 조금 부족할 수밖에 없다.

 

  -크로스플래폼 앱

  Android/IOS 개발을 동시에 진행하지만 최종적으로는 각각의 결과물을 만들어준다.

네이티브에 비해 생산성이 월등하다. 하지만, 네이티브 종속적인 기능을 구현할 때는 개발에 어려움이 생길 여지가 있다.

최근 스타트업들이 대부분 이 크로스플랫폼 앱으로 개발을 진행한다. 아무래도 네이티브로 진행할 경우 안드로이드, IOS 개발자를 각각 구하여 각각 개발해야 하기 때문에 매우 비효율적이기 때문이다.

성능이나 퀄리티면에서도 하이브리드 앱과는 다르게 네이티브에 가깝게 구현할 수 있다.

 

  -네이티브 앱

  휴대폰의 능력을 100% 활용하여 앱을 개발할 수 있다. 단, 안드로이드, IOS 각각 개발을 따로 진행해야한다는 점이 단점이다. 네이티브 종속적인 기능을 활용해야 하는 경우가 아니라면 크로스플랫폼 앱 개발로 진행하는 것을 추천한다.

개발 시간이 크로스플랫폼 앱 개발에 비해 거의 2배 이상 들게 되며, 비용 또한 상당히 높아지게 된다.

 

 

5. 개발

[기획 문서]를 참조하여 [설계]한 대로 [일정]에 맞게 개발을 진행한다. (말은 참 쉽다.. ㅎ)

6. 테스트

 테스트 명세서를 작성하고 작성한대로 로그인부터 기능, 통신 등의 테스트를 진행한다. 그리고 디바이스별 테스트도 필요하다.

7. 런칭

 

이렇게 작성 해보니, 간단하게만 작성해도 해야 할 일들이 많아 보이네요.. 1인 개발을 한다고 해도 이 정도의 과정이라도 지키면서 진행하면 앱 개발하는데 무리가 없어 보이긴 합니다. 꼭 올해안에 실천에 옮길 수 있도록!! 화이팅!

반응형