http://blogs.msdn.com/b/msgulfcommunity/archive/2013/03/13/understanding_2d00_the_2d00_basics_2d00_of_2d00_mvvm_2d00_design_2d00_pattern.aspx
MVVM is a UI design pattern. The main use of this pattern to remove UI cluttered code like bindings, synchronization etc. In this pattern we create an extra class called as view model which acts as a bridge between model and view. The view sends the actions and data to the view model class who in turns sends the data to model. Any changes in the model is informed to the UI using the INotifyPropertyChanged interface.