MVVM is an architectural pattern with the focus
of removing UI cluttered code. It does the same by using an extra class called
as view model. MVVM is mostly suitable for Silverlight and WPF projects because
of the rich bindings provided by the technologies.
http://msdn.microsoft.com/en-us/magazine/dd419663.aspx
http://joel.inpointform.net/software-development/mvvm-vs-mvp-vs-mvc-the-differences-explained/