Problem-solving approach that involves empathizing with users, defining the problem, ideating, prototyping, and testing.