 <p>When the View is bound to the Model:</p> <ul> <li><p>If the View needs to change or you have multiple views a change to the Model will cause changes to all the Views bound to that Model. </p></li> <li><p>From the View's perspective, the object it is bound to might not be that intuitive; when you need to add a properties and/or commands to the the object do you add those to the ViewModel and keep the 'original' properties in the Model or do you modify the Model?</p></li> </ul> <p>Having a ViewModel gives you an extra abstraction between a single Model and multiple (versions of) Views</p> <p>All in all it is just a guideline but be aware that what seems OK today might be not so great when you need to modify/update the application.</p>