스타크래프트에서 배울 수 있는 앱/웹 개발 원칙
블리자드의 명작 게임 스타크래프트 개발기를 보며 배운 점이 1개 있다.
'게임의 재미를 더하기 위해, 게임에 무엇을 더 추가하지 말 것. 만약 게임 내 하나를 더하면 하나 이상을 뺄 것' 이었다.
일례로, 스타크래프트는 프로토스-저그-테란 3가지 종족으로 시작했다. 보통의 게임사였다면, 게임 내 화제성을 더하기 위해 '추가 종족 출시' 등을 진행했을 듯 한데, 스타크래프트는 3가지 종족 체제를 끝까지 고수했다. 종족을 하나 더 해 화제성을 높이기 보다는, 3가지 종족으로도 게임을 더 재밌게 즐길 수 있는 판을 짜는 데에 더 많은 고민을 하였다.
더불어, 각 종족 별 밸런스를 맞추기 위해 주기적으로 패치를 진행하긴 했지만, 각 종족 별 특성은 최대한 고수하려 노력했다. 즉, 각 종족 별 캐릭터들의 공격/방어 능력은 특별히 더해지지 않았다. 보통의 게임이어다면, 각 캐릭터에 새로운 능력을 지속적으로 추가하며 게임의 수명을 연장해 나가는데 (그러면서 게임이 점점 복잡해지기 시작하고, 결국 하던 사람만 하는 게임으로 전락하게 되는데...), 스타크래프트는 게임의 이용성을 유지하기 위해 캐릭터 별 능력치를 최대한 건드리지 않고, 혹 하나를 새로 추가하게 되면 하나 이상을 꼭 빼는 의사결정을 했다.
스타크래프트의 위와 같은 개발 방식은, 스타트업의 앱/웹 개발 과정에도 큰 시사점을 준다고 생각한다.
스타트업들이 앱/웹을 업데이트 해 나갈 때, 가장 많이 하는 실수 중 하나가 앱/웹 내 새로운 기능을 계속 더해 나가는 것이다. 새로운 기능이 추가되면 될수록, 앱/웹이 복잡해지기 시작하고, 유저가 사용하지 않은 기능이 점점 더 많아지면서, 앱 사용성 자체가 과거 대비 더 떨어지게 되는데 말이다. 유저는 화면 내 기능/워딩이 많으면 일단 그냥 넘기고 (뭐가 이리 많어..), 적으면 더 집중해서 보는데 말이다 (이건 뭐지?). 회사는 위와 같은 유저의 특성에 역행하여, 앱/웹에 무엇인가를 계속 더하며 여백을 없애는 실수를 저지르고 있는 것이다.
회사에서 앱에 무엇을 더 추가하는 이유는, 1) 팀의 생각이 정리되지 않은 상태에서, 2) 무엇인가 계속 만들어서 해결하려고 하는 습성 때문이다. 스타트업에 모인 사람들이 '나도 뭔가 만들어보고 싶어서 왔다'의 maker 적 성향이 크기도 하고, 만드는 것이 빼는 것 보다 더 재밌고 마음이 불편하지도 않기 때문에(있던 것을 빼려면 만든 사람과 갈등이 수반될 수도 있다) 무엇인가 더하려는 경향이 강하다. 그리고 회사 내 1) 겹치는 것은 합치고, 2) 유사한 것은 묶고, 3) 불필요한 것은 버리는 과정에서 중요한 것을 강조하는 역할을 하는 인재가 부족하기 때문이기도 하다. 마지막으로, 제품을 단순화하려면 '기술 고도화 기반 유저 맞춤화 역량'이 뒷받침되어야 하는데, 그 정도의 기술력을 갖추지 못했기 때문이기도 하다.
결국, 스타크래프트의 미학에서 명심해야 하는 사실은, 제품의 사용성을 유지하고 발전시켜 나가기 위해서는, 더하는 것보다 빼는 것에 집중하는 것이 필요하다는 사실이다. 유저가 사용할 수 있는 기능 수에는 한계가 있기에, 더해서 해결하기 보다는, 있는 것을 더 잘 다듬으며 해결해 나갈 필요가 있는 것이다.
아쉽게도 Ringle 은 제품을 점점 더 단순화하지는 못했다. 오히려 과거에는 점점 더 복잡해지는 쪽이었던 것 같다. 지금도, 필요한 지점 마다 꼭 보여야 하는 것들이 먼저 강조되어 노출되고 있지 못하는 경우가 있다. 그래서, 유저의 수강신청 또는 결제 과정에서 이탈이 발생하는 경우가 있고, 결국 지금 대비 수업 수를 더 높일 수 있음에도 그러지 못하는 상황이 발생하고 있다. 한 마디로 최적화되지는 못했다. 그래서, 이 문제를 해결하기 위해 올 12월 타겟으로 웹/앱 3.0 프로젝트 진행 중인데, 사용성이 떨어지는 기능/화면/단계는 과감히 제거하고 단순화하는 것을 모토로 진행하고 있다. 3.0 업데이트 이후에도 복잡성이 여전히 남아있긴 하겠지만, 적어도 과거보다는 단순해질 수 있으리라 기대하고 있다.
결론적으로, 유저의 사용성 높은 앱/웹을 만들기 위해 아래의 원칙을 명심해야 한다.
v. 기능 하나를 더하고 싶다면, 기존 기능 중 하나 이상을 무조건 뺄 것.
v. 무엇을 하나 더 만들까 고민하기 전에, 무엇을 더 뺄까 고민부터 할 것.
v. 화면 내 버튼/워드의 수를 통제할 것 (통제가 있어야, '여기서 가장 중요한 것이 무엇이지?' 고민하게 된다)
v. 주기적으로 정리할 것.
(쩝... 아직도 엄청 반성된다. 지행일치의 경지에 언제 쯤 다다를 수 있을 지. 알면서 실수는 왜 반복하는 것일지.)