디자인 사고는 문제 해결 방법을 생각하는 과정을 뜻합니다. 관찰을 통해 문제를 정의하고 실험을 통해 성공과 실패를 반복하며 발전해나가는 방법론으로 여러 가능성 중 적합한 방법을 선택하는 기준이 됩니다. '자신이 만들고 싶은 것'이 무엇이며 필요한 정보들이 무엇인지 명확하게 파악할 수 있습니다. 과정을 눈에 보이도록 기록해 각 단계마다 필요한 것들을 나 혹은 구성원에게 명확하게 요구할 수 있습니다.
무슨 일이 일어나고 있는지 알아내는 단계입니다. 어떤 맥락에 속해 있느냐에 따라 주제가 다르며 모든 것을 관찰할 수는 없기 때문에 나 혹은 단체가 속해 있는 맥락이 무엇인지 파악한 뒤 관찰할 대상을 정합니다.
관찰할 현상을 선택했다면 연관된 모든 것들을 기록합니다. 발산형 사고가 필요한 단계로 한계를 두지 않고 최대한 '양'에 집중해서 목록을 만듭니다. 되도록 부사, 추상적 의견이 섞이지 않도록 주의하면서 정성적, 정량적 정보를 최대한 확보합니다.
수집 단계에서 찾은 수많은 정보를 정리하는 단계입니다. 수렴적 사고가 필요한 단계로 현상을 설명할 수 있는 '질'이 높은 정보를 찾아내야 합니다. 현상이 일어난 원인과 결과를 파악한 뒤 다양한 가설을 세워 실행 단계로 넘어갑니다.
이해 단계에서 찾아낸 정보를 토대로 문제를 해결할 방법을 찾는 단계입니다. 다양한 가설에 기반해 실현 가능한 방법을 찾습니다. 현실적으로 실행할 수 있는 방법을 찾아내고 구체적으로 어떻게 실행할지를 결정합니다.
시간과 개발 가능성을 판단합니다. 임팩트/실행가능 매트릭스를 사용하기도 합니다.
한 번 추가한 기능은 제거하기가 어렵기 때문에 전체 제품 로드맵을 고려해야합니다. 출시한 서비스라면 버전별 사용자에 맞춰 서비스를 관리합니다.
MVP (Minimum Viable Product), 즉 목표 달성을 위해 필수적인 기능을 정의하고 개발 범위(지원 기기, 구현 기술 등)을 정합니다.
MVP를 만들어내는데 필요한 최소한의 시간과 +a 에 대해서 고민할 수 있는 시간을 포함해 마감일을 정합니다. (하지만 대부분 제품 외적인 요소로 인해 마감일이 정해지는 경우가 많습니다)
계획 단계에서 정한 범위 안에서 구현하는 단계로 실제로 사용자가 바로 사용할 수 있는 형태를 만들어냅니다. 웹, 모바일 제작 테크닉부터 인지심리학, HCI(Human-Computer Interface)와 같은 이론들이 적용됩니다.
시각적인 요소로 구성된 이미지를 설계합니다. 주로 패턴과 컴포넌트로 구성되며 가장 적합한 시각 장치를 선택하거나 제작해 화면을 구성합니다.
패턴이 어떻게 작동하는지 설계합니다. 실제로 구동될 화면의 움직임을 개발 전에 구현해 테스트를 통해 실제 사용자가 어떻게 받아들일지 미리 파악해 문제를 빠르게 찾아낼 수 있습니다.
실제 디바이스에서 구동될 코드를 설계합니다. 웹의 경우 Html, CSS, Javascript 를 많이 사용하며 상황에 따라 다양한 언어를 사용합니다. 앱의 경우 Android Studio, Xcode 툴을 이용해 Xml, Kotlin, Objective-C, Swift 언어를 사용합니다.
어떤 결과가 나왔는지 확인하는 단계입니다. 이해 단계에서 세웠던 가설에 따라 선택한 방법이 의도한대로 작동했는지 확인합니다. 의도한 결과가 나오지 않았다면 문제가 있다고 의심되는 단계를 찾고 사고 과정을 반복합니다.
각 단계별로 의도한대로 사용자가 행동하는지 체크하는 방법입니다.
특정 화면에서 사용자가 어떻게 행동하는지 시각적으로 표시하는 방법입니다. 정적인 페이지를 분석할 때 숫자로 보기보다 편한 방법입니다.