Top Banner
음음음음음 Hay 음음 음음 음음음음음음음 음음음
21

음성메신저 Hay 개발 후기

Apr 15, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 음성메신저 Hay 개발 후기

음성메신저 Hay 개발 후기

네오위즈게임즈김태우

Page 2: 음성메신저 Hay 개발 후기

발표 내용 ?

Page 3: 음성메신저 Hay 개발 후기

발표 내용 !

1. Hay 서비스 개요

2. 클라이언트의 화면 구성

3. 서버 - 클라이언트 구성도

4. 스크럼 개발방법론 적용 후의 반성

5. 클라이언트 개발시 TDD 적용 후의

반성

6. 적용한 오픈 소스 라이브러리 소개

7. 당면했던 문제 및 해결 방법

Page 4: 음성메신저 Hay 개발 후기

1. Hay 서비스 개요

How are you?

지인과의 비실시간 음성 커뮤니케이션 서비스

음성 변조 , 음성 스티커로 재미 요소 강화

Page 5: 음성메신저 Hay 개발 후기

2. 클라이언트의 화면 구성 (1)

Page 6: 음성메신저 Hay 개발 후기

2. 클라이언트의 화면 구성 (2)

Page 7: 음성메신저 Hay 개발 후기

2. 클라이언트의 화면 구성 (3)

Page 8: 음성메신저 Hay 개발 후기

2. 클라이언트의 화면 구성 (4)

Page 9: 음성메신저 Hay 개발 후기

3. 서버 - 클라이언트 구성도

Page 10: 음성메신저 Hay 개발 후기

4. 스크럼 적용 후의 반성 (1)

스크럼 ?

Page 11: 음성메신저 Hay 개발 후기

4. 스크럼 적용 후의 반성 (2)

기획 디자인 개발 QA

기존 개발 방법

Page 12: 음성메신저 Hay 개발 후기

4. 스크럼 적용 후의 반성 (3)

스크럼이란 ?

애자일

짧은 개발주기의 반복을 통한 점진적 개발방법론

Page 13: 음성메신저 Hay 개발 후기

4. 스크럼 적용 후의 반성 (4)

개발 과정 요약1) 구성 : 제품 책임자 , 스크럼 마스터 , 팀원

2) 제품 백로그를 만든다 .3) 스프린트 계획회의를 통해 스프린트와

스토리들을 정하고 스프린트 백로그를 만든다 .4) 일일 스크럼을 진행한다 .5) 스프린트의 목표가 달성되었거나 , 정해진

시간이 되었다면 , 데모한다 .6) 스프린트에 대하여 회고한다 .

Page 14: 음성메신저 Hay 개발 후기

4. 스크럼 적용 후의 반성 (5)

1) 독립적인 팀 구성 필요

( 의사결정의 범위가 팀을

벗어나지 않아야 한다 .)2) 기획 , 디자인 , 개발 단계의 통합

다시 한다면 ?

Page 15: 음성메신저 Hay 개발 후기

5. 클라이언트 개발시 TDD 적용 후의 반성(1)

TDD 란 ?

1) Test Driven Development( 테스트 주도 개발 )

2) 어떻게 테스트할지를 먼저

고민한다 .3) 테스트케이스를 먼저 만든다 .

Page 16: 음성메신저 Hay 개발 후기

5. 클라이언트 개발시 TDD 적용 후의 반성(2)어려웠던 점

1) UI 에 대한 테스트케이스는 비용 대비

효과가 낮다 .(UI 개발 70% + 서비스 로직 개발

30%)2) 앱의 생명주기와 관련한 동작 테스트

3) 라이브러리가 시스템 자원을

비동기적으로 사용하는 경우

Page 17: 음성메신저 Hay 개발 후기

5. 클라이언트 개발시 TDD 적용 후의 반성(3)TDD 보다는 TBD?1) Test Based Development2) 테스트를 우선하자는 전제를 버리고 ,

테스트를 기반으로 개발하면 ,행복해진다 !

3) 테스트 프로젝트와 TestActivity 병행

Page 18: 음성메신저 Hay 개발 후기

6. 적용한 오픈소스 라이브러리 소개

1) MP3 인코딩 : LAME => libmp3lame (jni)

2) MP3 디코딩 : JLayer => jl1.0.1.jar

3) 음성 변조 : soundtouch (jni)

Page 19: 음성메신저 Hay 개발 후기

7. 당면했던 문제 및 해결 방법 (1)

음성 변조에 대한 사용자 반응성 개선

문제 ) 1 분짜리 음성을 변조하는데 20 초 ??해결 ) 여러 조각으로 나누고 , 한조각씩 결과 파일에 반영한다 !주의사항 ) 1) 완료전 다른 파일을 변조할 경우 기존 동작은 종료 처리2) 변조후 조각이 작아질 수 있다 .

Page 20: 음성메신저 Hay 개발 후기

7. 당면했던 문제 및 해결 방법 (2)

음성 변조 과정에서의 메모리 문제 해결

문제 ) 메시지 전송시 OutOfMemory 오류 발생

해결 ) 많은 메모리를 요하는 작업은 다른 프로세스의 Service 에서 실행한다 .

Page 21: 음성메신저 Hay 개발 후기

감사합니다 .