기본적으로 MVC 소프트웨어 디자인 패턴은 '화면(사용자 인터페이스)로부터 비즈니스 로직을 분리'하는데 중점을 두고 있다. (이를 '관심사 분리'라고 한다.)
MVVM은 그래픽 사용자 인터페이스(뷰)의 개발을 비즈니스 로직 또는 백-엔드 로직(모델)로부터 분리시켜서 뷰가 어느 특정한 모델 플랫폼에 종속되지 않도록 해주는 패턴이다. → 패턴을 쓰고자 하는 목적은 MVC디자인 패턴과 크게 다르지 않다. (관심사의 분리)