2015. 1. 5. 23:53

모바일 앱을 기획하고 개발하는 데 있어서 앱의 외양과 작동 방식에 대해 미리 상상하기는 어렵다. 손으로 그린 그림 또는 포토샵등으로 그린 그림들이 실제 디바이스에서 그렇게 보일 것이라고 장담할 수도 없다. 내가 생각하는 그 앱이 내가 생각하는 그대로 화면에 출력되고 작동할 것인지에 대해 알기 위해서는 간단한 스케치 및 그를 기반으로 한 프로토타입 과정을 거쳐야 한다. 여기서 사용하는 프로토타입은 일정한 범위에서의 구현이 필요한 결과물을 의미한다. 

일정 범위에서의 구현이 필요하다는 의미는 앱을 기획하려 하였으나 기획 과정에서 구현이 이미 이루어지며, 구현의 한계로 인해 기획이 바뀌는 상황이 발생할 수도 있다는 의미이다. 앱의 기획이나 구현 과정이 반복적으로 이뤄지는 것이며 반복을 통해 앱이 점차 자신의 정체성을 찾아가는 것은 정상적인 것이겠으나, 그 과정이 길어지면 길어질수록 현재 기획 중인 앱을 통해 수익을 창출하는 것은 점점 더 어려워진다. 

또한 구현 뒤에 기획 상의 문제 또는 구현 상의 문제로 재개발을 해야 하는 상황이 발생할 수도 있다. 이런 상황들을 100% 회피가능한 해결책이 있지는 않겠지만, 최소화시킬 수 있는 방법이 필요하다. 그러기 위해서는 구현을 시작하기 전에 내가 원하는 앱은 어떻게 생겼으며 어떻게 작동하는 지에 대해 명확하게 그리고 그 앱의 잠재적 사용자 층 또는 개발팀, 디자이너등으로부터 의견을 얻어서 앱의 외양, 기능, 플로우등을 정제하는 작업이 필요하다. 이 과정을 프로토타입이나 와이어프레임이라고 부르는데 개인적으로는 프로토타입은 구현 결과물의 성격이 좀 더 강한 것 같아서 기획 단계에서 사용하는 방법으로서는 와이어프레임이 더 적절한 것으로 생각한다. 


아래는 와이어프레임을 지원하는 툴들에 대한 자료를 찾는 과정에서 발견한 자료로 와이어프레임을 고려한다면, 아마도 와이어프레임을 통한 기획 단계 후에 개발이 이뤄져야 할 것으로 보지만, 참고할 만한 툴 목록일 듯하여 원문을 번역하여 게시한다.

================================================================

Source : http://www.nodesagency.com/the-4-best-tools-for-creating-awesome-mobile-app-wireframes/

Tim Groot, April 22, 2014


앱 개발 과정의 첫 단계들 중 하나는 와이어프레임이다. 앱의 기능이 어떤 것이고 어떤 부분이 더 명확해져야 할 것인지에 대한 느낌을 얻기 위한 훌륭한 방법이다. 와이어프레임을 위한 툴은 많지만, 우리는 심플함을 유지하고 가장 좋은 네 가지를 포함시키기로 결정했다. 하지만 먼저 와이어프레임이 뭔지부터 먼저 정확히 하자.

와이어프레임의 목적

와이어프레임에 대한 고전적 정의는 다음과 같다: 선과 점으로만 표현되는 3차원 골격 모델. 이것은 와이어프레임에는 어떤 스타일링이나 색채나 그래픽등이 포함되어 있지 않다는 의미이다. 그 목적은 공간 할당, 내용의 우선순위 결정, 지원되는 기능들을 정의하기 위한 것이다. 와이어프레임의 목적에 대해 더 알고 싶으면, 이 글을 읽어보라. 모바일 앱은 다양한 제스춰들을 갖고 있고 이로 인해 와이어프레임을 만들때 적절한 도구가 필수적이다.

Kiss (Keep It Simple, Stupid)[각주:1] 등급

우리는 와이어프레임 도구에 대해서는 더 간단할수록 더 좋다고 얘기하며 따라서 가장 좋은 4개의 와이어프레임 도구들을 Kiss Level에 맞춰 등급을 매겼다.

1. Infragistics

우리는 이 툴이 정말 인상적이었다. Infragistics는 깔끔하고 단순하고 대단한 기능들을 가지고 있다. 와이어프레임/프로토타이핑 세계에 익숙하지 않다면, 약간의 학습 곡선이 있긴하다. 아지만 일단 기본을 이해하게 되면, 가지고 일하기에 정말 재미있는 도구이다. 유일한 문제는 가격인데, 구독형(subscription)이 아니라 한 번만 가격을 지불한다.

가격: $495 (Indigo Studio, 영구 라이센스)
Kiss 등급: 9/10 (훌륭하지 않은 유일한 것은 가격이다.)



2. proto.io

기능이 많고 제스춰도 많은 앱에게는 Proto.io가 좋은 도구이다. Infragistics보다는 덜 직관적이지만, 돈 버는 면에서는 더 많은 가치가 있다. 웹 기반이라 편리하고, Just In Mind 에서 Prototype Pro까지 비교했을 때, 약간이라도 더 나은 부분이다.

가격 : 프리랜서 버전 월 24달러(4가지 버전이 있음)

Kiss 등급 : 8/10



3. JustInMind

좀 더 고급스러운 프로토타입을 위해서는 Just In Mind의 Prototyper pro가 좋은 도구이다. 무료 버전도 이미 충분히 훌륭하고 프로 버전의 가격도 Infragistics보다 싸다. 그러나 Infragistics보다 약간 더 어렵다.

가격 : 연간으로 결제 시 월 19달러, 월 단위 결제 시 29 달러

Kiss 등급 : 7/10


4. Fluid

Fluid는 간단한 와이어프레임을 신속하게 만드는 데 훌륭한 도구이다. 덩치가 작은 앱에 효과적인데, 우리가 이걸 내부적으로 사용하고 있는 이유이다. 그러나 우리는 덩치가 큰 앱에 대해서도 똑깥이 모든 것을 단순하고 깔끔하게 유지하려면 많이 복잡하다는 것을 발견했다.

가격 : 월 29달러(표준 팩)

Kiss 등급 : 7/10


결론

우리는 위에 언급한 도구들을 모두 사용하고 있고, 간단한 와이어프레임이나 신속한 Mockup에는 Fluid가 최상이라는 것을 발견했다. 덩치가 큰 프로젝트라면 더 다양하고 많은 기능들을 제공하는 proto.io나 JustInMind를 사용하기를 권장한다.

  1. wikipedia(http://ko.wikipedia.org/wiki/KISS_원칙)에 나와 있는 정의를 인용하면 다음과 같다.
    ===================
    KISS는 “Keep it small and simple.”, “Keep it short and simple.”, 또는 “Keep it simple, stupid.”의 첫글자만 따서 만든 약어로, KISS 원칙이란 디자인에서 간단하고 알기 쉽게 만드는 편이 좋다는 원리를 말한다. 이 표현은 아마도 프로그래밍 언어 포스(Forth)를 발명한 척 무어가 쓰기 시작한 것으로 보이며, 프로그래머들 사이에 많이 통용되는 격언이다. 이 디자인 원리는 간단하고, 나중에도 쉽게 이해되는 해결 방법을 최적의 해결책으로 생각한다. KISS는 과학 이론에서 있으나 없으나 차이가 없는 불필요한 가정은 잘라내야 한다는 오컴의 면도날 원칙과도 맞닿아 있다. [본문으로]
Posted by 알 수 없는 사용자
2015. 1. 5. 15:17

이제 우리는 우리가 만들 앱에 대한 아이디어와 개발 플랫폼을 결정하였다. 이제 당신의 아이디어를 실체화 시킬 때가 되었다. 코드 작성으로 뛰어들기 전에, 코드를 재작성하거나 또는 리팩토링하는 것으로 끝나지 않도록 약간의 기획이 필요하다. 이것이 기획 프로세스에서 우리의 다음 단계인 프로토타이핑(prototyping)이다.


프로토타이핑(Prototyping)

전통적으로 어플리케이션 스펙을 생성하는 여러 가지 방법이 있다. 앱 개발 시에 (보통은) 제한된 수의 화면과 기능들 때문에 와이어프레임과 프로토타입을 만드는 것이 점차 인기를 얻고 있다. 와이어프레임 스케치는 당신의 생각을 종이에 그려서 앱이 어떤 기능을 가질 것이고 어떤 흐름을 가질 것인지 함께 계획하는 첫 단계가 된다.

당신은 여기서 멈추고 바로 개발을 시작할 수도 있다. 하지만 지금까지 그려진 것들로도 앱이 개발된 후에 실제로 핸드폰 상에서 어떻게 느껴질 것인지 그림을 그리기 어렵다. proto.io로 가보자.
proto.io는 디자이너와 개발자들이 디지털 와이어프레임, 플로우, 그리고 디자인들을 코드 작성없이 쉽게 만들 수 있게 해 주는 서비스이다. 이건 와이어프레임을 당신의 손 안에 잡게 해주고, 버튼들을 태핑하고, 화면 사이에서 움직이게 해주는 아주 대단한 방법이다. 이 버튼이 이 영역에서 가장 잘 작동할 것인가 아니면 저쪽에서 잘 작동할 것인가? 화면들을 이 순서대로 배열하는 것이 의미가 있을까? 이런 질문들에 대해 최소한의 노력으로 코드 작성하기 전의 초기 단계에서 대답할 수 있으면 수백 시간의 개발 시간을 절약할 수 있을 것이다. 당신이 한 명 이상의 팀이라면, 빨리 반복하고 아이디어들을 주고 받을 수 있는 훌륭한 방법이다. 한편으로 프로토타입들이 당신의 디바이스에서 살아 움직이는 것을 볼 수도 있다.

이 단계는 당신은 여전히 개략적인 설계들을 사용 중일 것이다. 즉 이쁘지 않고, 네모 버튼, 90년대 스타일의 웹 사이트 같은 뭐 그런 것들. 중요한 것은 기능을 세분화(nail down)하여 프로토타입이 당신이 앱에서 하고자 하는 모든 것들을 명확하게 표현하는 것이다. 물론, 디자인 과정은 가능한 한 빨리 시작하는 것이 좋다. 그래서 지금이 시작하기 딱 좋은 때이다.  디자인들은 병렬적으로(asynchronously) 만들어지고 개발단계에 적절한 때에 하나의 옷처럼 기워질 수 있다.(woven)

디자인

고백하는 것으로 시작해 보자. 나는 엔지니어이다. 나는 토목 공학(civil engineering)과 컴퓨터 과학을 전공했고, 내가 우아한 코드보다 즐기는 몇 가지 것들이 있다. 내가 앱을 만들기 시작했을 때, 난 사용자들 또한 그 앱을 사랑할 것이라고 믿었다. 내가 몇 개의 앱을 런칭하고, 앱 스토어에서 경쟁을 하게된 후에야, 좋은 디자인이 얼마나 중요한 지 깨달았다.  

눈을 사로잡아라.

당신의 앱 디자인은 사용자들이 당신이 생각하는 것을 느끼는 첫번째 터치 포인트이다. 당신의 앱을 열기도 전에, 그들은 앱 스토어에서 수많은 옵션들을 스크롤하고 있다. 그들이 느낄 첫번째 것들은 아마도 제목, 별 평가, 그리고 아이콘일 것이다. 이런 것들이 사용자들의 호기심을 불러일으켜서 당신의 앱을 탭한다고 가정해보자, 그들은 설명을 읽기 전에 당신의 스크린샷들을 볼 것이다. 

이런 것들은 사용자의 선택 과정(process)에서 가장 중요한 포인트이고, 이들은 모두 당신의 디자인에 대해 사용자의 호감(appeal)에서 출발한다. 자 당신은 무엇을 할 수 있을까?

야하지만(flashy) 외설스럽지 않은(gaudy)
검색 결과와 순위 안에서 발견됨으로써 당신의 앱이 매우 의미있는 앱임을 증명할 수 있다. 앱 스토어에서 검색을 통해 경쟁 앱들을 확인하고 경쟁자들의 아이콘들을 보면서 경향(트렌드)이 어떤 지 파악해라. 당신이 다음과 같은 스크린을 본다면, 어떤 것이 두드러지느냐? 당신의 경쟁자들을 알고 당신이 경쟁력을 갖고 대중 속에서 두드러지기 위해서 할 수 있는 모든 것을 해야 한다는 것을 기억해라.

크고, 짙은 색깔은 눈을 사로잡는 데 큰 도움이 될 수 있다. 하지만 그런 아이콘들이 당신의 메시지를 잘 전달해야 한다. 당신이 업무 앱을 만들고 있다면 네온 핑크색 같은 건 갈 길이 아닐 것이다.

내용

당신의 로고는 명확하고 간결해야 한다. 사용자들이 당신의 아이콘과 로고로부터 직접적으로 당신의 앱이 무엇을 하는 지 이해할 수 있어야 한다. 너무 많은 정보를 넣지 않도록 하고, 너무 많은 색이나, 복잡하게 디자인된 아이콘 등을 피해야 한다. 아이콘이 어지럽고 요란하다면, 사용자는 당연히 당신의 앱도 그럴 것이라고 생각할 것이다. 다음의 아이콘들을 보자, 어떤 것이 더 많이 그려진 것 같은가?

대단한 경험을 만들기

당신이 가장 좋아하는 앱을 생각해보자. 가장 많이 사용하는 앱일 필요는 없으며 즐기는 앱이면 된다. 하나를 지금 바로 열어서 디자인을 보자. 아마도 깨끗하고(clean) 명확하며(clear), 친숙한 색채(color scheme)로 되어 있을 것이다. 앱을 디자인할 때, 이 세 컴포넌트는 좋은 경험을 만드는 데 핵심적이다.

그러나 일반적으로는 디자이너들이 픽셀이 아주 정확하게 계산된 많은 화면들과 손이 많이 간(hand over) 포토샵 파일들을 만들어 낸다. 그들이 거기에서 멈추게 하지 마라. 훌륭한 앱은 대단해 보일 뿐만 아니라 대단하게 느껴져야 한다.

당신은 "도대체 그게 뭔 소리야"라고 물을 지 모른다. 그러니 당신이 좋아하는 앱을 탭하기 시작해라. 당신이 평소에 느끼지 못했던 것들을 느끼려고 시도해보라. 화면 사이의 이동이나 뷰가 화면에 뜰 때 애니메이션이 커지는 것, 탭했을 때 반짝이는 버튼, 적절하게 실행되는 애니메이션(clever loading animation) 등. 이런 것들이 적절하게 이뤄지면, 이것들은 당신의 경험과 충돌하는 것이 아니라 오히려 강화시킨다. 사용자가 당신의 앱을 탭하는 걸 즐긴다면, 당신은 제대로 된 길에 서 있는 것이다. 


사용자들이 좋게 느끼는 앱 중 내가 좋아하는 한 예는 아이폰의 B&H Photo이다. 당신이 이 앱을 다운로드해서 쇼핑카트에 뭔가 추가하기를 권한다. 어서 시도해 보라. 그리고 당신이 즐기지 않는 척 하지 않기를 바란다. 무언가에 돈을 지불하는 것을 즐기는 사용자를 당신이 얻게 된다면, 당신은 제대로 한 것이다.

결론

적절한 기획은 당신의 몇시간, 몇일, 몇주 그리고 심지어 몇달의 낭비되는 개발 시간을 절약해 줄 수 있다. 처음에는 지나친 오버헤드처럼 보일 수도 있으나 어떤 규모의 팀들이라도 개발을 시작하기 전에 구현해야 하는 주요 특징이나 화면들을 알 수 있어야 한다는 것은 필수적이다. 개발이 시작되면, 디자인을 정제하거나 반복 과정을 거쳐 개선되는 것이 동시에(in parallel) 이뤄질 수 있다. 이상적으로는 앱 론칭을 준비할 때, 디자인과 개발이 합쳐져서 하나의 대단한 앱으로 만들어 진다. 

이제 프로토타이핑과 디자인에 대해 생각할 거리를 얻게 되었으니 당신과 당신의 팀이 효율적인 개발자(coder)가 되도록 도와줄 훌륭한 IDE에 대해 얘기할 다음 회차(installment)를 지켜보라.

——————–

Crittercism is the leading provider of mobile crash reporting and performance monitoring with over 20,000 apps utilizing the platform. With a simple SDK, you can add top of the line performance monitoring in less than 10 minutes. Sign up for free at http://crittercism.com/

Chris is a Developer Evangelist at Crittercism, and has been building apps for iOS and Android since the early days of the iPhone SDK. His apps have gathered tens of millions of downloads across platforms and he continues to build as the lead developer for Whitewater Labs.

——————–


Posted by 알 수 없는 사용자
2015. 1. 5. 14:31

Source : https://www.crittercism.com/blog/step-2-picking-a-platform-for-your-mobile-app/


 on December 5, 2014

앱을 개발할 때, 먼저 고려해야 할 것들 중 하나가 어떤 플랫폼에 맞게 개발할 것이냐이다. 우리 앱이 iOS, 안드로이드, 윈도우즈, 블랙베리, 타이젠, 기타 플랫폼에서 실행되기를 원하나요? 쉬운 답이 있다. - 모든 플랫폼.

이게 논의의 끝이라면 좋겠지만, 당신이나 당신 회사가 가진 리소스는 제한되어 있다.(그렇지 않다면, 나도 좀 끼워 주기 바란다). 아주 많은 디바이스들이 있고 맞춰서 개발해야 하는 많은 시스템들이 있기 때문에 현명하게 전투를 선택해야 한다. 

당신의 앱은 어느 단계에 있는가?

당신의 앱이 새로운 아이디어이고, 그걸로 뭔가 대단한 걸 만들기를 기대하는데 어떤 경로를 거쳐서 거기에 도달하게 될 지 알 수 없다면, 빨리 개발해서 여러번 반복할 필요가 있다. 이를 위해 당신은 하나의 플랫폼을 정해서 개발 시간을 줄이기를 원할 수도 있다. 가능하다면, 당신이 이미 아는 하나의 언어를 사용해라(우리는 다른 포스트에서 나중에 이에 관해 얘기할 것이다.) 당신의 앱이 진정한 정체성(아이덴티티)을 찾고 기능들이 안정되면, 개발에 더 시간을 투자할 수 있고 다른 플랫폼으로 확장할 수도 있다.

얼마나 빨리 시장에 도달해야 하느냐?

당신의 앱이 첫번째냐 두번째이냐에 따라 전체 프로젝트가 성공할 수도 있고 실패할 수도 있다. 당신이 회사를 위한 모바일 가게를 만들고 있고 매일 이 앱이 사용되지 않으면 매출에 손해가 발생할 수도 있다고 하면, 안드로이드가 좋은 옵션이 될 것이다. 앱들이 몇 분안에 업로드되어 출시될 수 있기 때문이다. 반면 iOS와 윈도우에서는 최대 7일 이상 소요되는 검토 프로세스를 거쳐야 한다. 

어떤 플랫폼이 가장 많은 고객들에 도달할 수 있을까?

안드로이드가 디바이스 관점에서는 84%를 점유하고 있지만, 이 디바이스들 모두가 앱 사용자는 아닐 수 있다는 점을 고려해야 한다. 우리의 목적에 맞는 품질 메트릭스는 다음 자료에서 찾을 수 있는데, 이 자료는 다양한 플랫폼의 활성화된 웹 사용자들(안드로이드 45%, iOS 44%)을 보여준다. 따라서 안드로이드 디바이스들이 더 많이 있긴 하지만, 앱 사용자 수로만 보면 iOS와 안드로이드의 사용자 수는 거의 비슷하다. 윈도우는 아직 갈 길이 멀지만, 지난 해에 약간의 traction을 얻었다.
 
어떤 디바이스를 사용하려고 하느냐?

다양한 핸드폰과 테블릿을 대상으로 해야 할 때, 어떤 크기의 디바이스가 얼마나 인기가 있는 지에 대해 Flurry에서 훌륭한 리포트를 제공한다. 중간 크기의 핸드폰이 여전히 챔피언이다. 하지만 당신의 use case를 고려해야 하는 것을 잊지 말아야 한다. 그리고 어떤 디바이스에 맞춰 개발할 것인지를 선택할 때 이 메트릭스들을 기억해야 한다.

TV, 시계, 혹은 다른 디바이스에 맞게 개발하려면 어떻게 해야할까? Apple도 그들의 시계를 곧 출시할 것이다. 하지만 안드로이드는 이미 다른 디바이스 시장에서 주류로 자리잡았고(mainstay), 가장 좋은 선택지일 것이다.

어떤 플랫폼이 가장 많은 돈을 벌어 주느냐?

넓게 얘기해서, iOS가 사용자들에게 더 많은(또는 더 자발적으로) 돈을 쓰게 만든다. 최근의 ZDNet 리포트를 보면, iOS가 어떻게 올해의 Black Friday 판매를 지배했는 지 알 수 있다. iOS는 안드로이드보다 무려 4배이상의 매출을 달성했다.


좀 더  소화가 쉬운 목록을 위해, 빅 3의 몇 가지 장단점(pros and cons)을 살펴보자.(check out)

iOS
장점
설계/개발 대상 디바이스 유형이 몇 개 안된다.
인구통계적으로 더 많은 돈을 지출한다.
시장 규모가 가장 크다.
사용자들이 더 빨리 OS를 업데이트하므로 최신 API를 이용하여 개발할 수 있다.
단점
개발자들이 디바이스와 OS에 접근하기 쉽지 않다.(not open)
앱 스토어의 검토 과정이 느리다.

안드로이드
장점
시장 점유율이 가장 크다.
앱스토어에서 앱을 출시하기 가장 쉽다.
단점
디바이스들이 다양해서 개발과 QA가 쉽지 않다.
사용자들이 OS 업그레이드를 늦게 하고 따라서 이전 API와 호환성을 유지해야 한다.

윈도우즈
장점
스토어에 앱이 많지 않다. == 경쟁이 덜하다.
많은 개발자들에게 친숙한 개발환경과 언어
데스크톱 앱으로 포팅이 가능하다.
단점
시장 점유율이 낮아서 사용자 손에 들어가기 쉽지 않다.

나의 선택
개인적으로, 나는 iOS에서 먼저 앱을 개발하는 경향이 있다. 소규모 개발팀으로써 우리에게는 설계하고 개발해야 하는 디바이스의 수를 최소화시키는 게 가장 큰 의미가 있기 때문이다. 우리의 앱은 일반 소비자를 타겟으로 하고 수익을 거두려고 하기 때문인데, iOS가 최소한의 시간을 들여서 돈을 지불하려고 하는 사람들에게 전달되는 것을 가능하게 해준다. 거기서 우리는 앱이 시장에서 어떤 퍼포먼스를 내는 지 볼 수 있고, 단일 플랫폼에서 앱을 개선하거나 변경하여 앱을 성숙하게 만들 수 있다. 이 때가 되면 안드로이드로 포팅할 수 있다.

결론
당신이 선택하는 플랫폼은 당신과 당신의 선호도에 달려있다. 그러나 이 글이 당신이 결정을 내리기 전에 어느 정도 생각할 거리를 주기를 바란다. 우리의 다음 포스트는 당신의 앱을 실체화시키기 위한 설계 및 와이어프레임(wireframe)을 다룰 것이다. 그때까지 채널 고정!

——————–

Crittercism is the leading provider of mobile crash reporting and performance monitoring with over 20,000 apps utilizing the platform. With a simple SDK, you can add top of the line performance monitoring in less than 10 minutes. Sign up for free at http://crittercism.com/

Chris is a Developer Evangelist at Crittercism, and has been building apps for iOS and Android since the early days of the iPhone SDK. His apps have gathered tens of millions of downloads across platforms and he continues to build as the lead developer for Whitewater Labs.  


Posted by 알 수 없는 사용자