Company, Development

From Agile to Design

이 글은 “THE LEAN MINDSET” 에서 발췌한 글이다.

From Agile to Design

-Written by Theresa Smith, Sphere of Influence.

애자일에서 디자인으로 옮겨가는 여정은 많은 애자일 소프트웨어 개발자들이 경험하는 까다로운 고객, 목표 명세서, 불가능한 일정에서 출발했다. 물론 애자일은 여기에 완벽히 들어맞아 보였고 우리는 애자일 개발에 뛰어들었다. 우리에게 성공이란 고객사가 요구하는 많은 기능이 작동하는 제대로 된 코드를 제 시간에 납품하는 것이었다. 고객은 프로세스의 모든 사소한 부분에 깊이 관여하여 일부가 되어 우선순위, 지침, 피드백을 제품에 매일 전달했다.

클라이언트가 중요하게 생각하는 기능이 가득 구현된 소프트웨어는 성공적으로 개발되어 고객에게 전달되었다. 이 모든 것은 거의 불가능해 보이는 일정 안에 이루어졌다. 최종 소프트웨어는 훌륭했고 우리 고객은 결과에 만족해했다.

Just One Problem : The Client Was Only Satisfied

이것은 시간이 흐르면서 경향이 뚜렷하게 드러난 많은 것들의 예에 불과했다. 우리의 애자일 프로젝트는 고객이 중요하게 생각하는 거의 모든 사항이 반영된, 높은 품질의 소프트웨어를 적당한 가격에 계속 개발했다. 이런 관점에서 애자일 기업은 업무 성능을 개선했다고 할 수 있다. 그러나 프로젝트가 아닌 제품을 평가하자면, 솔직히 말해 이런 제품에는 위대함이 없었다. 관계자들은 프로젝트 성과에 만족했을지 모르지만, 사용자가 참신한 혁신이나 창조적인 디자인에 기뻐하거나 열광하거나 엄청나게 감동받는 경우는 거의 없었다. 애자일은 고객의 우선순위에 강한 초점을 두며 JustInTime 반복개선은 이런 경향을 더 강화시키는데, 이 때문에 몰입 경험, 일체성, 호감, 심지어 혁신을 제품에 디자인해 넣으려는 어떤 노력도 상당히 힘들어졌다. 애자일에서는 소프트웨어 개발을 고객이 원하는 기능을 한 번에 하나씩 구혁하는 것으로 생각했다. 사실 전혀 그렇지 않은데 말이다.

전형적인 애자일(i.e., agile/Scrum)에는 개발할 적절한 제품을 찾는 창조적인 업무 흐름이 빠졌다는 점이 분명해졌다. 또한, 애자일은 소프트웨어 제품에 더 강력한 의미를 주는 기능 믹스, 형태, 컨텍스트, 우월성, 인지적 개입(feature mix, form, context, dominance, or cognitive engagement)을 조정하는 방법에 대해 아무런 지침도 제공하지 못했다.

Strong Centers

우리는 제품의 전체성(identity)에서 나오는 가치와 제품의 전체성을 표현하기 위해 강력한 중심(Strong Centers)이라는 표현을 쓰기 시작했다. 우리는 정해진 비용과 일정, 기능의 한계 안에서 구현하는 일이 힘든 것이 아니라, 이런 한계를 이용해 훌륭한 결과를 만드는 일이 힘들다는 점을 깨달았다. 우리가 깨달았듯이, 여기에는 애자일 환경에서 사용하는 그 어떤 프로세스보다 더 엄격한 창조적인 혁신 프로세스가 필요했다. 애자일 프로세스의 성공은 일관되고 통일된 독창적인 제품이 나오도록  프로젝트를 이끌 수 있는 신통력을 가진 제품 담당자와 관련자에 달려 있다. 그렇지만 신통력은 현식 전략이 될 수 없다. 혁신 전략은 제품에 대한 비전이 어디에서 나오고 강력한 중심과 관련된 수천 개의 결정에 어떻게 그 비전을 반영하느냐는 질문으로 귀결된다.

관심을 프로젝트에서 제품으로 돌리자 우리는 제품을 있는 그대로 볼 수 있게 되었다. 우리 제품은 특별함이 없고 단조로웠다. 우리는 고객이 ‘만족’하는 데 그치지 않고 ‘감동하고 기뻐하기’를 원했다. 따라서 우리는 변하기 시작했다. 첫째, 우리 개발스튜디오는 위대한 제품을 만들어야 할 의무가 있다는 점을 인정했다. 우리는 우리의 일이 설계를 고객에게 맡기고 단순히 고객의 이야기와 요구사항을 정확히 코드로 옮기는 것이 아니라는 깨달았다. 우리에게는 고객과 고객의 사용자가 결코 내리지 못할 결정을 내림으로써 매력적인 소프트웨어를 디자인하고 기술을 발명할 책임이 있었다. 둘째, 우리는 제품 개념 설계(product conceptual design)를 애자일 스프린트 안에서 동시에 진행되는 활동이 아니라 별도 활동으로 보고 시간을 따로 책정했다. 셋째, 우리는 신뢰받는 애자일 기법이라 하더라도 혁신과 제품 설계에 충분하지 않으며 어떤 상황에서는 실제로 이런 활동을 방해할 수 있다는 사실을 받아들였다.

Small Beginnings

우리의 고객은 제품 개발을 100%통제하는 데 익숙했기 때문에 우리는 어디서부터 시작할지 몰랐다. 첫 시도에서 작은 목표를 세우고 ‘눈에 잘 띄지 않게’, 이미 개발 중인 제품의 몇몇 부분에 우리의 설계 철학을 반영했다. 우리는 고객 주도하에 우선순위를 결정하는 경우에는 거의 주목을 받지 못하지만 제대로 만들면 달라질 것으로 생각되는 부분을 선택했다. 이런 부분은 관계자의 관심을 받지 못했다. 관계자의 관심은 더 고차원적인 비지니스 업무 흐름과 다른 중요한 것에 머물렀다.  당시 우리는 우리가 하는 일에 대해 제품 설계(product design)라는 용어를 아직 사용하지 않았지만, 본능적으로 제품 설계가 빠져 있다는 것을 깨닫고 거기로 주의를 돌렸다. 우리 고객사는 소프트웨어가 핵심 사업이 아니므로 소프트웨어에 대해 잘 모르지만, 우리에게는 스프트웨어야말로 우리가 알고 있는 전부이기 때문에 사용자 인터페이스와 알고리즘 기반 자동화에 대한 고객보다 훨씬 정교한 의견을 낼 수 있다. 이런 것에 대해 고객이 잘 모르는데도 고객에게 결정을 맡기는 대신, 우리는 제품의 몇몇 부분에 우리의 전문성을 적용했다.

제품이 성공적으로 출시된 후 우리는 고객을 대상으로 만족도 조사를 했고 이전과 마찬가지로 고객은 제품에 대해 전체적으로 ‘만족’했다. 그러나 우리가 자체적으로 만든 부분에 대해서 고객은 만족하는 데 그치지 않고 기뻐했다! 이들은 제품 전체에 대해서는 ‘만족’스러우며 기대수준에 대체로 부합한다고 말했지만, 우리가 셜정한 부분에 대해서는 환상적이며 그 부분이 ‘제품을 살렸다(made the product)’고 표현했다.  우리가 지침을 따르지 않은 것을 고객이 과연 알아차렸는지 확실하지 않았지만, 고객은 제품을 좋아했고 이것은 중요했다. 이 일로 우리는 이런 방식을 확대해야겠다는 자신감을 얻었다.

그 다음 두 프로젝트 동안 우리는 세상을 바꿀 혁신을 추구한다는 생각이 아니라, 더 정제된 제품(a more refined product)을 통해 사용자와 상호작용하고 고객의 사업을 지원할 더 좋은 방법을 찾기 위해 약간의 시간과 에너지를 쏟았다. 우리는 점점 더 프로젝트가 아니라 제품에 관심을 두게 되었다.

우리에게 지침이 되거나 열정을 불어넣어 줄 애자일 기법은 없었다. 그래서 대신 창조성과 혁신으로 유명한 업계, 즉 산업 디자인 및 마케팅 스튜디오들을 살펴보았다. 우리는 많은 시간을 들여 IDEO, Frog, Crispin Porter + Bogusky 같은 회사에 대해 연구했고 이 연구로 혁신의 최전선에 적용할 수 있는 디자인을 통해 제품을 향상시키는 아이디어와 기법을 많이 발견했다. 우리는 문화기술학(the science of ethnography)을 공부하고 이것이 어떻게 제품 개발에 적용될 수 있는지 연구했다. 또한, 사용자 인게이지먼트의 심리학에 대해 공부하고 인게이지먼트 강도를 조절하는 많은 기법을 발견했다. 소프트웨어 개발 서적만으로는 이런 것을 전혀 알 수 없지만, 적절한 곳을 찾아보면 이런 것들이 [사용할 수 있을 정도로 충분히] 발달한 형태로 존재한다는 사실을 알게 되었다.

돈을 지급하는 고객이 우리에게 제품 기능과 제품 인도일을 강력하게 요구하면 제품 구현과 납품에만 초점을 맞추고 싶은 마음이 들기도 했지만, 그래도 우리는 마음을 다잡고 상당한 시간과 에너지를 제품 설계과 혁신에 할애했다.

Making Things That Resonate

디자인 기량이 좋아지면서 우리는 우리의 철학을 다듬기 시작했다. 우리는 위대한 제품은 우선순위가 높은 기능들의 단순한 집합체 이상이라는 게슈탈트(Gestalt)관점을 완전히 수용했다. 위대한 제품에는 유사성(similarity), 지속성(continuation), 종결성(closures), 근접성(proximity), figure, and ground 을 활용한 통일된 전체성(unified wholeness)이 있다.  우리는 모든 기능과 디자인 요소는 ‘중심(center)’이라고도 알려진 통일된 전체에 영향을 주며 궁극적으로 여기에서 정체성과 의미가 나온다는 소신을 전개했다. 건축가 크리스토퍼 알렉산더(Christopher Alexander)는 저서 ‘The Synthesis of Form’에서 최초로, 그리고 나중에 나온 4권짜리 전집 ‘The Nature of Order’에서 디자인의 이런 발현적 성질을 잘 설명한 바 있다. 우리는 강력한 중심은 전체성에서 나온다는 알렉산더의 관점을 수용했다. 알렉산더처럼 우리도 강력한 중심이 없은 제품은 고객과 공감할 수 없고 강력한 중심이 있는 제품은 일반적으로 고객을 기쁘게 한다고 생각한다.

이런 게슈타틀 철학은 우리가 소프트웨어 회사의 목적을 더 분명히 이해하는 데 도움이 되었다. 소프트웨어 회사의 목적은 기능과 사용자 스토리의 우선순위를 정하는 일을 도운 다음 그대로 구현하는 것이 아니다. 우리는 우리의 목적이 강력한 중심을 가진 위대한 제품을 만드는 것이라는 것을 깨달았다. 우리는 우리 작업에 새로운 제약 조건을 적용하는 법을 배웠다. 예를 들어 기능은 강력한 중심이 드러나는 데 도움이 되는 경우에만 제품에 구현된다. 우리는 강력한 중심의 형성에 방해되는 기능은 더 이상 허용하지 않는다. 심지어 사용자가 이런 기능을 강하게 원하는 경우라도 이런 기능은 사용자가 제품에 긍정적으로 반응하지 못하도록 만들기 때문이다. 우리는 제품을 누더기로 만들지 않고도 니즈를 충족시키는 법을 발견했다.

제품이 강력한 중심을 가지도록 설계하는 법을 익히는 것은 첫 도전 과제에 불과했다. 소프트웨어 개발자로서 우리는 공감할 수 있는 사용자 경험을 설계하는 법도 알아내야 했다. 이미 사용성 공학에 대해 잘 알고 있었지만, 사용성 공학을 적용해 개발된 제품은 흐리멍텅했다. 우리는 상호작용 설계(Interaction design)란, 사용성(마우스 클릭 수를 세고 시선을 추적하는 것)을 높이는 것이 아니라, 의미를 만들고 사람들이 시간 가는 줄 모르고 현재 하고 있는 경험 외에 모든 것을 잊어버리도록 복잡한 다층 활동에 몰입하게 만드는 것이라는 점을 깨달았다. 이런 방법을 배우기 위해 우리는 사용성이나 사용자 인터페이스 디자인이 아니라 인게이지먼트 심리학 전문가들에게서 영감을 구했다. 낸시 두아르떼(Nancy Duarte)와 마가렛 로버트슨(Margaret Robertson) 같은 전문가를 연구하여 우리는 디자이너가 사용자를 참여시키고 지리멸렬함을 극복하기 위해 리듬을 사용한다는 것을 알게 되었다. ‘공명하다(Resonate)’는 단어는 제품의 자연적인 진동’vibe’이 사용자와 같은 주파수대라는 것을 의미한다. 가령 황금 비율 같이, 사람들과 근본적으로 공명하는 최적의 전이(transition)와 타이밍이 있는 것으로 드러났다. 우리는 이런 타이밍과 전이에 따라 사용자 인게이지먼트의 강도를 조절하여, 행동 심리학자 미하이 칙센트미하이가 ‘몰입경험’이라고 부르는 경험을 하도록 사용자를 유도하는 법을 알게 되었다. 또한, 게임화(Gamification)에 대해 깊이 연구하여, 사용자를 참여시키고 효과적으로 학습하게 하여 성취를 인정하고 경험을 망치지 않으면서 실패를 인정하게 만드는 미묘한 방법들을 인식하게 되었다.

Escaping Conventionality

대부분의 창조 산업에서 고객이 어떤 에이전시를 고용하는 것은 그 에이전시가 고객이 공감하는 아이디어나 스타일을 보여줬기 때문이다. 고객과 에이전시 사이에는 고객은 항상 옳다는 공감대가 형성되어 있지만, 그럼에도 불구하고 에이전시를 고용하는 것은 에이전시가 창조성, 혁신, 차별화되는 스타일을 제품에 불어넣기때문이라는 점도 양측 다 인정한다. 특정 목적을 위해 만들어진 소프트웨어를 제외한 대부분의 창조 산업은 이런 식으로 작동한다. 우리 산업에서 고객은 의심이 많고 개발 업체가 그 이상도 이하도 아닌 정확히 계약대로 개발하도록 일을 시키는데 익숙하다. 이런 상황에서는 에이전시 역할을 제대로 할 수 없고 단지 노동을 공급할 뿐이다. 폭포수 기법, 애자일 또는 다른 무엇이라 부르든 제품이 아니라 프로젝트 관리에 온통 주의를 쏟는다. 대부분의 소프트웨어 개발 회사는 프로젝트 관리 기술과 역량을 내세우며, 디자인 스타일이나 실제로 만드는 제품과 관련된 것은 홍보하지 않는다.

심지어 요즘도 우리에게 가장 어려운 과제는 프로젝트 관리에 가치를 두기보다 제품에 더 가치를 두는 고객을 만나는 것이다. 고객 대부분은 혁신적인 제품 개념에 대해 설명해달라는 요청보다는 RFQ/RFP를 통해 우리와의 관계를 시작한다. 우리 입장에서는 혁신적인 제품 개념에 대해 프리젠테이션하는 것보다 RFP에 대응하기가 더 쉽다. 어떤 개념을 설득하려면 제품 전략, 문화기술학, 포지셔닝, 개념적 디자인을 연구해야 한다. 경쟁에서 이기려면 고객이 몰랐던 가려운 곳을 긁어주는 동시에 한편으로는 고객이 절대 포기하지 않는 목표와 니즈를 만족시키는 우리 회사만의 무엇이 필요하다. 제품 개념에 들어가는 작업, 창조성, 혁신의 양은 RFP에 대응할 때보다 훨씬 많으며 고객이 누릴 수 있는 가치는 말할 것도 없다. 왜 더 많은 회사가 개발업체 선정 방법으로 개념 설명을 요구하지 않는 생각하면 심란하지만, 고객사는 개발업체에 자신이 원하는 것을 이야기하고 개발업체는 비현실적인 견적서로 대응하는 것이 현재 관례이다.

Product over Project

Peter Rowe 하버드대학 교수는 Design thinking(디자인 사고) 이라는 표현을 고안했고 IDEO의 David Kelley는 이 표현을 널리 알리고 산업 디자인뿐만 아니라 모든 창조 분야가 여기에 주목하게 하였다. 이것은 디자이너는 사고방식이 다르고 세상을 다르게 본다는 생각이다. 예를 들어 기술자는 최소한의 해결책을 찾아 문제를 해결해야 하지만 디자이너는 사용하기 좋은 제품을 만들어서 문제를 해결해야 한다. 여기에는 큰 차이가 있다. 기술자는 사람들이 제품 자체를 좋아하건 말건, 제품을 작동하게 만들고 효율적인 제품이 되게 만들고 제품을 만드는 프로세스가 효율적인 프로세스가 되게 만든다. 디자이너는 사람들이 좋아하는 물건을 만들기 위해 존재하며, 제품 사용과 제품에 대한 인식이 전반적으로 개선된다면 요소와 재료를 비효율적으로 통합하기도 한다. 솔직히 말해 우리는 기술과 디자인 둘 다에 끌렸다. 우리는 엔지니어의 영혼과 디자이너의 가슴을 가지고 있다.

우리는 우리가 하는 일을 Design thinking이라고 부르기 시작했지만, 마침내 이 용어를 쓰지 않기로 했다. 우리는 디자인을 위한 디자인의 예를 너무 많이 목격했는데, 이 경우는 미적 감각 때문에 실용성을 포기하거나 유행에 따르느라 강력한 중심을 무시하기도 했다. 우리는 미적 감각과 세련된 느낌을 좋아하지만, 또한 단순한 구식 애플리케이션이 훌륭할 수 있다는 것도 알고 있다. 우리는 위대한 디자인이라 강력한 중심을 통해 장점이 생기는 제품을 만드는 것이라고 생각한다. 또한, 우리는 단순 조립이 아니라 엔지니어링에서 우아함과 아름다움을 발견하는 골수 소프트웨어 엔지니어들이다. 이 점에 대해 생각하면서 우리는 우리 스스로가 ‘디자인 인력’이나 ‘엔지니어링 인력’이 아니라 사실 ‘제품 인력’이라는 것을 깨달았다. 전략, 포지셔닝부터 디자인, 생산에 이르기까지 우리가 흥미를 느끼는 것은 제품 전체이다.

슬프게도 우리가 일하는 업계는 ‘디자인’에 중점을 둘 것이냐 ‘제품’에 중점을 둘 것이냐를 선택하는 곳이 아니라, 제품이 아닌 프로젝트에 모든 초점이 맞춰진 곳이다. 페이스-게이트, 폭포수 기법, 애자일, 그 외 방법들은 모두 위대한 제품을 만드는 것이 무엇인지에 대해 지침은 없이 프로젝트에 주의를 집중시킨다.

우리에게 가장 중요한 깨달음은 우리의 목적이 제품이라는 것이다. 사람들은 회사가 만든 제품을 통해 회사를 기억하지, 제품을 만든 방식 때문에 회사를 기억하지는 않는다. 이것은 프로젝트 관리를 소홀히 해도 된다는 뜻이 아니라 우선순위를 조절해야 한다는 뜻이다. 애자일 기업이 프로세스보다 사람을 더 중요시하듯이, 우리는 프로젝트보다 제품을 더 중요시한다. 여기서 ‘더 중요시하다’는 표헌에 유의해야 하는데, 즉 다른 하나가 중요하지 않다는 뜻은 아니다.

요약

이 과정에서 우리는 위대한 제품은 어디를 보더라도 알아볼 수 있는 장점이 있다는 것을 배웠다. 모든 요소는 제품 전체에 대한 인식을 강화하기 위해 존재하고 구성된다. 일반적으로 인식은 사람들이 그 제품에서 무엇을 얻고자 하는지와 관련되는데, 그것이 경험이든 목표든 그 제품이 아니면 얻을 수 없다.

우리 팀이 소프트웨어 제품을 디자인할 때는 제품 디자이너가 여러가지 제안을 만들고 이 제안을 경험하고 그 제안이 제품의 정체성(Identity)과 전체성(wholeness)을 강화시키는지 약화시키는지 판단한다. 디자인과 관련된 모든 결정은 제품에 대한 인식에 어떤 양향을 주는지를 근거로 검토된다.

디자인과 관련된 어떤 선택이 발현적 성질을 약화시키면 중심의 강도도 약해진다. 어떤 결정이나 요소 때문에 중심이 약해진다면 그 결정이나 요소는 재검토되거나 폐기되어야 한다.

요즘 고객에게 우리 일을 평가해 달라고 요청하면, 이들은 단지 만족하는 것이 아니라 우리 제품을 사랑한다고 답한다.

기본