Prism is the Microsoft Patterns and Practices Team official guidance for building "composite applications" in WPF and Silverlight. It is intended to help you easily design and build, flexible, and easy-to-maintain large scale applications that run on Windows Runtime, Windows Presentation Foundation (WPF) desktop, Silverlight, or Windows Phone 7. The guidance includes dependency injection (via Unity or MEF), layout (including using MVVM), composite event handling, etc.