معماری MVVM یا همون Model-View-Viewmodel همانند MVC (روش کلیک کن و بیشتردربارش بدون) یکی از الگو های معماری نرم افزار است.MVVM با ایجاد یک منطق کسب و کار یا منطق عقب پایان (مدل داده)، تفکیک توسعه ی رابط کاربر گرافیکی را آسان می کند. مدل View درMVVM یک مبدل ارزش است به این معنی که مدل View دید مسئول انعکاس اشیا داده از مدل است به طوری که اشیا به راحتی مدیریت و ارائه شوند. MVVM توسط معماران مایکروسافت به طور خاص برای برنامه نویسی رویدادها از طریق رابط کاربری ساده طراحی شده است.
معماری MVVM برای استفاده از توابع اتصال پذیری داده ها در WPF (اساس نمایش ویندوز) طراحی شده است. به جای نیاز به توسعه دهندگان تجربه (UX) برای نوشتن کد GUI، می توانید از زبان نشانه گذاری چارچوب استفاده کنید و اتصال داده ها به مدل که توسط توسعه دهندگان برنامه نوشته شده و نگهداری می شود را مشاهده کنید. این الگوی معماری تلاش می کند تا هر دو مزایای تفکیک توسعه عملکردی ارائه شده توسط MVC را به دست آورد.
انتقاد از این الگو به خودی خود توسط سازنده ان مطرح شده، وجود سربار در اجرای overkill برای عملیات UI ساده در این معماری است. به همین دلیل برای برنامه های بزرگ تر، تعمیم دادن ViewModel سخت تر می شود و گاهی نیز غیر ممکن می گردد. علاوه بر این با استفاده از این مدل معماری در برنامه های بزرگ، اتصال داده ها می تواند به مصرف حافظه قابل توجهی منجر شود و حافظه زیادی را اشغال کند.
از معماری MVVM در پیاده سازی برنامه ها و فریم ورک های مختلفی استفاده شده است. از جمله مهم ترین فریم ورک های NET که از این معماری برای پیاده سازی استفاده کرده اند می توان به DOTVVM (روش کلیک کن و اطلاعات بیشتری دربارش بدون) اشاره کرد. همچنین این معماری در فریم ورک های جاوا اسکریپتی مطرح مثل Vue.js و Oracle JET نیز مورد استفاده قرار گرفته است.