1. 기초적인 기능 구현 우선시 ( 사용자에게 제약을 주어서 추가적인 부분을 막는다)
  2. 사용자에게 제약을 주었던 부분들을 풀면서 기능구현을 나눠서 수행한다.