제품(Product)

먼저, 제품이라 함은 넓은 의미로 상품, 기구, 장치, 장비, 서비스, 홈페이지, 앱, 소프트웨어, 프로그램, 디자인, 콘텐츠 등을 포함합니다. 단지 손에 잡고 사용할 수 있는 기기만을 제품이라고 하지 않는다는 점을 기억해주기 바랍니다. 오늘날 ICT 시대에는 눈에 보이지 않는 소프트웨어 제품이 기업에 많은 이윤을 가져다주고 있습니다. Google, Microsoft, Amazon, Facebook, 텐센트 등이 무엇을 가지고 장사를 하는지 보기 바랍니다. Apple도 휴대폰이나 컴퓨터와 같은 기기만을 팔아서는 큰 회사가 되지 못하였을 것입니다. Apple은 그 기기를 통해 서비스되는 콘텐츠를 통해 큰 수익을 얻고 있습니다. 기존 하드웨어 제품을 판매하는 것을 주요 사업으로 하던 회사들도 소프트웨어 제품 시장에 발을 들이기 위하여 많은 노력을 하고 있습니다.

기획(Planning)

기획이라 함은 어떤 목표 달성을 위해 구체적인 사안들을 계획하고 전략을 세워, 계획된 전략들이 제대로 실행될 수 있도록 하는 일련의 과업들과 필요한 자원들을 정의하는 과정입니다. 우리 모두는 일상에서 늘 기획을 하며 삽니다. 무엇을 입고, 무엇을 먹을지, 무엇을 보고, 무엇을 배우고, 누구를 만날지 늘상 계획합니다. 또는 주말 계획, 여행 계획, 생일 파티 계획, 데이트 계획 등과 같이 좀 더 복잡한 계획도 합니다. 제품 기획 또한 그러한 ‘일상의 계획’과 비슷한 개념일 수 있습니다만 훨씬 복잡하고, 따라서 기획은 다양한 관점을 가진 팀으로 진행됩니다. 제품 기획에는 아래와 같은 세부적인 내용들이 포함되며, 이는 단순히 제품에 관한 아이디어뿐 아니라 제품이 탄생하고 소멸되는 모든 주기(life-cycle)에 관련됩니다. 탁월한 기획이라 함은 조금 더 구체적으로 들여다보고 조금 더 멀리까지 내다볼 수 있는 것입니다. 그러기 위해서는 많이 조사하고 연구하고, 필요하다면 여러 사람들에게 물어보아야 합니다.

개발(Development)

개발은 기획된 것을 실행해 나가는 과정입니다. 개발은 매우 구체적이고 실천적인 과정입니다. 개발에 있어서 중요한 몇 가지 개념은 ‘품질’, ‘완성도’, ‘사용자 중심 디자인’, ‘유저 테스트’ 등입니다. 얼마나 완성도가 높은 제품을 만드느냐가 그 제품의 품질을 좌우합니다. 또한 개발하는 제품이 과연 그 제품을 쓸 사람들에게 얼마나 좋은 호응을 얻느냐 또한 제품의 성패를 좌우합니다. 그래서 제품을 개발해나가는 과정은 일직선적이지 않고 꽤나 반복적(iterative)입니다. 그림을 그리는 것을 생각해보기 바랍니다. 먼저 밑그림을 그리고, 색을 연하게 칠하고, 점차 점차 그림을 구체화해 나갑니다. 구체화해 나가는 과정에서 밑그림이 수정되기도 합니다.

이렇게 구체화해 나가는 과정을 밟는 것이 개발에 있어 중요합니다. 처음에는 개발할 제품을 손으로 스케치합니다. 형태가 어떻게 생겼고, 버튼은 어디에 위치하고, 색상은 무엇이 좋을지 등 다양한 제품 아이디어들을 스케치로 남깁니다. 그리고 나서 중요한 것은 ‘평가’입니다. 가능한 많은 스케치들을 모은 후, 여러 사람들로부터 그것을 평가합니다. 평가를 통해 아이디어는 ‘팔릴 수 있는 제품’으로 발전됩니다. 완전한 개발 방향이 나오기까지 필요하면 몇 차례라도 더 스케치를 하고, 의견을 수렴합니다. 이러한 과정이 바로 꽤나 반복적이라는 뜻입니다. 소프트웨어도 마찬가지로 스케치에서 시작합니다. 게임을 개발할 때도 캐릭터, 배경, 시나리오, 인터페이스 등에 관한 많은 스케치들이 선행됩니다. 영화를 제작할 때도 마찬가지입니다. 주요 씬(scene)들에 대한 스케치를 통해 영화의 제작 방향을 정합니다. 어떻게 보면 이 과정은 ‘기획’의 연장선인 것도 같습니다. 사실 기획과 개발을 명확하게 둘로 구분하기란 쉽지 않습니다. 기획을 하면서 선행적인 개발 과정이 시작되고, 개발을 하면서 기획이 수정되기도 합니다.

개발 과정에서의 프로토타이핑

스케치와 이를 활용한 커뮤니케이션을 통해 제품을 개발할 구체적인 방향이 정해진 후에는 제품을 실제 만들어 갑니다. 처음에는 대충 형태만 잡아봅니다. 다루기 쉬운 재료를 가지고 만듭니다. 자동차의 경우는 찰흙(clay)을 이용하여 실물 크기의 차를 만들어 보기도 합니다. 필요하면 깎아내거나 찰흙을 덧붙이는 것이 용이하기 때문입니다. 이 영상을 한 번 보시죠: (https://www.youtube.com/watch?v=bYD-it1VbZ4). 작은 제품의 경우에는 3D printing도 많이 쓰입니다. 쉽고 빠르게 만들어볼 수 있기 때문입니다. 이렇게, 개발하고자 하는 최종 모습을 가시적으고 손으로 만져볼 수 있도록 만든 것을 프로토타입(prototype)이라고 합니다. 홈페이지나 앱과 같은 소프트웨어의 개발에 있어서는 종이에 각 화면을 구체적으로 그려서 만든 페이퍼 프로토타입을 사용합니다.

초기 프로토타입은 품질은 낮지만 대략적인 형태와 방향이 보이도록 제작을 합니다. 제작된 프로토타입을 가지고 다른 직원 또는 사용자에게 평가받습니다. 수정할 부분이 있으면 수정하고, 개발의 방향을 더 구체화합니다. 그리고 이 과정이 반복되면서 프로토타입은 꾸준히 발전됩니다. 반복적인 ‘프로토타이핑 & 평가’ 과정을 통해 점차 최종 제품 형태가 완성이 됩니다. 제품의 형태, 구성요소, 재질, 기능, 성능 등의 구체적인 요소들이 다 정해진 후, 실제로 제품을 만들어내는 것은 ‘제조(manufacturing)’라고 합니다. 제조로 들어가기 전에 모든 구체적인 것들이 완전하게 정해져야 합니다. 제조를 위해서는 공장의 설비를 세팅하고 필요한 자원들과 재료들을 조달해야 되는데, 제조하는 중에 갑자기 변경할 것이 생긴다면, 돌아가던 공장을 멈추고, 잘못 생산된 것들을 폐기하며, 새로 공장을 세팅해야 되므로 회사로서는 막대한 손실입니다. 그렇기 때문에 완성도 높은 프로토타입을 제작하는 것은 매우 중요합니다.

소프트웨어의 경우는 조금 다릅니다. 소프트웨어는 ‘제조’라는 단계가 없으며, 언제라도 업데이트를 할 수 있다는 장점이 있습니다. 그래서 요즘은 완성도가 높지 않은 앱이나 게임도 ‘베타버전’이라는 이름을 가지고 미리 출시가 되기도 합니다. 경쟁사보다 빨리 출시하여서 충분한 고객을 미리 확보하는 것도 중요하기 때문에 그런 전략이 쓰이는 것입니다. 고객을 확보하고 커뮤니케이션하며 그들로부터 다양한 피드백을 받아서, 결과적으로 고객들이 진정으로 원하는 제품으로 완성해나가는 것이 요즘 IT기업들의 사업 방법이기도 합니다. 고객들은 자신과 적극적으로 커뮤니케이션하는 회사에 강한 신뢰감을 주고 그들이 제공하는 제품이나 서비스를 기꺼이 이용하려고 합니다. 디지털 비즈니스에서의 이런 과정을 요즘 린스타트업(lean start-up)이라고도 하고 애자일(agile) 방식이라고도 부릅니다.