스토리 홈

인터뷰

피드

뉴스

조회수 666

P2P금융 법제화, 논의 중인 주요 포인트는 무엇일까?

정부는 P2P금융이 조속히 입법화 될 수 있도록 국회 입법 지원 등에 전력을 다하겠습니다. 또한, P2P금융이 우리 금융산업의 일원으로서 자리매김 할 수 있도록 적극 지원해 나가겠습니다.2월11일 있었던 ‘P2P금융 법제화에 대한 공청회'에 참석한 최종구 금융위원장과 민병두 국회 정무위원장 (사진 출처 = 금융위원회)지난 2월11일 있었던 ‘P2P금융 법제화에 대한 공청회’에서 최종구 금융위원장은 이렇게 축사를 마쳤다. 지난 3년 여 간 P2P금융기업 창업자들과 많은 관련자들이 노력한 결실이 이루어 지기 시작하는 순간이었다. 공청회에 참석한 미디어와 수많은 방청객들 모두 정부가 이 새로운 금융산업에 대해 어떠한 방향성을 갖고 있는지 명확히 느낄 수 있는 시간이기도 했다. 정부와 국회가 모두 뜻을 모아 추진되고 있는 P2P금융 법제화, 현재 논의 중인 사항들 중 가장 중요한 포인트는 무엇이 있을까? 첫째는 금융회사가 P2P금융사가 집행한 대출에 투자할 수 있도록 허용하겠다는 내용이다. 금융회사가 P2P금융에 투자하는 것은 개인 투자자를 보호할 수 있는 좋은 방법이다. 전문적인 리스크 관리팀이 P2P금융회사의 심사평가능력과 채권 관리 프로세스를 엄격하고 지속적으로 관리감독하게 되기 때문이다. 둘째는 P2P금융사의 자기자본 투자를 허용하겠다는 내용이다. 자기자본대출 역시 대출 고객 보호를 위해 필수적이다. P2P 대출을 받는 고객들 대부분이 3일 이내에 대출을 받지 못할 경우, 대출금이 모이는 기간을 기다리지 못하고 고금리 대출을 받는 경우가 많기 때문이다. P2P금융을 통해 10% 초반대의 중금리 대출을 받을 수 있음에도 불구하고 20%에 가까운 고금리 대출을 받게 되는 상황을 줄이기 위해서는 P2P금융회사의 자기자본대출이 허용되어야 한다는 것이 업계의 지속적인 요구 사항이었다. 무엇보다 자기자본 투자를 허용하고, 금융회사가 투자할 수 있도록 하겠다는 내용은 전세계 P2P금융산업의 발전 양상에 부합하는 방향성이다. P2P금융이 이미 10여 년 앞서 발전해 전체 금융시장의 약 5% 이상을 차지하고 있는 미국 시장의 경우, 대표적인 P2P금융사인 렌딩클럽이나 프로스퍼 등 회사의 투자 중 80% 이상이 전통적인 금융회사와 사모펀드의 대체 투자로 이루어져 있다. P2P금융은 빅데이터 분석 기반의 정교한 심사평가모델을 개발해, 기존 금융권이 발전시키지 못한 중금리대출을 활성화 시켜 새로운 소셜임팩트를 만들어 내고 있다. 지난 1월 기준 마켓플레이스금융협의회 회원사인 렌딧, 모우다, 팝펀딩, 펀다, 8퍼센트 등 5개사의 차입자(근로소득자와 개인사업자)가 아낀 이자의 총합은 약 408억원이며, 소상공인 대출을 취급하는 4개사의 차입자(1,366개 상점 및 1,108개 사업자)가 창출한 고용 효과는 약 13,025명으로 집계된다. 3월에 접어 들며 국회가 정상화 되었다는 반가운 소식이 들렸다. 그간 인터넷기업협회, 코리아스타트업포럼, 스타트업얼라이언스, 엔젤투자자협회 등 업계의 여러 조직들이 많은 도움을 주셨다. 어쩌면 한국 스타트업의 새로운 역사가 될 지도 모르는 P2P금융법안에 대한 논의가 잘 이루어지고, 새로운 산업에 대한 법제정이 이루어지기를 기대해 본다. 
조회수 1012

이곳을 이렇게 바꿔주세요.(빙빙돌려 설명하지 않기)

이젠 좀 질릴 정도로 진부한 소재가 되었습니다. 그런 거 있잖아요. 너무 밝지 않은 화이트톤, 빈티지하면서도 뭔가 개성이 살아있는 느낌..등의 표현말예요. 그래서 오늘은 서론을 길게 끌지 않겠습니다. 짧게 정리하고 바로 넘어갈께요. 1. 클라이언트가 디자이너의 용어를 알 필욘 없습니다.2. 하지만 그게 아무말이나 하란 얘긴 아닙니다.네, 사실 핵심은 이겁니다. 명도니 채도니, 레이아웃이니 이런 용어들 안쓰셔도 됩니다. 모르는 게 당연합니다. 디자이너들도 클라이언트가 이런 용어 모른다고 막 불평하고 답답해하고 그러면 안됩니다. 어차피 서로 일하는 분야가 다른 것일 뿐입니다. 디자이너도 클라이언트 업계에서 쓰는 용어 모르는 건 매한가지니까요. 다만, 서로 뭔가 말을 할 때 '명확하게' 말할 필요는 있습니다. 지금부터 땋땋 찝어드릴 께용. 오늘은 짤이 없어요!!! 텍스트만 재미없게 우르르 써놓을 거예요.ㅋㅋ왜냐면 오늘은 딱히 짤이 어울리지 않는 쒸익쒸익 내용이거든요!1. 채도는 색의 진하기를 말합니다. '진하게/연하게' 라고 표현합니다. 2. 명도는 밝기를 말합니다.(색과 관계가 없습니다.) '밝게/어둡게' 라고 표현합니다.3. 색상은 '계열'이란 말로 표현합니다. 빨강계열, 노랑계열이라고 말합니다. '느낌' 이 아닙니다. 빨강느낌, 노랑느낌...이 아닙니다. 노랑느낌은 어떤 느낌인가요. 뭔가 간이 안좋아보이는 느낌이랄까. 느낌 쓰지 않습니다. 느낌싫어. 느낌아니예요. 4. 색앞에 형용사는 하나만 붙입니다! .(진한 빨강 / 연한 빨강 / 밝은 빨강 / 어두운 빨강) 이렇게 씁니다. 두 개 붙이지 않습니다. '어두운데 밝은 빨강 느낌....' 이렇게 말하지 않습니다. 5. 한 문장에 하나씩만 지시합니다. 이 로고 지워주시고, 타이틀 좀 크게 해주고...어쩌고.이렇게 기차놀이 하지 않습니다. 반드시 넘버링을 하고, 각 번호엔 하나씩만 지시합니다. 1)상단 로고 지워주세요.2)타이틀 글자 조금만 키워주세요.3)이미지에 선을 굵게 해주세요. 등등6. ~했으면 좋겠습니다..이런 어미는 되도록 피하세요.물론 예의차리려고 하는 말인건 알지만, 괜히 문장만 길어지고 난잡해집니다. 해라! 마라! 정확하게 끝맺음 해주시는 게 좋아요. 좀 강해보이기도 하구요. 이를 테면 이런 식입니다.어려우시겠지만, 이미지 부분을 조금 더 밝게 바꾸면 어떨까 싶은데, 디자이너님 생각은 어떠세요? 너무는 말고 약간만 밝게해서 글자가 조금 잘 보였으면 해서요 ㅎㅎㅎ..부탁드리겠습니다.ㅠㅠ이렇게 안하셔도 됩니다.- 글자가 잘보이도록 이미지 밝기 조정 부탁드립니다.라고 말하시면 됩니다.7. 위에서부터 말해주세요. 상단부터 수정사항을 순서대로 말해주세요. 위 아래 위위 아래 와리가리 하다보면 뭔가 엉망진창이 되거나 기껏 맞춰놓은 무언가가 또 틀어지곤 합니다. 8. 큰 것부터 작은 순서대로배경/이미지/전체 톤/컨셉이 바뀌는 게 먼저입니다. 자잘자잘한 텍스트 수정이나 굵기 수정 이런건 큰 것들이 맞춰진 뒤에 하는 겁니다. 보통 피드백줄 때 의식의 흐름대로 막 넘버링하면 마구 섞이기 마련입니다. 일단 수정 할 걸 다 나열한 뒤에 순서대로 넘버링해주세요. 이건 비단 클라이언트 뿐 아니라 디자이너도 마찬가집니다. 뭔가 할 말이 있거나 요청사항이 있다거나..또는 시안전달시에 설명을 덧붙일 때도 큰 틀부터 세부사항으로 말하는 겁니다.9. 미리 드렸어야 하는데..란 말은 하지마세요.미리 주셨어야 하는 건 미리 주셔야 합니다. 이를테면 컨셉 레퍼런스라던가, 바뀐 텍스트라던가, 꼭 써야만 하는 이미지파일 등등 말입니다. 혹시나 다른 팀에서 받아야 하는데 다른 팀원이 나를 견제하는 중이라서 파일을 안넘겨주고 있다면 "이러저러해서 이틀정도 늦어질 것 같아. 그 전에 다른 작업부터 부탁드린다."이런 식으로 언지가 있어야 합니다. 물론 나도 당신이 이기길 바라기 때문에 이틀정도는 충분히 기다려드릴 수 있습니다. 승전보와 함께 파일을 주시기 바랍니다.10. 빈티지한 느낌 어쩌고 이런 말 하지마세요.그런 컨셉을 얘기하는 거라면 차라리 본인이 예쁘다고 생각했던 이미지파일을 주세요. 이런 컨셉이면 좋을 것 같다~ 라고. 하나만 주면 눈치채기가 좀 어렵습니다. 보통 2,3개 정도는 받아봐야 그 레퍼런스들의 공통점을 분석할 수 있거든요. 그러니 서로 피곤하게 '세련되면서도 인간미가 있는 느낌...' 이런 우주적인 표현말고 그냥 그림으로 얘기하도록 합시다.11. 자꾸 모순된 표현을 하는 이유.'밝은데 탁한 느낌, 어두운데 너무 어둡진 않은 느낌' ....얼핏보면 말도 안되는 오퍼같지만 이게 무조건 잘못된 건 아닙니다. 예를 들면 기괴한데 아름다운 느낌. 팀 버튼이랄지, 길예르모 델토로 감독의 영화들을 떠올려보시면 쉽게 이해가 되시죠? 어둡고 음침한 배경에 인간미넘치는 괴물과 꽤나 희망적인 사랑을 얘기하고 있잖아요. 또는 쓸쓸하면서도 찬란한 느낌도 가능은 하겠네요. 총천연색의 오렌지빛 배경에 쓸쓸한 피사체 하나랄까요. 근데 이것들을 가만 보면, 공통점이 있습니다. 그렇죠. 배경의 톤은 하나입니다. 그 내부의 사물이나 인물이 부가적인 분위기를 만들어내는 거죠. 셰이프오브워터란 영화에서 사랑얘기를 빼버리면 그냥 인어괴수 영화가 되버리고 맙니다. 크리스마스의 악몽에서도 잭이 뭔갈 깨닫는 씬이 없었다면 그냥 악몽 그 자체로 끝나버릴 이야기에요. 우리가 흔히 얘기하는 '빈티지하지만 세련된' 느낌이란 건 굳이 풀자면 배경은 빈티지하지만 그 안에 오브젝트는 세련된 느낌일 거에요. 1980년대의 올드한 집이 배경이지만 내부의 소품들은 굉장히 고풍스럽고 고급진 금장이 군데군데 박힌 상태죠. 네, 무슨 말인지는 잘 알겠습니다. 다만 표현을 저렇게 해버리면 안되는 거예요. 앞으로 굳이 저런 식의 주문을 해야한다면 배경은 어떻게 / 사물,사람은 어떤 상태를 나누어서 얘기해주세요. 그냥 앞뒤 다 잘라버리고 한꺼번에 얘기해버리면 굉장히 난해해지고 맙니다.오늘의 이야기 끝 :) 
조회수 742

앱 데이터 분석 시 사용자 세그먼트의 필요성

사용자 세그먼트(USER SEGMENTATION)란? 모바일 분석 툴을 사용하면 앱 사용자에 대한 많은 정보를 얻을 수 있습니다. 하지만 방대한 데이터는 오히려 의사결정에 혼란을 일으킬 수 있어 비즈니스에 의미가 있는 데이터를 선별해서 보는 것이 중요합니다.‘사용자 세그먼트’란 데이터의 필터 기능으로, 1차 데이터를 하위 기준으로 분류해서 보는 것을 의미합니다. 예를 들어 앱 사용자 전체의 데이터를 성별, 연령, 국가, 플랫폼 별로 나누어서 보는 것도 세그먼트에 해당합니다. 이 기능을 이용하면 ‘우리 사용자는 누구인가?’ 에서 더 나아가, 앱 서비스의 충성고객, 구매고객, 이탈고객 각각의 특성을 파악하고 이에 맞는 비즈니스 전략을 만들 수 있습니다.아래 내용을 통해 앱분석 시 사용자 세그먼트의 방법과 필요성을 알아보겠습니다.사용자 세그먼트 적용하기사용자 세그먼트가 무엇인지 실제 데이터 분석 툴의 예시를 보며 자세히 알아보도록 하겠습니다. 모바일 분석 서비스 와이즈트래커는 기본 세그먼트와 사용자 정의 세그먼트 기능을 제공하고 있습니다.기본 세그먼트기본세그먼트 기능을 통해 플랫폼, 성별, 연령대에 따라 데이터를 분류할 수 있습니다. 비즈니스에 따라 사용자 구분 시 중요한 지표가 있다면, 그것을 기본세그먼트 항목으로 추가하는 것도 가능합니다. 광고채널, 회원여부, 회원등급 등이 이에 해당합니다.[ 와이즈트래커 세그먼트 설정화면 – 필요한 세그먼트를 더블 클릭하거나, 오른쪽 상단의 ‘Drag Here’ 로 세그먼트 항목을 Drop하면 세그먼트가 적용됩니다. 여러가지 세그먼트를 동시에 적용할 수 있습니다 ]아래 데이터는 기본 세그먼트 중 연령대(20대, 30대, 40대) 세그먼트를 이용해 [신규방문 vs 재방문] 리포트 데이터를 하위 분석한 결과입니다.이를 통해 단순히 신규방문/재방문의 수치/비율 뿐 아니라, 각 방문 유형별 연령대 구성을 파악할 수 있습니다. 이 데이터를 통해 처음방문자의 경우, 20대와 30대의 수치가 비슷하게 나타나지만 반복방문자의 경우 30대의 비율이 20대보다 훨씬 높게 나타나, 앱 서비스가 20대보다 30대에게 지속적으로 어필되고 있다는 것을 확인할 수 있습니다.사용자 정의 세그먼트사용자 정의 세그먼트를 통해 기본적으로 제공되는 세그먼트를 조합해 비즈니스에 필요한 맞춤 세그먼트를 설정할 수 있습니다. 예를 들어, 앱 서비스의 주요 고객이 iOS를 사용하는 20~30대 여성이라면 아래와 같이 해당 속성값을 가지는 사용자 정의 세그먼트 ‘iOS_2030_여성’을 생성합니다.위에서 생성한 세그먼트를 위의 [신규방문 vs 재방문] 리포트에 적용하면 아래와 같은 데이터가 나타납니다.이처럼 사용자 정의 세그먼트를 이용하면 앱 사용자를 비즈니스에서 정의한 타겟 고객군과 잠재 고객군으로 분류하여 유의미한 사용자 그룹의 숫자를 파악할 수 있습니다.사용자 세그먼트의 필요성데이터 분석은 분석 자체가 목적이 아니라, 비즈니스의 성장과 목표 달성에 도움이 될 때 의미가 있습니다. 그럼 사용자 세그먼트는 비즈니스의 성장에 어떤 도움을 줄 수 있을까요?1. 의사결정에 필요한 데이터를 선별해 추출할 수 있다. 신규 고객을 위한 이벤트 기획 시, 신규 고객들의 성별, 나이, 플랫폼 등을 세그먼트 기능을 통해 파악할 수 있습니다. 만약, 아래 테이블처럼 신규 고객의 대다수가 20,30대 여성이라면, 이들의 흥미를 끌만한 이벤트를 기획해 이벤트 참여율을 높일 수 있습니다.[ 와이즈트래커 내 처음방문자 방문수 데이터에 연령_성별 사용자정의 세그먼트를 적용한 화면 ]2. 어떤 유저가 우리 비즈니스에 가장 유의미한지 파악할 수 있다. 앱 서비스의 핵심적인 유저는 앱을 주기적으로 방문하고, 구매 빈도/금액이 높은 사용자입니다. 이들의 특성을 세그먼트를 통해 파악하고, 이러한 데이터를 기반으로 해당 사용자들의 충성도와 구매율을 높이기 위한 프로모션을 진행할 수 있습니다.[ 와이즈트래커 내 1회 구매자 방문수 데이터에 여성들의 연령_플랫폼 사용자정의 세그먼트를 적용한 화면 ]3. 오디언스 타겟팅(AUDIENCE TARGETING)에 이용할 수 있다.세그먼트 기능을 통해 파악한 특정 사용자 그룹의 특성을 바탕으로 오디언스 타겟팅을 진행할 수 있습니다. 앱에서 한번도 상품을 구매하지 않은 비구매자 그룹의 특징을 파악했다면, 이를 기반으로 해당 그룹의 ADID/IDFA를 추출해 구매를 유도하는 푸시메시지 또는 광고를 노출할 수 있습니다.[ 와이즈트래커 오디언스 타겟팅 설정화면. 비구매자 그룹의 주요 특징이 회원인 40대 국내 남성이라면 이들의 ADID/IDFA를 추출해 구매를 유도하는 푸시메시지/광고 프로모션을 진행할 수 있다.]비즈니스 성장의 지름길 고객에 대한 이해도가 높을수록 비즈니스는 빠르게 성장합니다. 이 때문에 모바일 비즈니스에서 사용자 세그먼트를 통해 비즈니스 고객군 별 특성을 정확하게 파악하는 것은 선택이 아닌 필수입니다. 모바일 데이터 분석을 이제 시작했다면, 사용자 세그먼트 기능을 통해 데이터에 깊이를 더하고 비즈니스 성장에 핵심적인 데이터를 확인해보세요!
조회수 2629

Eclipse 디버거 사용법

꽤 많은 분들이 디버거의 존재 자체를 모르고 있거나 혹은 디버거가 있다는 사실은 알아도 그 효용성에 의문을 제기하곤 합니다. 왜냐하면, 우리에겐 Log 클래스나 혹은 printf같은 훌륭한(?) 디버깅 도구가 있다고 생각하기 때문이죠. 물론 이렇게 필요한 변수를 찍어보면서 어떤 곳에서 버그가 있는지를 알아보는 일이 잘못된 일은 아닙니다만 복잡한 여러 상황이 맞물려 재현되는 버그는 이러한 고전적인(?) 방법을 써서 알아보기가 매우 어렵습니다.원인을 정확히 그리고 빨리 파악하려면 디버거의 사용법을 숙지하고 사용하는 것이 가장 좋습니다. 대부분의 개발 환경에서 디버거를 제공하는데 다행히 이클립스에서도 쓸만한 디버거를 내장하고 있습니다.오늘 포스팅에서는 이클립스 디버거 사용법에 대해 다루어 볼까 합니다.이클립스 디버거 뷰이클립스는 디버거 뷰를 제공하여 디버거를 사용할 수 있도록 합니다. 디버거 뷰는 어디에서 확인할 수 있을까요? 바로 우측 상단에 Debug 뷰에 들어가면 그곳에서 확인할 수 있습니다.디버깅의 시작그렇다면 어떻게 디버깅을 활성화한 상태로 프로그램을 실행할 수 있을까요? 상단 메뉴의 Run에서 프로그램을 실행할 때 Debug를 이용하여 프로그램을 실행하면 디버거가 작동하게 됩니다.브레이크 포인트 설정과 뷰보통 디버깅을 할 때 가장 먼저 하는 일이 브레이크 포인트를 잡는 일입니다. 브레이크 포인트를 에러가 일어나는 라인이나 혹은 의심이 가는 변수를 추적할 수 있는 라인쯤에 잡아놓고 프로그램을 디버깅하면 해당 라인을 실행할 때 디버거가 작동하게 되고 그곳에서 프로그램을 라인 별로 진행해가며 관찰을 진행할 수 있게 됩니다.브레이크 포인트 설정은 매우 간단합니다. 편집기 왼쪽에 파란 부분(마커 바)을 더블 클릭하게 되면 파란 원이 생기는데 이 원이 브레이크 포인트입니다. 혹은 오른 클릭하여 Toggle break point를 누르면 됩니다. 설정 후 다시 더블 클릭하게 되면 브레이크 포인트가 사라지게 됩니다.또한, 디버그의 브레이크 포인트 뷰에서 지금까지 걸어놓은 모든 브레이크 포인트들의 위치를 확인할 수 있고 활성화/비활성화, 삭제도 할 수 있습니다. 여러 브레이크 포인트가 걸려있을 때에는 이 탭에서 확인하고 관리하는 것이 더 편합니다.또한, 디버깅을 진행하고 있는 도중에도 다른 의심이 가는 라인에 브레이크 포인트를 걸 수 있습니다.스텝 단위 진행지정한 브레이크 포인트에 다다르면 동시에 디버거가 작동하게 되고 그 라인부터 스텝 단위의 진행을 할 수 있게 됩니다.이제 이 뷰의 버튼들을 이용하여 현재 상황을 진행하거나 되돌릴 수 있습니다. 자주 사용하는 버튼의 사용법을 알아보면Resume : 다음 브레이크 포인트를 만날때까지 진행합니다.Suspend : 현재 작동하고 있는 쓰레드를 멈춥니다.Terminate : 프로그램을 종료합니다.Step Into : 메서드가 존재할 경우 그 안으로 들어가 메서드 진행 상황을 볼 수 있도록 합니다.Step Over : 다음 라인으로 이동합니다. 메서드가 있어도 그냥 무시하고 다음 라인으로 이동합니다.Step Return : 현 메서드에서 바로 리턴합니다.Drop to Frame : 메서드를 처음부터 다시 실행합니다.등이 있습니다.실제로 디버깅 화면에서 버튼들을 눌러보면 쉽게 그 쓰임새를 아실 수 있습니다.변수의 상태 확인을 쉽게 해주는 변수 뷰디버깅을 진행하는 도중 변수의 값이나 객체의 상태를 알고 싶은 상황이 생기게 됩니다. 현재 의심이 가는 변수 이외에도 이 변수에 영향을 끼칠 다른 변수들이나 객체들의 상황을 실시간으로 검사할 필요가 있을 때 변수 뷰를 이용하면 도움을 얻을 수 있습니다.이곳에서 변수나 객체의 상태를 확인하고 변수의 상황에 대해서 저장할 수 있습니다. 변수나 객체의 상황을 모두 저장해서 클립보드에 붙이고 싶은 일이 생기면 해당 변수를 오른클릭 후 Copy Variables를 선택합니다.편집 창으로 돌아가 변수에서 Command + shift + i를 누르게 되면(혹은 오른 클릭 후 Inspect를 선택) Inspector 창이 뜨게 됩니다. 이 창에서 다시 한번 Command + shift + i를 누르면 해당 변수를 Expression 뷰로 보내게 되고 이곳에서 지속해서 변수의 상태를 관찰할 수 있게 됩니다.Expression 뷰 이용Expression 뷰에서는 변수 이름을 입력하거나 수행해보고 싶은 명령어를 직접 입력하여 그 결과 값을 관찰할 수 있습니다. 결과 값을 관찰할 뿐만 아니라 Expression에 써놓은 변수들은 명시적으로 지우지 않는 이상 계속해서 관찰을 수행하기 때문에 변해가는 상황을 지속해서 관찰할 일이 있는 변수나 명령문을 등록해놓기에 좋습니다.Display 뷰 이용디스플레이 뷰에서는 현 문맥에서 사용할 수 있는 명령어를 실행하거나 변수의 값을 조작하는 일을 수행하기에 적합한 환경을 제공합니다. Expression에서도 비슷한 기능을 제공하지만, 디스플레이 뷰를 이용하는 것이 더 편합니다. 메모장과 같이 쉽게 쓰고 지울 수 있기 때문입니다.또한, 원본 코드의 수정 없이 편하게 현재의 맥락을 변화시킬 수 있는 것이 가장 큰 장점이라고 볼 수 있습니다.필요한 명령어들을 적어놓은 후 실행하고 싶은 부분만 드래그하여 수행하거나 혹은 값을 리턴받을 수 있습니다. 지금은 boolean변수 하나의 값을 바꿔보기도 하고 조건 값에 따라 무언가를 리턴 받도록도 해놓은 상황을 스크린 샷으로 담아보았습니다.값을 반환받고 싶을 때는 두 번째 버튼을, 단순히 실행만 할 때에는 세 번째 버튼을 누르면 됩니다.두 번째 버튼을 눌러 값을 반환받는 상황입니다.단순히 실행만 하려면 세 번째 버튼을 누릅니다.브레이크 포인트에 조건 걸기브레이크 포인트에 조건을 거는 것이 굉장히 유용할 때가 있습니다. 특히 반복문안에 들어가 있는 코드들을 디버깅할 때 유용하지요. 반복문의 경우 모든 상황을 검사한다기보다는 특정 조건에서 값이 어떻게 들어가는지를 분석하는 경우가 더 많은데 이러한 상황을 검사하기 위해서 브레이크 포인트에 조건을 걸어야 합니다.브레이크 포인트를 거는 과정까지는 똑같습니다. 브레이크 포인트를 건 후 그 포인트에서 오른 클릭을 하면 Breakpoint properties 옵션이 있는 것을 확인할 수 있습니다. 이 옵션에서 조건문을 설정하여 디버거의 활성화 조건을 설정할 수 있습니다.먼저 Conditional을 활성화하여 어떤 조건에서 디버깅 화면으로 전환할지를 쓰면 되는데 이 창에 조건식을 쓰면 됩니다.또 hit count를 이용하여 조건을 걸 수도 있습니다. hit count에 값을 적용하면 해당 라인에 브레이크 포인트가 hit count만큼 잡힌 이후 디버깅 화면으로 전환하게 됩니다. hit count옵션은 반복문에서 한 100번쯤 이후에 디버깅을 시작하고 싶거나 하는 일이 생길 때 유용하게 쓸 수 있습니다.#스포카 #개발 #개발자 #꿀팁 #조언 #인사이트 #디버거 #디버깅 #디버그 #Eclipse
조회수 1532

"공간이 멤버에게 세미콜론 같은 존재였으면 좋겠어요."

패스트파이브는 현재 14개 지점을 운영하고 있습니다. 오픈을 기다리는 지점도 3개(강남역 3호점, 을지로3가역점, 을지로입구역점)가 남아 있고, 앞으로 계속 지점을 확장해나갈 계획이죠. 이 지점들은 흔한 프랜차이즈 카페나 브랜드 아파트처럼 똑같은 공간을 제공하지 않습니다. 각 지역의 성격과 입주사의 성격에 맞게 디자인되어 가장 편안하고 효율적인 업무 공간을 완성하니까요. 패스트파이브가 이처럼 세련되면서도 효율적인 공간을 제공할 수 있게 하는 가장 큰 힘, 늘 더 나은 오피스를 고민하는 공간 디자이너분들인데요, 오늘 Humans of FASTFIVE에서는 공간 디자이너 송영주 님을 인터뷰했습니다. 오피스 공간을 넘어 그 지역만의 성격과 특성까지 고려하는 디자이너 영주님의 이야기를 함께 만나보세요!Q. 영주님 안녕하세요, 간단한 본인 소개, 그리고 하시는 일에 대한 설명을 부탁드립니다. 안녕하세요, 공간 디자인팀 송영주입니다. 공간 디자인팀에서 하는 일을 간단히 설명하자면… 패스트파이브가 새로 건물을 계약하면 처음 공간 계획부터 시작해서 디자인 컨셉을 정하고 레이아웃을 잡습니다. 그리고 컨셉대로 디자인을 하죠. 그 뒤 공무 시공팀과 협업해서 현실화를 시킵니다. 지금 이 공간처럼요. 디자인 컨셉이라는 말이 생소하실 수도 있는데, 예를 들어 열두 번째 지점인 홍대점은 밝고 젊은 분위기를 컨셉으로 잡았어요. 그래서 기존 호점보다 컬러를 다양하게 많이 사용했어요. 그리고 그래픽 디자이너 성주 님과 협업해서 각 층마다 그래픽도 많이 사용했죠. 다양한 컬러와 그래픽이 사용된 패스트파이브 홍대역점다른 지점을 작업할 때도 지역 특성에 맞게 작업하려고 해요. 제가 외국에서 살다 와서 한국의 지역 특성에 대해 잘 몰랐거든요. 제가 사는 동네를 빼면 더 모르고요. 그래서 새로 지점을 맡을 때마다 지역에 대해 배우면서 작업을 해요. 이런 지점이 재미있고, 지역색을 배우면서 일하는 느낌이죠. 예를 들어 성수동도 아예 모르는 지역이었는데 성수점을 담당하게 되어서 처음부터 공부하면서 작업을 했어요. 지금 작업 중인 을지로입구역점도 리서치를 많이 했죠. 젊은 사람들부터 노인분들까지 다양한 연령대가 모이는 곳이고, 정말 만물이 다 있는 동네더라고요. 이렇게 다양한 사람들과 사물이 섞이면서도 서로에게 간섭하지 않는, 그러면서도 영향을 주고받는 모습이 새롭고 신선했습니다. 을지로입구역점 작업도 재미있을 것 같아서 기대돼요. Q. 인테리어에 지역의 특징을 담아낸다는 이야기가 신선하게 느껴지는데요, 외국은 인테리어 디자인에 지역색을 많이 반영하는 편인가요? 미국은 특히 많이 담아내는 것 같아요. 주마다 프라이드가 굉장히 강하고, 자기가 어느 주 출신이라는 걸 강조해요. 고등학교 때는 캐나다에 살았는데 캐나다에서는 찾아보지 못했던 모습이라 신기하더라고요. 미국은 음식이나 인테리어 등 모든 면에서 로컬 특성이 강조되는 편이에요. 그런 스타일이 익숙하고 당연한 것 같아요. 굳이 리서치를 하지 않아도 이 지역은 이런 특징이 있다는 게 보이죠. 저는 미국에서 인테리어를 배웠기 때문에 지역 특징을 찾으려고 하고, 인테리어에 반영하려는 습관이 생긴 것 같아요. 그래서 늘 지역에 대해 조금 더 공부하고 디자인에 녹여내고 싶다는 아쉬움이 남죠. Q. 패스트파이브의 공간 디자인팀은 세 팀으로 구성되어 있는데, 영주님이 계신 1팀은 지금 어떤 일을 담당하나요?저희 1팀은 성수역점의 카페와 을지로입구역점을 동시에 진행 중입니다. 성수역점에 있는 카페는 처음 시도하는 공간이다 보니 생각보다 시간이 조금 더 걸리고 있어요. 카페 내부에 작은 온실을 만드는 등 식물도 독특하게 많이 사용했고, 멋진 작업을 많이 한 업체와 함께 일하고 있어서 기대도 많이 되네요. 오늘 마무리 정리를 하고 와서, 공사만 끝나면 곧 오픈할 거예요.Q. 지금 담당하고 있는 을지로입구역점의 디자인 작업에서 가장 중점을 둔 부분이 있다면요?성수점 카페 어라운드파이브에서 로고로 쉼표를 썼어요. 그 연장선상에서 을지로입구역점의 컨셉을 세미콜론으로 삼기로 했죠. 영어에서 두 문장을 연결할 때 세미콜론을 사용하잖아요? 여러가지를 나열하고 싶을 때도 쓰고요. 패스트파이브 을지로입구역점이라는 공간이 그곳을 사용하는 멤버들에게 세미콜론 같은 존재였으면 좋겠어요. 멤버들이 하고 싶은 것을 하면 그들을 연결해주고, 약간 애매한 부분도 자연스럽게 풀어주는 역할인 거죠. 이건 조금 다른 맥락이지만 외국에서는 세미콜론 모양의 문신을 하는 운동이 있더라고요. 자살을 막는, 아직 이어갈 이야기가 남았다는 의미로요. 을지로라는 곳의 재미있는 이야기가 패스트파이브의 세미콜론으로 연결되었으면 좋겠습니다. 컬러도 다양하게 사용했는데요, 홍대의 컬러와는 약간 다르게 네온 컬러를 썼어요. 재질도 독특하게 유리나 거울을 많이 사용해봤고요. 작가들과 협업해서 재미있는 작품도 많이 써보려고 해요. 완성이 어떤 모습으로 될지는 모르겠지만 초기 컨셉은 이렇게 잡아보았습니다. 많이 기대해주세요. Q. 저도 많이 기대가 되는데요, 일을 하면서 가장 힘든 부분은 어떤 점인가요? 또 가장 보람 있는 순간은요? 요즘 너무 바빠서 개인 시간이 없어요. 최근 한 달 동안 일이 몰려서 힘들었거든요. 컨디션 조절을 잘 해야죠. 이제 점점 나아질 것 같아요. 카페 때문에 힘들기는 했지만 어떻게 나올지 궁금하네요. 반대로 가장 보람 있는 순간은 공간이 예쁘다는 이야기를 들을 때죠. 작업한 공간에서 실제로 생활하는 커뮤니티 매니저분들이 입주 멤버 분들의 칭찬을 전달해줄 때도 뿌듯하고요. 지점 오픈 파티를 할 때도 반응이 좋아서 감사했어요. 그리고 공간이 완성됐을 때도 보람 있죠. 마무리 작업을 할 때는 너무 힘들어서 보기 싫을 때도 있지만 막상 완성하고 나면 정말 뿌듯해요. 특히 패스트파이브의 공간은 처음부터 끝까지, 액자 하나까지 직접 고르면서 완성하기 때문에 더 각별하죠. 제가 작업한 스케치업 그대로 구현된 공간을 보는 경험이 흔한 게 아니거든요. 예전에 건축 회사에 다닌 적이 있는데, 건축은 길면 도시 계획부터 시작해서 완성까지 10년 정도 걸리기 때문에 결과를 보기 힘들어요. Q. 패스트파이브에는 언제, 어떻게 합류하게 되셨나요? 작년 10월 23일경에 입사했어요. 한국에 들어온 지 얼마 안 되었을 때라서 기억해요. 11호점, 그러니까 바로 여기 삼성2호점 작업부터 시작했죠. 이제 일 년이 다 되어가네요. 많은 장서와 식물로 꾸며진 패스트파이브 삼성2호점 라운지이전에는 건축 회사와 인테리어 회사에 다녔어요. 여기 오기 직전에는 샌프란시스코에 있는 구글 헤드쿼터 작업을 했는데, 새로운 시도를 많이 하는 곳이라 이상하고 재미있었어요. 사무실을 사용자 마음대로 꾸밀 수도 있는 식이었죠. 그런 작업을 해봤기 때문에 패스트파이브에 와서도 라운지 같은 공간을 수월하게 꾸밀 수 있었던 것 같아요. 일반 사무실만 해봤으면 조금 힘들었을 거예요. Q. 패스트파이브에서 이루고 싶은 목표나 가치가 있으시다면?커뮤니티 매니저들의 의견을 더 듣고 싶어요. 요즘은 회사 규모가 커지면서 커뮤니티 매니저들을 만날 기회가 줄었거든요. 커뮤니티 매니저가 지점에 대해 가장 잘 아는 분들이잖아요? 그 의견을 바탕으로 기존 지점을 리모델링 할 기회도 있었으면 좋겠네요. 물론 지금의 우선 순위는 신규 지점의 확장이지만, 이미 있는 지점을 더 발전시키는 과정도 의미있을 것 같아요. Q. 혼자만의 시간이 생긴다면 뭘 해보고 싶으신가요?호주로 여행을 가고 싶어요. 요즘 호주 레퍼런스를 많이 보고 있어서, 직접 가서 호주 공간을 실제로 보고 싶네요. 호주가 카페도 독특한 것들이 많고, 트렌디하고 인기 많은 디자인들이 호주 것인 경우가 많아서 놀랐어요. 카라반이라는 카페가 한국에도 들어와 있는데, 호주 카페예요. 컬러를 독특하게 사용하고 특이하더라고요. 그래서 호주에 한번 가보고 싶어요. Q. 지금까지 영주 님의 이야기를 듣고 공간 디자인이라는 일에 관심이 생긴 분들도 많을 것 같은데요, 어떤 공간 디자이너와 함께 일하고 싶으신가요?새로운 것을 항상 시도하고, 그걸 재미있어 하는 분이었으면 좋겠어요. 커뮤니티 매니저를 비롯해서 다른 사람들과 소통하는 걸 좋아하는 분이요. 기본기를 비롯해서 이런 지점들이 잘 맞는다면 정말 재미있게 일하실 수 있을 거예요. Q. 이제 마지막 질문입니다. 좋은 오피스 공간 디자인이란 어떤 것이라고 생각하시나요?오피스의 종류에 따라 다르겠지만 패스트파이브 같은 공유오피스의 경우, 편안한 공간이어야 하는 것 같아요. 트렌디하기도 하면서 편안해야 하니 공유오피스 공간에는 신경을 많이 써야죠. 실제로 공간을 이용하는 사람들의 목소리가 가장 중요하다는 영주님의 이야기가 기억에 남는 시간이었습니다. 매일 가장 오랜 시간을 보내는 공간인 사무실이 우리의 삶과 분리되지 않도록 하는 노력이 패스트파이브 곳곳에 스며들어 있다는 게 새삼 와닿네요.저희는 다음 인터뷰로 돌아오겠습니다. 읽어주셔서 감사합니다! =)- 패스트파이브 마케팅팀 드림
조회수 1947

모두가 Yes라고 할 때,

조금 오래된 광고 카피라이트지만,뇌리에 박혀 버린 말이 있다.모두가 예스라고 답할 때, 노라고 말할 수 있는 사람!모두가 노라고 답할 때, 예스라고 말할 수 있는 사람!(2001년 동원증권 CF 중에서 카피라이트 문구)한 때는 그것이 멋져 보였다.왠지 자신만의 주관이 뚜렷하고,개성이 있는 인재상처럼 느껴졌고남들과는 다른 창의성, 혁신의 뉘앙스가묻어나는 행동처럼 비쳤다.그렇다고 믿었다.이것이 맞느냐!아니다 저것이 더 낫다!이건 안된다.아니다 된다라는 이분적인 회의는결론 도출이 안 되는평행선을 달리기가 될 수 있다.예, 그렇습니다, 맞습니다 또는 아니요, 그렇지 않습니다. 틀립니다라는 대답만으로는 부족하다.그 주장이 나오게 된 원인과그렇게 생각하는 근거는사람에 따라 다를 수 있다.그렇기에 더 많은 시나리오와그만큼 많은 대안과 출구전략들이나타나야 하는 게 정상이다. 그 이후에Yes와 No에 대하여, 더 명확하게는Go or Stop 사이에서 최종 결정은 마지막에 정리되어야 한다.(물론 Plan B와 Plan Z까지 첨부해서...)1. 시작은 Why로부터...어떠한 프로젝트 의제에 대하여생각은 다 다를 수 있다.탐탁지 않은 부분이 있어 반대할 수 도 있고,적극적으로 밀어붙이고자 찬성할 수 도 있다.적극적 반대도 있고, 어정쩡한 찬성도 있다.여전히 반반 사이에서 부동층을 형성할 수도 있다.이러한 고착상태에서 의견을 모을 수 있는 방법은 논리이다.논리는 순서이다.원인과 근거를 제시하는 것부터 시작이다.때문에모두가 Yes를 외칠 때, Why라고 묻는 것이다.모두가 No라고 외칠 때, Why를 묻는 것이다.어린아이가 성장하면서 호기심과 궁금증이 많아지면서 "왜요?", 왜 그래요?"라는 말의 빈도가 높아진다.마찬가지로한창 성장하고 있는 회사에는"왜"라는 질문이 매우 중요하다.문제를 진행할지 안 할지 이전에문제의 근본적인 원인을 되짚는 것이 우선이다.Why는 몇몇 리더들이 불편해하는 질문이기도 하다.특히 시간에 쫓기며,빠른 결정을 해야 할 때는 더더욱중간 단계를 skip 하길 원한다."그냥 하라면 해!""그건 이미 다 결정된 거야""지금 와서 돌이킬 순 없어."라는 식의 반응은 어디선가 많이 들어보지 않았을까?꼰대라고 여기던 직장 상사라던가,고압적인 교수님이라던가,고지식한 군대 선임에게서도...그러한 조직 내지는 리더에게Why라는 물음은 군말이 많다,대든다,오지랖이다,주제넘는다라는 핀잔으로 돌아오곤 했다.그렇게 하나둘씩 입을 다물기 시작하고,나중에는 거수기들만 남아있는 회의, 의사결정 자리가 되어버리지.2. 본론은 룰(Rule)로부터...일반적으로 스타트업의 의사결정은 동료들과 문제에 대한 해결방안, 대안을격렬하게 논의하면서 진행된다.스타트업에서회의의 진짜 묘미는바로 다양한 아이디어와 의견을 도출하되마지막은 결론이 정리될 수 있어야 한다는 점이다.중구난방으로 쏟아진 의견은 자칫 회의가 산으로 갈 수가 있다.정리되지 않은 아이디어들은 다음 날이 되면 우리가 뭣 때문에 회의를 한지 방향성을 잃게 만들기도 한다.역으로,제한적으로 과한 통제는시계 초침이 "똑딱, 똑딱" 느껴질 정도로지루하고, 숨 막히는 회의가 될 수도 있다.그렇기에 회의에는 룰이 필요하다.최소한 정해 놓아야 할 룰은 다음과 같다.1) 회의 전 사전검토에 대한 룰(회의 내용 사전 숙지 및 검토),2) 회의시간 한도의 룰(무한정 회의는 삼가자),3) 구성원 간의 발언 룰(발언자/사회자/경청자가 지켜야 할 룰),4) 결과 정리의 룰(의견을 정리, 취합하고, 다음 단계로 넘어갈 수 있도록 액션을 정할 것)적어도 위의 4가지 rule은 경험적으로,많은 시행착오를 거치면서 필수적이라고 깨달았다.  3. 결론은 How로부터...난 하와이를 좋아한다.가 본적 없는 여행지인 하와이가 아니라나름대로 이름 지은Howhy(하우 와이)!아재 개그인가....ㅠ.,ㅠWhy라는 질문으로 문제의 본질을 찾는다면,How는 질문으로 문제의 해결책을 찾는다.그래서 어떻게 할 건데!How는 육하원칙의 하나이지만,다른 단어들과 동등하다고 생각하지 않는다.How 안에는 언제 해야 할지,무엇을 해야 할지,누가 해야 할지,어디서 해야 할지를 포함한다.따라서,Why와 How는 문제 해결로 가는가장 중요한 열쇠이다.그럼에도(주)클린그린의 회의가 이상적이지는 않다.습관화가 덜 되어서인지,뭔가 간과한 부분이 있는 건지,아니면,회의 진행에 있어 여전히 미숙한 건지딱 하나 꼬집어 말하기는 어렵지만늘 100% 만족할만한 회의는 없었다.하지만 분명한 것은이전보다는 효율적이고,보다 다양한 의견과 정리된 결론으로진일보하였다는 점이다.제품이나 서비스만 피봇 되는 게 아니다.회사도,시스템도,업무도,사람도 피드백과 수정을 거쳐발전해 나가는 것이다.우리는 계속 발전하고 있는 중이다.#클린그린 #스타트업 #창업가 #창업자 #마인드셋 #조언
조회수 32193

소규모팀에 적합한 QA 프로세스 구축기(스타일쉐어팀의 QA방식)

안녕하세요. 스타일쉐어에서 PM을 맡고있는 박성환 입니다. 스타일쉐어팀이 QA프로세스를 도입한 것은 약 4개월 정도 되었습니다. 기존에는 QA 프로세스 없이 진행했었지만 주요 기능에 대한 오류감소 및 릴리즈 안정성 확보를 위해 도입을 고민하게 되었습니다.QA프로세스를 처음 도입할때 많은 고민이 있었습니다. 대규모 서비스에 적용하는 QA프로세스를 그대로 도입하기에는 인력 + 시간이 모두 부족했기에 시간과 인력이 많이 투여되는(다만, 안정성이 높음) 명세기반 테스트는 최소화하고, 도입 가능한 서비스(구글플레이의 단계적 배포, Crashlytics)를 활용해 부족한 부분을 커버하는 형식으로 저희 식의 간략화된 QA프로세스를 만들었습니다.(인력 + 시간이 상대적으로 제한적인 스타트업에 좀 더 효율적인 방식.)스타일쉐어팀의 QA 기간 : 앱 업데이트 당 3일(테스트/수정/릴리즈까지의 모든 기간)테스트 인원 : 2명 (1차QA 1명, 최종확인 1명)마이너 버그 수정 버전에서는 QA진행하지 않음스타일쉐어팀의 QA프로세스는 “주요 사용 케이스의 동작 확인” + “수많은 사용 패턴에 대한 대응”으로 정리할 수 있습니다. 저희 팀이 진행하고 있는 방식을 조금 더 자세히 설명해 드리자면 아래와 같습니다.(API 테스트, 자동화 테스트를 제외한 앱 릴리즈 전 진행하는 사용성 테스트에 대한 내용만을 담았습니다.)1. QA일정스타일쉐어 앱의 업데이트 주기는 4주에 1회로 진행하고 있습니다. 그 중 1주 단위의 스프린트가 3주 동안 진행되고 4주차 스프린트는 QA 및 릴리즈 스프린트로 진행됩니다. 매 스프린트에서 담당 엔지니어가 수정 혹은 추가된 단위기능에 대해 간단한 테스트가 끝나면 4주차에 알파 빌드 및 전 구성원이 설치/사용해보고 동시에 1차 QA(통합 테스트)를 진행하게 됩니다. 1차 QA의 버그들을 수정하면 베타버전 빌드 및 최종 확인을 진행한뒤 문제없으면 바로 릴리즈가 되어 사용자에게 신규 버전을 제공합니다.2. 주요 사용 케이스의 동작 확인1) 1차 QA(명세기반 테스팅)4주차에 신규 알파버전이 생성되면 1차 QA를 진행하게 됩니다. 스타일쉐어는 전담 QA담당자가 없습니다. 1차 QA는 다른 파트 엔지니어 1명이 테스트를 진행하고 2차는 PM이 최종확인 후 릴리즈 됩니다. 이 단계에서는 Test case를 바탕으로한 명세기반 테스트로 진행됩니다.테스트 케이스(TC)를 통한 테스팅은 핵심적인 기능 및 주 사용케이스에 대한 검수작업이라고 보시면 됩니다. 게임 혹은 복잡도가 높은 서비스의 경우에는 매 업데이트마다 모든 케이스에 대한 테스트가 어렵고 비효율적이기 때문에 리스크 분석기법, 탐색적 테스팅, 경계값 테스팅 등과 같은 방식을 사용하지만 스타일쉐어 서비스의 경우 상대적으로 복잡도가 낮아 매 업데이트 마다 대부분의 기능에 대한 테스팅을 진행합니다(TC로 100% 커버리지를 목표로 하지 않습니다. 불가능하다는 것을 인정하고 진행하는 것이 효율적). 테스트케이스 작성시에 유의했던 부분은 쉽고 명확하게 케이스를 명시해서 오류에 대한 판단이 명확하도록 하고 스타일쉐어 앱을 처음 본 사람도 바로 테스트가 가능하도록 작성하고 있습니다. (스트레스 테스트는 특이 사항이 있을 경우에만 진행합니다.)2) 교차 테스팅스타일쉐어의 경우에는 1차QA 과정을 담당 엔지니어가 아닌 다른 파트의 엔지니어(iOS버전 테스트의 경우 web, backend, Android 개발자 중 1명이 진행)가 1차 테스트를 진행합니다. 이 방식의 장점은 매번 같은 사람이 테스트하는 것보다 다른 백그라운드를 가진 엔지니어가 테스트 함으로써 다양한 시각으로 테스트를 하게 되 오류발견이라던지 서비스 개선 아이디어를 찾는데 더 효과적이었습니다. 그리고 신규 입사자의 경우 가장 먼저 테스트 담당자로 참여할 수 있도록 합니다(가장 빠르게 서비스 플로우를 이해할 수 있는 방법).3) 최종확인1차 QA 및 전사 베타버전 사용의 피드백을 통해 나온 버그/주요 기능에 대해 마지막 점검하는 절차입니다. 이 부분은 제품책임자(PM)가 담당을 하며, 이 부분을 통과하면 릴리즈 단계로 진행되어 사용자에게 업데이트 된 앱이 전달됩니다.3. 수많은 사용 패턴에 대한 대응단계적 출시(안드로이드)1차 QA과정인 테스트케이스를 통한 테스팅은 명시되어 있는 패턴과 제한적인 환경(Device, 해상도, 인터넷 환경 등등)에서의 주요 케이스에 대한 테스팅만 가능합니다. 하지만 사용자는 수많은 환경 및 사용패턴으로 서비스를 사용하기 때문에 이 부분을 TC의 스크립트로 모두 추가하고 살펴보기란 불가능에 가깝습니다. 그래서 저희 팀은 단계적 출시를 도입해서 대응하고 있습니다.모든 테스트 과정을 완료한 뒤 구글플레이 개발자 콘솔에서 앱 업데이트시 ‘지금 출시’가 아닌 ‘단계적 출시’로 선택합니다. 그리고 비율을 선택할 수 있는데 이 비율은 업데이트가 적용되는 사용자 비율을 설정하는 기능입니다. 즉, 전체 사용자가 아닌 미리 지정한 비율의 사용자에게만 업데이트 버전을 제공함으로써 우선적으로 우리가 예상하지 못한 버그나 불편한 부분이 있는지 확인해볼 수 있습니다. 스타일쉐어팀의 경우 5%의 사용자 비율로 단계적 출시를 1~2일 동안 진행한뒤 버그 리포팅 및 CS내용 확인 후 100% 대상으로 업데이트를 진행합니다.(5% 단계적 출시 이후 패치된 버전을 배포하면 해당그룹(5%)에게만 업데이트 됩니다.)이 부분은 오류에 대한 대응 및 새로운 기능에 대한 부분적인 반응을 볼 수 있는 용도로도 사용할 수 있어 매우 활용도가 높습니다.(신규 앱에 대해서는 해당 기능 사용이 불가능합니다. 업데이트시에만 사용가능합니다.)4. 도입효과1) Crash Free Sessions(Crashlytics)4월 13일 기준으로 Crash Free Sessions는 전체 사용자 중 99.8%의 안정성을 가져가고 있으며(이전에는 95~96%), 기존에는 주말과 같이 사용자가 많은 경우 그만큼 크래시 발생빈도도 높았지만 최근 버전에서는 주말/평일 관계없는 그래프를 보이고 있습니다.2) Crash Report(Flurry)위 지표는 1월~3월 까지의 Flurry의 안드로이드 버전 Crash Report를 캡처한 화면입니다. 1월 초만 해도 일 40회 정도의 크래시가 발생했다면 최근은 일 3~5회 정도로 개선된 모습을 확인할 수 있습니다.5. 마무리다만, 이러한 노력에도 버그는 여전히 존재합니다. 그래서 저희 QA프로세스도 개선할 방향을 모색하고 있는데, 현재의 개선 목표는 ‘퀄리티는 유지하되 속도는 빠르게’ 라는 방향으로 진행 중입니다. 그물을 더 촘촘히 짜듯이 명세기반 테스트의 규모를 늘리는 것에는 시간적/효율적인 한계가 분명히 존재하므로 자동화 테스팅(UI)의 강화를 통해서 부족한 부분을 채워보기 위한 시도를 준비하고 있습니다.하루라도 빠른 서비스의 개선도 매우 중요하지만 그만큼 우리가 전달하고자 하는 것을 문제없이 사용자에게 제공하는 것도 속도만큼 중요하다 생각 합니다. 문제없이 전달하기 위해 계속해서 고민하고 시도해볼 수 있도록 하겠습니다.#스타일쉐어 #개발 #개발팀 #개발자 #노하우 #인사이트
조회수 898

그럴싸해 보이는데 읽기 힘든 글들의 특징

오늘은 글에 대한 이야기이니, 짤이미지 없이 글만 적어보겠습니다. 이미지 찾기 귀찮아서 그런거 아님 브런치에서 자주 놀다보니, 요즘은 브런치에 올라오는 글들을 읽게 됩니다. 브런치 담당자님들이 꿀같이 픽해준 글들이 아주 찰지더군요. 최근엔 가상화폐 글들이 온통 올라와서 떡락장에 시퍼렇게 멍든 제 가슴을 한층 더 먹먹하게 해주고 있습니다. 이 다양한 글들을 읽으면서 쓰신 분들의 정신세계를 유영하는 즐거움을 느끼고 있습니다. 타인의 표현속으로 풍덩 뛰어드는 것은 아주 아스트랄한 경험이죠. 세상엔 참 다양하고 똑똑한 분들이 많다는 생각을 하며 그러면 도대체 난 뭐하는 놈일까...라는 자기성찰의 시간을 가지기도 합니다.꼭 브런치가 아니더라도 페이스북이든 뭐 트위터를 포함해서 최근엔 다양한 텍스트콘텐츠가 슬며시 떠오르고 있습니다. 시각적 피로가 쌓인 탓도 있겠고, 아날로그한 트렌드가 슬쩍슬쩍 롤라장과 함께 되돌아오고 있는 까닭도 있겠군요.모든 콘텐츠가 그러하듯, 어떤 것은 눈에 땋! 보이면서 공차의 타피오카 펄마냥 쑤욱 읽힙니다. 가끔 너무 잘읽혀서 목에 펄이 걸리는 느낌을 받을 때도 있죠. 거친 리딩이었어..하앍하앍..거리면서. 금손님들의 미친 필력과  일필휘지의 감동을 느낄 때면 동공이 두근대며 살아있음을 느낍니다. 반면 종종 순간 14년전으로 되돌아가 11월10일 그 날의 언어영역 비문학 지문을 보는 기분을 느낄 때도 있습니다. 순간 수능용 시계를 손목에 차고있는 착각을 느껴 깜짝 놀라곤 합니다.우리의 주요 일상은 일집일집일집일집 입니다. 집에서 글쓸 일이야 페북이나 브런치에 썰푸는 것 정도일테고, 주로 글을 쓴다면 일할 때 많이 쓰겠네요. 업무용 텍스트는 결이 다르긴 하지만 궁극적으론 평소의 필력대로 속도와 퀄리티가 결정됩니다. 종종 기획안이나 보고서 등을 보다보면 비슷한 언어영역 시간에 빠져든 기분에 저도 모르게 컴싸를 꺼내들게 됩니다. 밑줄 친 a를 자꾸 찾게 되죠.그래서 오늘은 왜 그럴싸해 보이는 데 어떤 글을 잘 읽히고 어떤 글은 안 읽히는 지 생각해봤습니다. 글 잘 쓰는 방법에 대해선 이미 다양한 콘텐츠들이 나와있으니, 우리는 똥글을 만드는 방법을 알아보도록 하죠.1. Deep하고 Complicated한 Word의 complexity아니 그냥 '마무리' 라고 하면 될 걸 굳이 'Finalize해주시고..' 라고 쓰는 경우가 있습니다. 한/영키도 두번 눌러야 하고 키보드로 따지면 2글자나 더 쳐야하는데 정작 의미는 전혀 다르지 않습니다. 기본적으로 한영혼용체는 가독성을 격렬히 떨어뜨립니다.  인간이 언어를 이해하는 구조는 아주 다양합니다. 소뇌에선 독서에 필요한 운동능력, 그러니까 동공의 움직임, 타이밍, 정확성을 담당합니다. 그리고 전두엽과 좌뇌부근의 브로카 영역에서 언어의 음운/의미 등을 처리하게 되죠. 이 때 마치 컴퓨터의 캐시파일처럼 자주 쓰는 단어는 자동적으로 기억이 나도록 임시저장을 해두기도 한답니다. 그러나 새로운 단어나 외국어가 등장할 경우엔 그 단어의 뜻과 맥락을 파악해야 하니까 새로운 파일을 여는 동작을 하는 셈이죠.  우리는 흔히 책을 대각선으로 읽는다고 생각하지만, 실제 아이트래킹에선 완벽한 대각선을 그리지 않습니다. 밑에 1/3부분은 거의 시선이 가지 않죠. 시작은 왼쪽 상단에서 시작하지만 중간쯤에선 그냥 전체적으로 보이는 단어들을 쏙쏙 뽑아 문맥을 자체적으로 정리하고 이해하는 과정을 거칩니다. 그런데 영단어들이 중간중간에 등장해버리면, 단어만 뽑아서 문맥을 이해할 때 움찔합니다. '어...어서 뜻을 찾아!!''그 뜻이 이 문맥과 맞는지 확인해!!''혹시 잘난 척은 아닌지 파악해!!(?)'등등 언어처리과정에서 몇 개의 추가적인 과정을 거쳐야 합니다. 직관적인 이해를 방해하고 다시 읽고 또 읽게끔 만들죠. 두뇌는 엄청나게 게으르고 귀찮아서, 몇 번 봤는데 자꾸 걸리적 거리면 안 보려고 합니다. 한글과 영어의 혼용체는 일전의 병신보그체라는 이름으로 백성들에게 널리 알려졌는데, 딱히 좋은 느낌은 아닙니다.2. 수동태 작렬"마케팅은 고객으로 하여금, 브랜드로의 접근을 용이케하고 구매에 있어서 원활한 루트를 경험되어지게 한다."영문법에서 까다로운 부분 중 하나가 수동태였죠. be+p.p로 과거분사 뒤엔 항상 전치사가 붙었습니다. 수동형문장은 기본적으로 국문법에서 잘 쓰이지 않기도 할 뿐더러 '조사'를 엄청 쓰기 때문에 문장을 복잡하게 만듭니다. '~로 하여금, ~에게, ~에 의하여, ~하게 한다.' 등의 조사들은 굉장한 지루함을 선사하죠. 반성문에 자주 쓰는 표현입니다. 문장을 억지로 늘려야 하니까요.3. 영문번역체'이러한 연구결과는 상품선택에 있어서 우리에게 주어진 너무 많은 정보가 선택을 어렵게 할 수 있음을 느끼게 한다.'음, 번역체가 사실 잘못된 표현은 아닙니다. 오히려 꽤나 익숙하죠. 우리는 십수년간 영어지문을 기계적으로 독해해왔고, 타일러도 이해못하는 수능외국어영역 문제를 구조화시켜 풀 수 있는 신박한 능력을 지니고 있으니까요. 하지만, 그건 1~5번 중에 답 하나를 고르기 위한 분석을 할 때 얘기이고, 쭉 읽어내려갈 때는 번역체는 꽤나 걸림돌이 됩니다. 사실 저도 번역체를 많이 씁니다. 가장 흔한 예로"씁니다 - 쓰고 있습니다."등의 어미 늘리기와 "그것은 이것과 함께 어쩌고..그녀에게"와 같은 폭풍대명사 사용하기가 대표적이군요. 추가적으론"아름다운 그녀의 목걸이를 본 그는 황홀한 눈빛을 감출 수 없었다.""그는 그녀의 아름다운 목걸이를 보고 황홀함을 감출 수 없었다."등의 관계대명사 수식절 사용도 있겠네요.4. 쓸데없이 괄호/인용구 쓰기도… 돌은 내려놔 주세요. 아무쪼록 빠른 시일 내에 연재를 재개 할 수 있도록 노력하겠습니다. 어차피 기다려주시는 분도 별로 없겠지만(웃음) 그래도 제 글을 기다리는 분들을 실망시키고 싶지는 않으니까! (퍽퍽퍽, 탕! 질질 끌려간다.)오덕체에서 자주 보던 괄호형 혼잣말하기나 쓸데없이 직접인용구를 사용하는 경우도 있습니다. 독서의 맥을 끊죠. '작은 따옴표' 를 자주 쓰는 경우도 마찬가지입니다. 줄바꿈이 너무 많거나 문장부호가 괜히 막 들어가 있는 경우도 있죠. 5. 그냥 뭔 말인지 모르겠는 문장의사가 진단서에 '목감기 콜록콜록' 이라고 쓰면 처방전받을 때 왠지 손을 머뭇거리게 됩니다. 그렇습니다. 말과 글은 상대방의 지식수준과 신뢰와 직결되어 있죠. 하지만 종종 그걸 졸라 뽐내고 싶은 분들이 있는 듯 합니다. 처방전은 약사보라고 주는 겁니다. 약사는 휘갈긴 악필을 이해할 수 있구요. 하지만 소비자와 대중들을 상대로 하는 글에서 전문용어를 폭풍 남발해버리는 건 난 똑똑해!!! 라고 어깨 견장 움찔거리는 느낌이 들어 불편합니다.6. 어설픈 재수없음문법의 문제가 아니라, 이런 내용입니다.'나에게 닥쳐온 시련은 이번 뿐만이 아니었다. 하지만, 내 행동력이 어디 가겠는가. 후우... 이건 나에게 단점이자 장점과 같은 것이었다. 날 괴롭게 하고 잦은 실수에 빠뜨렸지만, 언제나 다시 일어설 힘을 주었던 내면의 힘같은 것이었다.'단점이자 장점이 아니라 그냥 대놓고 난 오늘도 영도다리에서 눈물을 흘리지 따위의 싸이감성을 뿜뿜하는 오글이토글이 글이 아닙니까. 물론 이러한 감성은 2000년대 싸이질의 추억을 깨워주지만 계속 읽어내려가긴 몹시 힘듭니다.7. 접속사 폭발, 끝나지 않는 스토리투머치토커라는 말이 있습니다. 글에도 투머치가 있지요. 도무지 끝나지 않는 문장입니다. 접속사와 쉼표로 끊임없이 연결된 시베리아 횡단열차같은 문장. 도대체 그 끝은 어디일까요. 이런 문장은 읽다가 삼천포로 빠지는 경우가 많습니다. 작성자나 읽는 이나 둘 다 말이죠. 나중에 삼천포에서 만나면 그나마 다행이겠지만 대부분은 각자 제 갈 길을 떠나는 경우가 많습니다.8. 시종일관 날카롭고 저속한 글정부비판에 극단적인 표현들, 가상화폐 비난 등등 의문형 문장이 넘쳐나는 날카롭고 강렬한 글들은 처음엔 임팩트가 있긴하지만 계속 질문만 던지고 따지는데 스크롤을 내리기가 좀 무섭습니다. 굉장히 피로한 글입니다. 마지막에 기똥차게 결론을 내려주면 또 나름의 카타르시스가 있지만 대부분은 마이클 베이영화처럼 처음부터 끝까지 터지고 부서지고 폭발하다가 결국 메간 폭스 엉덩이같은걸 클로즈업하며 끝납니다. 9. 노잼유행어를 쓴다고 재미있진 않습니다.10. 같은 말 반복"가치를 되살리는 일은 결국 그 본질적인 부분을 깨워 세상에 달리는 것과 같다. 이러한 가치의 재생은 사업의 참모습을 깨닫게 하고 고객에게 스토리텔링할 수 있는 기반을 만들어 준다. 때문에 가치에 대해 고민하는 것은 사업자에게 아주 중요한 과정이라고 할 수 있다."똑같은 말을 몇 번 반복하고 있는거야...이렇게 같은 말이 반복되는 이유는 사실 네이버에 "아아아아아...뭐더라" 라고 치는 심리와 비슷합니다. 뭔가 정리가 안되서 계속 그 자리에서 맴돌고 있는거죠. 쓰면서 생각 정리중입니다. 글은 정리를 끝내고 쓰는 겁니다.#모두 즐글 :)
조회수 603

구글 애드워즈가 자연검색 트래픽 증가에 영향을 미칠까?

구글 애드워즈 배너 광고나 검색 광고가 자연 검색 트래픽에 영향을 미칠 수 있다는 것은 일반적인 디지털 마케팅 업계의 지식이 되어 왔습니다. 그러나 그 효과는 정확히 무엇이며, 어떤 과정을 거쳐 작동될까요? 오늘 오피노에서는 유료 광고가 유기적 결과에 영향을 주는 방식과 그렇지 않은 방식 중 하나를 다룰 것입니다 :) 많은 사람들이 의심해보았을 것입니다. "아, 우리는 Goolge AdWords에 많은 돈을 투자하기 시작했어! 그러니까 자연검색 트래픽이 올라갔어." 또는 "이봐, 우리는 Google에 많은 돈을 지출하고 있지만 경쟁 업체는 더 많은 돈을 지출하고 있어!. 그래서 쟤네들의 자연 검색 트래픽 증가율이 더 높은 거야!" 검색 광고에 대한 디스플레이 광고의 영향을 측정하고자 한 여러 연구가 있었지만 터키의 하버드 (Harvard)와 오지 겡 (Ozyegin) 대학의 연구자는 이 연구를 제대로 조사하려 했습니다. 그들의 연구 결과는 하버드 비즈니스 스쿨 (Harvard Business School)의 "Display Ads Influence Search? 온라인 광고의 간접 기여와 역동성"이라는 제목으로 게재되었으나, 이 문서는 학문적 전문 용어, 사회 과학 모델링 토론 및 다른 연구에 대한 언급과 같은 학술적 글쓰기 규칙에 따라 어려움을 겪기 때문에 지루하고 읽기가 어렵습니다.그래서 제가 간단히 정리를 해드리려고 합니다.결론 및 통찰력은 유의미하지만, 다음과 같이 요약할 수 있습니다.- 디스플레이 광고는 더 많은 검색양, 클릭, 전환에 기여한다.- 검색 광고는 디스플레이 광고의 상호작용을 증가시키는 것에는 딱히 기여하지 않는다.- 하지만, 디스플레이 노출 광고의 효과는 즉각적이진 않으나 평균적으로 2주 정도 이후에 발생하기 시작한다.- 마케터들은 단순한 계산이나 측정 항목으로는 디스플레이 광고의 ROI나 CPA를 결정하기에는 한계가 있다.이러한 인사이트는 온라인 광고를 사용하여 새로운 당좌 계정 고객을 확보하는 검색 및 디스플레이 광고 지출 및 전환 데이터 ( "미국의 대형 은행에서")로 깊이 파고들었습니다. 이 데이터는 2010 년에 나온 것입니다. 올해 온라인 은행의 온라인 광고 예산은 약 1 백만 달러였으며 검색과 디스플레이 간에 거의 균등하게 분배되었습니다.이 학술 논문에서 몇 가지를 발췌한 내용들이 있습니다."디스플레이 광고는 클릭뿐만 아니라 검색 트래픽 증가에도 중요한 영향을 미치는 것으로 나타났습니다. 이 파급 효과의 대다수는 순식간에 발생하지 않았지만 평균적으로 2주 후에 적용되었습니다...""우리의 연구 결과에 따르면 업계에서 일반적으로 사용되는 단순 정적 통계는 온라인 광고의 효과를 정확하게 측정하지 못할 수 있습니다. 그래서 우리는 측정항목을 동적으로 가져와 광고의 효율성을 측정했습니다. 그 결과, 검색 CPA가 단순 정적 CPA보다 48% 낮아졌고, 반면에 ROI는 38% 증가하였습니다. 디스플레이 광고에서도 비슷한 패턴이 나타나는데 여기에는 또한 기여도가 포함됩니다. 이로 인해 디스플레이 CPA가 표준 CPA보다 14 % 낮아졌으며 투자 수익 (ROI)이 10 % 증가했습니다...""광고 효과에 대한 이러한 수정된 성과 파악 방법론은 [은행]이 현재 사용하는 것보다 매우 다른 예산 배분을 초래합니다. 특히 우리는 제안된 할당이 검색 응용 프로그램에 미치는 영향으로 인해 디스플레이에 대한 기여도가 높았음에도 불구하고, 검색 광고 예산은 강력한 동적 효과로 인해 현재 수준에서 36 % 증가해야 하며 디스플레이 광고 예산은 31 % 감소해야 합니다."결과적으로, 디스플레이 광고가 검색률 증가에 지대한 영향을 미친 다는 것은 위에 프레임 워크에서 알 수 있습니다. 그런데도 우리가 Google Display Network에 회의감을 갖고, 성과 파악이 어려운 것은 모든 데이터 분석 툴이 "Last Click"에 기여 모델을 중점으로 두고 있다는 것입니다.논문 원본 : https://www.slideshare.net/gesterling/do-display-ads-influence-search?from_action=save다음에는 광고 성과를 제대로 분석하기 위한 "기여 모델(Attribution Model)"과 "교차 기기 트래킹" 대하여 심도 있게 얘기해보도록 하겠습니다.퍼포먼스 마케팅 에이전시, 오피노 바로가기
조회수 1634

무엇을 해야할지 모를 때?

근무시간에 아무 일도 못할 때가 종종 있습니다. 아무 일이 없어서가 아닙니다. 오히려 Doing 카드덱에는 해야할 카드가 넘쳐납니다. 재밌는 사실은 항상 할 일이 명백하게 있는데도 무기력한 상태가 더욱 잘 발생합니다. 덱에있는 카드들이 눈에 잘 들어오지 않습니다. 아무것도 하기 싫습니다. 그래서 의미 없는 클릭질로 이 일 저 일 기웃기웃 거리기만 합니다. 그렇게 아까운 시간만 흘러 보낼 때가 있습니다.문제의 원인곰곰이 생각해보면 카드가 너무 많아서 그런거 같습니다. 물고기가 떼 지어 다니걸로 비유를 들어볼 수 있을 것 같아요. 거대한 한 마리의 물고기로 보이도록하는 착시효과 말이죠. 카드들을 각개격파 해야하는 입장에선 무척이나 성가십니다. 괜히 정신에너지 소모가 커져 골치가 아플 때가 많습니다.예를 들어, 이런 선택장애 순간에 빠진달까요... 제품 번호 중복으로 뜨는 문제 디자이너 분들께 노티할까? 아니면, 결제사에서 특정 카드 승인거절 나는 문제부터 해결할까? 혹은 개발자분들 지금 자리에 있으니 우리가 지금까지 쓴 오픈소스 명시하는거 요청드릴까? 아! 아니다. 오전에 이용약관 쓰던거 지금 마저 쓸까?스타트업이 다 그렇겠지만 정말 가끔씩 한 숨이 나올 정도로 할 일이 쏟아져 나오는 순간이 있습니다.해결책다행히 요즘 무엇을 해야할지 모를 것 같은 조짐이 보이면 다음과 같은 행동으로 무기력한 상태를 탈출할 때가 많습니다.1. 가장 중요한 가장 작은 일을 파헤칩니다.당장 무슨 일에 착수하는 게 아닙니다. 무턱대고 달려들면 오히려 튕겨져 나오기 일 쑤입니다. 대신에 카드를 배회하면서 스스로에게 여기있는 카드 중에 가장 시급하고 중요도가 높은 일이 뭔지 찾아봅니다. “오늘 일 하나도 안해도 돼!” 같은 가벼운 마음가짐으로 무심하게 쭉 훑어 보면 은근 잘 보입니다. 꽤나 객관적인 시각이 생겨 중요한 일이 노골적으로 보일 때도 있습니다. 카드가 하나도 없지 않는 이상 가장 중요한 일을 찾을 수 밖에 없죠. 근데, 가장 중요한 일이 꾀나 커보이면 과감히 sub-task로 쪼개버리는게 좋습니다. 반으로 나누는 것도 아니도. 큰 덩어리 중 당장 할 수 있는 일만 그것도 눈꼽만큼 작은 수준으로 떼어내는거죠. 내 품에 폭 들어올 수 있게 만들어 버립니다. 그렇게 가장 작은 물고기 한 마리만 지긋이 바라봅니다.2. 최면을 겁니다.가장 작은 일을 찾았다 하더라도 몸에 베인 하기 싫은 타성은 남아있습니다. 이미 무기력감이 저를 휘감고 있으니까요. 탈출하기 쉽지 않습니다. 이땐, 이 일을 안했을 때 일어나는 골치 아픈 미래 상황을 상상합니다. 식은땀이 주륵 흐를 정도로 과대 망상일수록 좋습니다. 이 일을 심각한 수준으로 받아들입니다. 거짓말 조금 더 보태서 당장 이거 해결 안하면 회사가 망할 수도 있다 정도로? 스스로 발등에 불을 떨어뜨리는 최면에 풍덩 빠집니다.3. 용기를 낸다.다른 중요한 일들도 많습니다. 지금 선택한 이 일이 가장 시급한 일이라서 못하는 거지 다른 것들도 이것 못지 않게 급합니다. 그래서 선뜻 선택한 일에 다이빙하기 쉽지 않습니다. 안하기로한 다른 일들이 거슬려서요. 그러나 하나만 하기로 마음 먹은 상황에서는 저는 과감히 다른일들을 포기합니다. 안하기로 했다면 Doing 카드에서 To do 카드로 과감히 옮겨버립니다. 단순히 이 카드들을 당장 눈 앞에서 치워버리기만 해도 효과가 아주 큽니다. 속이 후련해 진달까요? 만약 데드라인이 오늘인 카드라면 용기를 내어 동료들에게 도움을 청합니다. 또는 이 결과물들을 기다리는 동료들에게 못할 것 같다고 솔직히 고백합니다. 가급적 동료들이 기다리지 않게 말이죠. 이렇게 과감히 눈 앞의 일들을 치워버려요. 그러면 일이 손에 잡히기 시작합니다.#스위쳐 #Switcher #문제해결 #인사이트 #꿀팁 #조언
조회수 2929

SW 개발, 우선순위는 어떻게?

아키텍처적인 판단과 비기능적인 요소, 품질요소에 대한 것을 기준으로 우선순위를 결정하는 것은 차라리 간단하다. 아리송하고 판단하기 어려운 것은 따로 있다. 서비스를 어떤 기능이나 어떤 서비스, 어떤 영역을 먼저 시작해야 하는 가?. 아니면, 서비스가 개시되고 돌아오는 버그 리스트와 추가 요구사항 등의 사용자의 피드백을 통해서 유지보수의 순서를 정하는 것 등이 아리송한 것이다.이번에 중점적으로 이야기하는 것은 개발자들에게 요구되는 요구사항과 업무의 작업 단위들은 왜 이렇게 많이 변화하고, 이러한 요동치는 환경들은 무엇 때문에 발생하는 것인지에 대해서 생각해본다.대부분의 소프트웨어 개발자들은 시시각각 변화하는 요구사항과 유지보수 업무의 홍수 속에서 점점 무덤덤해지면서, 자신들이 할 수 있는 일만을 하려고 하는 경향으로 변화해 간다. 그렇게 변화하면서 개발 조직 내에서 무력감에 빠져드는 현상을 맞이 한다. 그 모든 이유의 대부분은 최고 경영자나 경영진, 리더층의 결정장애이거나 판단 미스인 것이 대부분이다.슬프게도 최고 경영진에게는 소프트웨어 개발팀에서 업무를 제대로 처리해주지 않는다는 영업과 기획 조직들의 푸념이 늘어나는 이유는 소프트웨어 개발팀에서는 제대로 된 요구사항의 정의가 되지 않았고, 작업의 우선순위가 불분명하기 때문에 이런 기술적 판단 미스와 잘못된 기술 부채가 누적되어지기 때문이다.기술적 부채에 대해서는 다음에 이야기하고, 이번 이야기에서는 '작업'의 우선순위를 결정하는 부분에 대해서만 이야기해보자.우선순위를 결정하는 기준이 없거나, 기준에 대해서 의사소통이 안 되는 경우가 발생할 수 있다. 그리고, 대부분의 스타트업들은 이런 현상을 맞이한다. 물론, SI현장에서는 너무도 비일비재하게 반복되는 경우가 많기 때문에 이런 현상은 지금 이 순간에도 반복되고 있다.도대체 왜 이런 상황을 만들었는가? 그리고, 누가 이렇게 만들었는가? 분명, 스타트업 초기에는 의기투합했던 CEO와 기술 총 책임자가, 어느 정도 기업이 성장하고 나니, 업무의 우선순위와 요구사항의 폭주 속에서 서로 일기토를 벌이는 대립된 상황이 되어버린 것은 무엇 때문일까? 도대체 이렇게 개발업무가 뒤죽박죽 되어버린 것은 누구의 책임인가?아키텍처가 부재하고, 아키텍트 역할을 담당하는 사람이 없는 경우에는 이런 현상은 매우 당연하다. 오히려, 발생되고 있는 것을 모른다면 그것은 더 위험하다. 개발자나 담당자가 현상을 숨길 가능성도 매우 크다. 언제나 개발 리소스는 부족한 것이 정상이다.개발 일정은 촉박하고 만들어야 할 것은 많으며, 버그는 언제나 발생한다. 이런 사항들을 어떻게 처리하는 것이 가장 합당한 것인가에 대해서 삐딱한 아키텍트의 시선으로 몇 가지 정의하여 보자.한편으로는 이러한 상황은 매우 당연한 것이다. 소프트웨어 개발을 할 때에 수많은 업무들이 밀려온다. 또한, 요구사항들은 급변하고 시장 또한 급속도로 변화를 일으키는 것을 간과해서는 안된다.‘냉정하게 ‘경영진’이나 ‘개발 총 책임자’의 능력이 부실해서 그런 경우가 태반이다.‘라고 필자는 이야기하고 싶다. 그런 상황을 피하게 해야 하고, 그런 문제를 해결하기 위해서 최선을 다해야 하는 것이 그들이 해야 할 일이다. 그래서, 고액 연봉을 받는다. 그러니, 이런 문제는 그들이 해결해야 한다.결론은 그러하지만, 그런 상황을 좀 더 세밀하게 분석해보자.보통 이러한 일이 발생하는 경우의 가장 대표적인 문제는 경영진의 ‘경영 목표’가 불분명하고, ‘프로젝트의 골’에 대해서 가치의 설정을 제대로 못하고, 이에 대해서 조직원들에게 의사전달이 불분명할 때에 이런 상황들이 대부분 발생한다. 그리고, 결과는 불을 보듯 뻔하게 된다. ( 의사소통이 안되었다고 판단하기도 하지만, 대부분 일방통행으로 전달되어지는 지시사항들이 대부분이므로, 의사소통의 문제는 아니다. 그러니, 개발자나 기획자, 디자이너의 책임이 아니다. 그냥, 지시가 잘못된 거다. )물론, 전통적인 제조업체와 전통적인 관료조직에서는 이러한 문제를 해결하는 다양한 방법들이 연구되었고, 차근차근 일을 풀어나가는 방법에 대해서도 많은 해결책과 솔루션들이 등장한다. 하지만, ‘지적 생산’을 주 업무로 하고 있는 소프트웨어 개발에 있어서는 이러한 방법들은 정말 바보스러운 프로세스를 만들 뿐이고, 인원이 비대해지며, 불필요한 회의와 불합리한 결정들이 도배되는 경우가 많은 관료조직을 비대하게 만드는 경우가 많다. 이런 문제를 해결하겠다고, 조직의 구성 방법이나 조직을 관료화하고, Tree구조로 만드는 바보 같은 짓을 필자도 그런 실수를 반복했었다. (ㅡ.ㅡ;)스타트업으로 빠르게 시작한 기업이 어느 정도 매출을 일으키거나, 서비스가 완성되어 갈 때에, 대규모 인원을 확충하면서 발생되는 문제들은 아이러니하게도 대부분 비슷하다. 그 문제의 핵심중의 핵심은 그 ‘문제’ 들을 어떻게 나열하느냐이다.그렇다면, 이러한 문제들을 어떻게 명확하게 해야 하는가? 그것을 조금 더 명확하게 개발업무에 있어서 정의한다면. 소프트웨어 개발에 있어서 가장 초보적이고 기본적인 ‘업무의 요구사항’을 제대로 결정하는 것이다. 그리고, 이러한 ‘요구사항’을 어떤 방법으로 중요한 ‘업무의 우선순위’를 잘 결정하는 것이다.이런 ‘우선순위’를 결정하기 위하여 ‘요구사항’을 어떻게 잘 정의하는가가 이 문제를 보다 명확하게 하는 방법의 가장 핵심중의 핵심이 되겠다. 물론, 똑똑한 경영자와 리더가 앞에 나서는 것은 당연한 것이겠이고, 그러한 리더는 ‘요구사항’을 정말 명확하게 정의하고, To-be에 대해서 명쾌하게 정의할 수 있다. To-be가 명확하고, 만들고자 하는 제품과 서비스가 명확하다면 이런 혼란을 발생하지 않을 것이다.하지만, 불분명한 목표와 불분명한 요구사항은 결국, 소프트웨어 개발을 파국으로 만들어 버리는 첫 번째 문제점이다. 훌륭한 리더는 작은 요구사항과 작은 결정사항부터 명확하게 정의한다.소프트웨어 개발 업무의 우선순위를 결정하는 방법물론, 이 내용은 소프트웨어를 중심으로 IT설루션이나 서비스를 개발하는 업체를 대상으로 설명하기는 하지만, 일반적인 기업들도 요즘은 대부분 중요한 의사결정과 지적 프로세스들을 갖추어야 하기 때문에 발생되는 문제들은 대부분 대동소이하다고 하겠다.또한, 경영의 목표에 대한 설정과 과학적인 접근 방법은 경영학적인 관점이기 때문에, 그 부분에 대해서도 이 글에서는 논외로 하자. 보통 조직이나 기업은 제한된 리소스와 자원과 일정을 가지고 최대의 이익과 목표를 도달하기 위한 경영자의 판단에 의해서 결정되어지고 움직여진다. ( 그래서, 사장이 똑똑해야 한다. )대부분의 조직과 회사는 이미, 시작부터 그 결과를 예측할 수 있다고 보는 것이 합당하다. 이처럼, 냉정하게 경영의 목표를 명확하게 하고, 조직의 비전과 한 해의 목표와 프로젝트의 목표에 대해서 얼마나 잘 결정하느냐가 핵심적인 성공요소들이다. 목표가 명확하면, 업무 순위도 명쾌하다.아무리 개발자가 똑똑하다고 해도, 경영진의 삽질을 버텨낼 수 있는 것은 거의 ‘기적’에 가까운 일이기 때문이다. 결정하고 업무의 우선순위를 정의하는 사항들이나 체크리스트에 대한 이야기인 경영진들이 판단해야 하는 내용에 대해서는 필자의 경험( 중견기업의 임원 노릇 )을 바탕으로 다음 기회에 이야기하도록 하겠다. 아마도, 스타트업과 중견기업의 임원으로 일해본 필자가 해줄 수 있는 이야기는 필자 주변에서 물어보듯이 생각보다 많은 듯하며, 브런치를 통해서 자주 언급하고 이야기하도록 하겠다.정말 중요한 소프트웨어 개발 기업에서의 업무의 우선순위는 무엇으로 결정되어지는가? 그것은 대부분의 기업과 대동소이하다. 그것은 ‘기업이 추구해야 할 이익’이다. 그리고, 그 이익을 위해서 어떠한 경영적인 지표와 목표를 설정하느냐에 따라서 결정되어진다.이러한 결정사항이 개발업무의 우선순위에 가장 지대한 영향을 준다. 앞서 이야기했지만 경영지표를 설정하는 것은 이 글에서는 논외이다. 일단, 여기서는 경영의 목표는 명확하다는 전제하에서 매일매일 요구사항에 따르는 업무의 우선순위가 요동치게 되는 상황을 생각해보자. ( 일단, 똑똑한 경영진이 제대로 된 목표 설정을 했다고 본다. )하지만, 그렇게 목표 설정이 되어도, 요구사항과 업무의 우선순위가 요동치는 경우는 똑같이 발생하게 되는 경험을 하게 된다. 도대체, 왜? 이런 현상들이 발생되는 것이고, 왜? 우리는 이러한 변동되는 상황 속에 노출되어 있는 것일까?대부분의 소프트웨어 개발 업무들을 보면, 생각 이상으로 매번 계획에 없던 일은 수시로 발생하고, 발생된 업무들은 아이러니하게도 중요한 업무 리스트로 추가되는 해괴한 현상이 수업이 되풀이된다. 도대체! 왜? 그런 현상이 일어날까?시장의 매우(!) 변화는 당연하다.물론 이러한 상황을 여러 가지 상황으로 해석할 수 있겠지만. 대부분의 이런 식의 업무의 우선순위가 요동치는 이유는 '회사 주변의 변화'가 극심해서 벌어지는 현상 중의 하나일 수 있다. 이러한 경우는 극히 당연하며, 이 요동치는 것을 어떻게 프로세스에 반영하는가가 관건이다. 그래서, 해당 프로세스의 분석과 반영에 집중하면 최고의 프로세스를 얻을 수 있다. 대부분이거나 특히, 일등 경쟁업체가 있고. 그 업체의 행동을 주시해야 하는 팔로워 정책을 사용하는 업체의 경우에는 이런 일은 거의 매번 발생하는 경우이니, 어떻게든 이러한 변화를 탄력적으로 운용할 수 있는 환경을 만드는 것이 중요하다.분명, 더욱더 극심하게 발생하는 것과 소프트웨어 개발과 환경, 조직을 그에 맞추어야 하니까 발생하는 것이다. 냉정하게 해당분야의 1등 기업이 아니고서는 대부분 이러한 현상을 비일비재하게 만나게 된다. ( 보통 기업들은 애플과 같은 선도적인 기업이 아니다. ) 그리고, 이런 요동치는 '변화'에 따라서, 보통은 이러한 변화에 따라서 세부적인 실행방안과 전략, 결과물들이 변동되는 것인 어찌 보면 당연하고 지당한 범위의 변동일 수 있다.당연하게도 이러한 ‘시장의 변화’를 내부 조직원들에게 어떻게 전파하고, 의사소통하는 것이 효과적인 것인가에 대해서 더 많은 투자를 해야 하고, 해당 정보들을 빠르게 전파할 수 있는 방법들을 고안해야 한다.하지만, 시장은 그대로인데? 요구사항은 요동친다?그렇지만, 시장의 변화도 없고, 경쟁기업의 변화도 그다지 없는데도, 부서와 부서원, 개발자와 영업 등에 있어서 주요한 우선순위가 요동치고, 기준점이 없는 상황에서 방황하게 되는 현상은 왜 일어나는 것일까?재미있게도, 대부분의 '우선순위'변동은 이러한 외부요인에 의해서 발생하지 않는다는 점이다. 보통은 이런 '외부요인'에 대한 대응방안과 충격은 대부분의 회사와 조직에서 반응할 수 있도록 대처가 되어있는 편들이다. 그리고, 경영이나 관리조직은 그러한 것들을 탄력적으로 운영할 수 있는 다각도적인 방법들에 대해서 이미 익히 알고 있기 때문에, 대부분은 소프트웨어 개발 조직에 이러한 여파가 가지 않도록 최선을 다한다. (* 만일 이런 상황이 아닌데도 개발 조직에 여파가 전해진다면, 전적으로 관리조직이나 리더십의 문제, 의사소통 등의 문제들이 그대로 드러난 것이다. )정말 대부분의 '우선순위'의 변동은 엉터리 같은 상황에서 발생되는 경우가 생각 이상으로 많다. 그것의 대부분은 납득하기 어려운 모호한 이유와 상사의 변덕, 사내 정치의 비합리적인 결정 등에 따라서 변화되는 경우가 많다.물론, 대한민국의 SI특성상 거지 같은(?) 고객의 불합리한 요청사항 때문에 거지 밥상을 뒤엎듯이 변화하는 것 또한 엄연한 현실이고 사실이다. 하지만, 냉정하게 이러한 현실에 대해서 잘 알고 있으면서 대응을 하지 못한다는 것 또한 분명 능력과 실력의 문제이기도 하다. 분명, 거지 같은(?) 고객과 시장이라면 그에 응당한 대응조직이나 프로세스를 갖추어야 한다. 하다 못해, 술말 마시는 술상 무라도 동원하는 것이 합당하다. 대한민국 공공 SI의 성패는 ‘술자리’에서 결정되는 경우도 많다. (ㅡ.ㅡ;)정말 중요한 것은 이런 상황을 파악하는 것 그 자체가 중요한 것이다. 이처럼 정말 중요한 것은 업무의 요구사항에 대한 본질을 정확하게 파악하는 것이다.분명, 자신의 조직과 회사에서 '소프트웨어 개발업무의 우선순위'는 어떤 식으로 결정되어지며, 어떤 것들이 정말 중요한 업무인지 파악하고 분석하는 것이 가장 핵심적으로 필요하다. 아주 세부적인 우선순위에 대해서는 실제 해당 업무를 분석하고 정의해야 하지만, 일반적으로 이러한 ‘요구사항의 본질’을 정의하는 데 있어서, 최소한 두 가지의 스텝으로 업무를 구분하고, 다음의 4가지 정도의 업무형태는 구분해야 한다고 생각한다.현재 팀에 적합한 소프트웨어 개발업무의 우선순위를 결정하자!그것의 첫 번째 스텝은 정말 필요한 '0순위의 업무'와 '쓸데없고 필요 없는 일'을 구분하는 것이다. 그리고 남은 요구사항과 업무들은 일반적인 업무들이며, 그 업무들은 다음 스태프의 분석과 정의에 따라서 ‘고품질이 요하는 업무’와 ‘적정 품질을 요하는 업무’를 구분하는 것이다.이처럼 0순위 업무, 불필요한 일, 고품질 업무, 적절 품질업무의 4가지 스태프로 구분하여 업무의 우선순위를 정하는 것이 요구사항 분석의 첫 번째 단계이다. 그리고, 그러한 기준과 성격에 대해서 조직원들에게 폭넓은 이해를 구해야 하며, 그 부분에 대해서 공감대를 형성해야 한다. 대부분 기업의 목표와 비전은 그러한 것을 전제로 구성되게 된다. 그렇다면, 이러한 해당 업무의 성격은 어떻게 구분하는지 하나씩 살펴보자. 요구사항들에 대해서 구분이 어렵다면, 필자가 사용하는 방법을 한번 사용해 보라. 아래의 표는 요구사항의 우선순위를 평가하기 위해서 필자가 사용하는 방법이다. 점수를 만들어서 사용하는 것이 가장 간단할 수 있다.표1, 요구사항에 대한 가중치 리스트위의 표를 이용하거나 적절하게 요구사항의 가중치를 조절하여 ‘수치화’하는 것도 일부분 가능하다. 하지만, 이렇게 정량적으로 판단하는 것보다 더욱더 중요한 것은 ‘요구사항’은 ‘정성적’인 판단을 제대로 하는 것이다.0 순의 업무를 찾고 정의하자가장 쉽게 이야기하면. ‘기업의 이익을 가져다주는 확실한 것’이 명확하게 드러난 것을 의미한다. 몇 가지 부연설명을 하자면, 기업이 사활을 걸어야 할 신기술이 들어간 서비스, 매출 증대를 위한 새로운 시장에 진입하는 비즈니스 모델을 갖춘 서비스, 수익모델을 만들고 실현하기 위한 일련의 서비스의 Back-office 작업들, 현재 서비스 중인 소프트웨어의 위기사항을 타개할 해결책을 찾는 것 등이 이러한 '0순위 업무‘에 해당한다.더 명쾌하게 이야기하자면 '업무의 가치'가 명확하고, '업무의 요구의 원천'이 명확하고 정확하게 드러난 요구사항들 중에 '수익'이 명쾌하게 보이는 일이 이에 해당한다. 이러한 '업무'들은 개발 조직뿐만 아니라, 영업이나 기타 조직에서도 발 빠르게 대응하는 것이 가장 중요하다.보통 이러한 일들에 있어, 가장 중요한 것은 '타이밍'이게 된다. 말 그대로, 발생한 시기와 해결되는 시기의 주기가 가장 짧아야 한다. 말 그대로, 고객이 원하는 제품과 서비스를 의미한다. 그래서, 0순위로 진행해야 한다.또한, 이러한 타이밍은 기업에게도 큰 기회를 주지만, 해당 업무를 추진하는 부서와 개인에게도 큰 이익과 인사고과의 결과를 선사하기 때문에 정말로 의미 있고 중요한 업무가 된다. 다만, 이러한 0순위 업무의 구분을 해야 하는 경우에는 해당 조직과 회사에 당연하게도 인사고과나 인사정책 또한 잘 구성되어 있는 경우에만 이러한 우선순위의 결정이 의미가 있다. 또한, 결정되어지는 긴급한 의사결정에 대해서 신속하고 명확한 의사전달과 의사소통이 가능한 집단의 경우에게만 이러한 ‘0순위 업무’에 대한 정의가 가능하다.앞서 이야기한 인사정책이나 의사소통이 불분명한 조직에서는 아무리 ‘고객’이 당장 원하는 ‘서비스’와 ‘제품’이라고 하더라도. 소프트웨어 개발 조직에서는 생뚱맞게 튀어나온 불특정 한 업무로 밖에 받아들이지 않는다.그러한 ‘문화’와 ‘환경’을 갖추고 있지 않는 기업이라면, 이러한 ‘0순위 업무’는 가능한 발생시키지 않는 것이 최선이다. 그리고, 다음의 ‘불필요한 일’을 구분하는 정도로만 진행하는 것이 더 효과적일 수 있다.하지만, 잘 갖추어지고 유연한 소프트웨어 개발 조직에서는 이러한 이벤트적인 최고 결정사항을 발 빠르게 대처할 수 있다. 이러한 일들은 말 그대로, 잘 수행된 이후에 기업도 이익이고 부서도 신바람 나고, 개인도 업무 고과에서 큰 영향을 받을 수 있는 일이므로, 기업에 가장 큰 이익과 긍정적인 효과를 매우 크게 안겨다 주는 업무가 된다.가장 중요한 ‘문화’가 성립되어진 기업과 조직은 어떻게든 이러한 ‘0순위 업무’를 정말 잘 필터링하는 것이 해당 기업의 점진적인 성공과 성패의 최우선적인 결정사항이 될 것이다.보통 이러한 결정은 어느 정도 회사의 서비스와 제품이 성공적으로 시장에 안착한 다음, 시장이 확대되거나 해외 수출 등의 매출이 급속도로 증가하는 시점에서 심각하게 고려해야 할 사항들이다.그렇다면, 이러한 요구사항이나 업무는 어떤 식으로 결정하는 것이 최선일까? 여러 가지 의견이 있지만, 크게 두 가지로 나눌 수 있다. 하나는 대부분 이러한 업무는 특정 체크리스트와 회의에 의해서 결정될 수도 있다는 점. 또 다른 하나는 리더십을 가진 사람이거나 경험이 풍부한 사람이 직감과 경험에 의존하는 것이다.과연 어떤 방법이 효과적일까? 프로세스로 이러한 0순위 업무를 결정할 것인가? 직감과 경험에 의존할 것인가? 두 가지 모든 것을 고려할 것인가에 대해서는, 각 조직과 기업의 성격에 따라서 조금씩 다르다.다만, 정말 중요한 것은 ‘0순위 업무’를 제대로 구분하고, 이를 정하는 일련의 작업들을 수행하고 있는가 하는 점을 먼저 판단하는 것이다. 보통 이런 ‘0순위 업무’들은 너무도 명확하기 때문에 잘 드러나서 경험과 직관으로 결정하는 것이 더 효과적인 경우가 많다. 경험이 풍부한 고급 개발자나 아키텍트와 같은 인력을 보유하는 절대적인 이유이기도 하다.하지만, 문화적인 형성도 힘들고, 고급인력도 없다면, 다음의 ‘쓸데없는 일’을 찾는 것에 중점을 두어보자.현재 상황에서 ‘쓸데없는 일’을 구분하자.대부분의 소프트웨어 개발 조직에서 가장 잘해야 하는 작업은 정말로, '쓸데없고 필요 없는 일'을 구분하는 것이다. 냉정하게 지금 당장 필요 없는 업무, 해도 그다지 성과가 없는 업무, 의미가 부족한 업무 등이 이에 해당된다. 대부분 이러한 업무들의 대부분은 '업무의 가치'가 불명확한 경우와, 누가 만들고 요구한 것인가? 에 대한 요건이 불명확한 경우가 많다.이 두 가지에 해당되는 내용들이라면, 대부분 쓸데없는 일이나 요구사항으로 구분하여 정리하고 처리해야 한다. 물론, 요구사항의 수집이 잘못되었을 수 있지만, 그것은 수집의 문제에 대해서 다시 논하기로 하자. 요구사항 수집 공학과 관련된 이야기도 칼럼 중에 한번 이야기해야 할 내용이다.하여간 이러한 ‘쓸데없는 일’들은 분명, 현재의 작업에 등록되어 있고, 누군가가 하고 있으며, 어떤 지시에 의해서 실제 수행되는 경우가 상당수 존재한다. 이러한 대부분의 일들과 요구사항들을 살펴보면, 현재 등록되어진 대부분의 업무들 중에 10가지 중에 1~2가지 일들은 대부분 타성적으로 흘러 지나가는 경우가 대부분인 경우가 많다. 냉정하게, 현재 등록되어진 요구사항이나 업무에 해당하는 것들의 10~20%는 정말 '쓸데없는 일'들이 많다. ( 지금 당장 업무의 Task를 살펴보면, 이런 쓸데없는 일들을 찾을 수 있다. 왜? 자신도 모르게 버퍼 삼아서 등록해 놓은 업무, 팀장이 버퍼로 등록한 업무까지 정말 많다. )또한, 그 이외에도 대부분이 비즈니스 환경이 변하거나, 업무를 지시한 상사의 변덕 등으로 사라지는 업무들도 이에 해당한다고 볼 수 있다. 이러한 업무들은 해당 이벤트와 상황에 따라서 후순위로 처리되거나 하지 말아야 할 것들에 해당한다. 그렇다면, 이러한 쓸데없는 일들을 어떻게 구분해 내는가? 가장 대표적으로 구분하는 방법은 ‘만들어진 보고서’와 ‘결과물’이 소홀하게 관리되는 경우가 대부분 이에 해당한다고 보면 되겠다.이러한 쓸데없는 일들의 결과들을 살펴보면, 정말 심한 경우 보고서나 결과물에 대해서 보고를 받는 시간 10~20분 정도의 대충하는 경우도 많은 것이 대부분이다. 그리고, 실제로 관료화된 조직에서는 이러한 많은 업무들이 필요 없는 업무들로 구성되어진다.소프트웨어 개발 조직이 관료화된다는 것이 얼마나 비효율적인가 하는 점은 굳이 첨언하지 않아도 대부분의 개발자들이 잘 알고 있을 것이다. 소프트웨어 개발 조직이 관료화되어있다고 생각한다면, 대부분의 '소프트웨어 개발 업무'들은 쓸데없는 일에 30~40%의 일을 소모하고 있는 경우가 대부분이라고 봐도 무방하다.그래서, 이러한 업무들을 구분하는 방법으로는, '업무가 추진되고 나온 결과물'을 검토하는 시간과 결과물에 대한 반응을 살펴본후, 그 반응이 어떻게 내재화되는지에 대해서 검토하여 보면 대부분 알 수 있다.또한, 해당 서비스나 라이브러라, 산출물들이 얼마나 재활용되고 있으며, 효과적으로 반영되고 있는지에 대한 평가도 같이 하면, 이러한 ‘쓸데없는 일’을 찾아낼 수 있다. 대부분 이러한 업무들의 대표적인 것들이 냉정하게 신입사원들 대부분의 업무가 그러하고, 선임 직원들은 관성에 따라서 만들어 내는 업무들이 대부분 이러한 경우가 많다. 또한, 습관적으로 중복적인 업무들도 많이 발생한다. 이러한, 업무의 누수를 어떻게 잘 검토해 내느냐가 관건이고, 정말 필요한 일을 잘 판단하는 기본적인 체크를 할 수 있는 방법을 만들어야 한다.이러한 분리된 스텝으로 정말 필요한 일과, 정말 필요 없는 일을 구분하는 것만 체크하고 점검하여 진행하여도, 업무의 우선순위는 대부분 정해지고, 불필요한 일과 쓸모없는 일들을 제거할 수 있다. 물론, 냉정하게 이러한 업무를 제대로 해야 하는 것이 중간관리자나, 팀장들이 일을 잘하는 경우에 해당되겠다. 또한, 효과적인 의사소통이 많아지고, 효과적으로 대응하는 경우에 이러한 업무의 구분이 보다 명확해진다. (* 그렇다고, 의사소통을 많이 하겠다고, 회의시간만 길게 잡는 것 또한 불확실한 일처리를 의미한다. 대부분 그 방법은 해당 조직들이 더 잘 알고 있다. 어떤 장소에서 어떤 시간이 더 많은 대화를 나누는 것인지 잘 알고 있다. )최소한의 이러한 구분이 가능하다면, 좀 더 업무의 우선순위를 좀 더 세분화하여 정의할 수 있게 시도할 수 있다. 그것은 소프트웨어 개발에 있어 정말 중요한 정말 고품질을 요하는 업무와 적정한 품질로 처리해야 하는 업무에 대한 구분이다. 필자의 경험에 따르면 정말 고품질을 요하는 소프트웨어 개발의 범위는 전체 프로젝트 범위의 30%를 넘어선 적이 없다. 대부분은 변화가 있으며, 단순 처리되는 내용들이므로, 적절한 품질로 대응이 가능하다.단순한 crud성 화면 프로그램에 엔진에서 검토해야 하는 품질 절차와 리소스를 투입하는 바보 같은 짓을 되풀이해서는 안된다. 전체적인 품질 테스트에서도 충분하게 검토될 내용과, 단위 테스트와 아키텍처적인 관점에서 접근해야 하는 고품질의 영역을 제대로 구분해 내는 것 또한 소프트웨어 개발의 요구사항을 효과적으로 대응하는 것이다.해야 할 일중에 정말로 고품질을 요하는 소프트웨어 개발업무를 구분하자성과가 명확하게 보이는 개발업무로써, 해당 소프트웨어의 개발된 서비스의 실체와 가치가 완벽하게 드러난 일이다. 또한, 해당 서비스나 소프트웨어가 다른 개발팀이나 다른 서비스에 많은 영향을 주는 영역의 개발이라면 당연하게도 ‘고품질’이 요구된다.다만, 0순위처럼 '그 이익'이 정량화되지는 않았으나, 정성적인 기준에 의해서 그 가치가 명확해진 개발업무들이라고 보면 된다. 대부분 이러한 일들은 '요구사항'의 변화가 거의 없을뿐더러, 관료조직의 극성인 변덕스러운 직장상사도 필요한 요구사항을 틀지 못하는 경우가 많은 서비스이거나 업무에 해당한다.또한, 이러한 대부분의 고품질 개발일은 이러한 '최선을 다해야 하는 일'인 경우이다. 하지만, 업무 순위를 결정할 때에 잘못하는 것 중의 하나가. 매일, 매번 이러한 '최선을 다해야 하는 일', ‘고품질’로 결정되어진다는 것이다. 그렇지만, 그렇게 결정된 ‘고품질 속성’은 잘못 결정된 판단일 가능성이 높다. 고품질은 많아야 전체 업무의 30% 정도이다. 그 이상으로 책정된다면, 평가기준부터 잘못된 것이므로 다시 살펴봐야 한다.물론, 정확하게 일에 대해서 살펴보면 이렇게 구분하는 것은 대단한 업무 처리능력을 가진 기업이나 조직일 수 있겠지만. 그런 식으로 제대로 관리하는 기업은 한 번도 본 적이 없다. 관리의 S기업도 그렇게 정의하지는 않고, 안전이 가장 중시되는 항공기 관련 소프트웨어 개발에 있어서도 그런 식으로 기준을 정하지는 않는다. 이런 식으로 대부분의 업무가 '고품질'로 책정된다면, '업무의 중요도'를 잘못 판단하고 있는 것이다. 그러므로, 기준 작업과 검증작업을 다시 해야 한다.다만, 개발업무내용에서 그 사용가치를 찾기 힘들고, 만들어진 결과물 또한 다른 서비스나 개발 조직에 별다른 기여를 하지 못할 것이 명백하지만, 최선을 다해야 하는 개발업무가 있다. 그것은 '사장님' 또는 개발 총괄 책임자가 만들어낸 업무이다. 그것은, 개발업무 우선순위에 있어서 '책임'은 윗분들이 결정한 것이기도 하지만, 고위층의 경영적인 판단에 의해서 움직이는 전략적인 업무일 수 있다.보통 이러한 사항들은 '경영진의 의사결정'이기 때문에, 우선순위를 중요하게 책정해야 한다. 그리고, 이러한 ‘업무의 성격’은 명확하게 ‘요구사항’이나 ‘업무’에 명시가 되어야 한다. 그래야, 개발 조직은 개발함에 있어서 주저함이 없을 것이다.대부분은 고품질이 아니며, 적절한 품질요건으로 만족하는 개발 영역대부분의 '쓸데없는 일'이 아닌 보통의 개발업무들의 경우에 이 4번째에 해당한다. 이 소프트웨어 개발업무는 고품질이 아닌, 해당 개발업무의 기본적인 완성도만 추구하면 되는 일이다.또한, 이러한 업무들은 대부분 QC와 QA의 업무가 구분되어져 있고, 해당 리소스를 투입하고 있는 경우에는 이 부분으로 처리가 되는 경우가 더욱더 많이 정의되게 된다. 가능한, 품질관리에 투입되는 리소스를 최소화하는 것이 전체적인 개발의 성과를 향상하게 된다. 소프트웨어 개발업무를 어떻게 하든 이 영역을 80% 이상으로 끌어올리는 것이 개발을 효과적으로 수행하게 하는 것이다. 필자의 경험에 따르면 ‘고품질’은 20%, ‘저품질’은 80%의 영역으로 설정하고, 고급 리소스는 ‘고품질’에 투입하도록 하는 것이 가장 합당하다.일반적으로 소프트웨어 개발업무의 대부분의 구성 업무들은 이러한 '적당하게 해야 하는 업무'이다. 이 업무에는 '에너지'와 '시간'을 낭비하면 안 된다. 말 그대로, 적정하게 해야 한다. 그리고, 개발자들에게 ‘잉여’를 공급하게 하고, 반복적인 테스트와 품질 검토는 품질관리 조직에서 다양한 방법으로 접근하고, 문제의 발생을 추적하여 통보하여, 품질관리를 분리하는 것이 최선이다.‘고품질’은 품질의 주요한 권한과 책임을 ‘개발자’에게 주는 것이고, ‘저품질’은 품질을 프로세스에서 검토하여 통보하는 방법으로 수행하는 것이다. 이는 개발 조직의 최대한의 역량을 ‘고품질’에 집중하게 하고, 단순 반복 테스트와 같은 업무를 소프트웨어 개발 조직에 있어서 가장 중요한 ‘개발 조직’을 효과적으로 활용하게 하는 것이다.물론, 이러한 품질 관련 업무의 가장 중요한 고려사항은 직장상사나 동료들과의 커뮤니케이션을 가장 중요시하게 된다. 이러한 업무의 대부분은 '신뢰'가 전제가 되어야 하기 때문이다. 또한, 여기서 가장 중요한 것은 '신뢰받는 직장상사'와 ‘신뢰받는 부서’의 업무지시가 가장 핵심이 되게 된다. 또한, 이러한 업무의 우선순위가 정치적/심리적 변화에 따라서 변화되는 요구사항은 제대로 된 업무가 아닌 것이 된다. 이 부분이 가장 중요하다.일반적으로 이해하고 있는 에자일의 핵심적인 요소는 위에서 잠시 설명한 ‘신뢰’를 어떻게 의사소통하느냐가 관건이다.결론적으로 이야기하자면 소프트웨어 개발업무에 있어서 ‘업무의 우선순위’를 결정하는 요구사항을 분석하는 데 있어서 최고의 핵심 요소는 다음의 5가지를 잘 정의하는 것이다.1) 업무의 가치2) 업무의 원천( 누가 만들고 요구한 것인가? )3) 기업의 가치 추구4) 직장상사와 동료의 가치 추구5) 고품질이 정말 필요한 업무의 구분이러한 4가지의 관점을 어떻게 정성적이고 정량적인 방법으로 도출하며, 이를 의사소통하여 공통 관심사를 형성하느냐에 달려있다. 하지만, 현대의 관료화된 조직의 대부분들은 쓸모없는 요구사항들이 상당수를 차지하며, 해당 조직의 스트레스에서의 핵심 요소가 된다는 점이다.이와 같이 업무의 요구사항들을 어떻게 구분하는 것인가부터 시작하는 것이 '요구사항 공학'의 기본적인 정의이다. 냉정하게, '업무의 가치'는 그 기업과 조직이 가지고 있는 '비전'과 '골'에 영향을 받는다.그러므로, 경영진이 가장 똑똑해야 그 기업의 가치가 증대된다. 언제나 이야기하지만 경영자의 삽질을 이길 수 있는 슈퍼 개발자는 존재하지 않는다. 그것은 기적이다.

기업문화 엿볼 때, 더팀스

로그인

/