1- Model(مدل): قسمتي از برنامه کاربردي است که مسئول بازيابي داده از بانک اطلاعاتي، ذخيره آن، تبديل آن به شي يا آبجکت ها و پياده سازي منطق برنامه براي داده هاي دامنه ي مسئله است. در حقيقت بار اصلي معماري MVC بر عهده ي اين بخش است. مثلاً يک آبجکت Product ممکن است اطلاعات را از بانک اطلاعاتي بازيابي کرده، بر روي آنها عملياتي را انجام دهد و سرانجام نتيجه را در بانک اطلاعاتي ئ در جدول Products ذخيره کند.
?- view(نمايشگر): اجزايي از برنامه است که واسط کاربري برنامه (UI) را مي سازد. معمولاً اين UI از داده هاي مدل ساخته مي شود. در واقع نقطه پايان برنامه کاربردي است . به کاربر نتايج عمليات و بازيابي و نمايش داده از طريق برقراري ارتباط با دو بخش ديگر؛ يعني مدل و کنترلگر را نشان مي دهد.براي مثال، هنگامي که کاربر در فرم ورود به سيستم رمز عبور خود را وارد مي کند، اکثر برنامه نويسان در همان فرم اقدام به چک کردن رمز عبور مي کنند که اين عمل مغاير با قوانين MVC است. در MVC هنگامي که کاربر رمز عبور را کرد، رمز عبور بدون هيچگونه اعمالي به بخش هاي ديگر فرستاده مي شود و فقط يک نتيجه ساده يا خبر از بخش هاي ديگر دريافت مي کند که از طريق آن اجازه ي ورود به برنامه داده مي شود.
?- Controller(کنترلگر): اجزايي از برنامه هستند که مديريت تعامل با کاربر را بر عهده دارند. مي توان گفت که واسط بين مدل و نمايشگر مي باشند؛ يعني با مدل کار مي کند و در انتها نمايشگري را براي نشان دادن واسط کاربري انتخاب مي کند. ورودي کاربر را مديريت کرده و به آنها پاسخ مي دهد و با کاربر تعامل مي کند. براي مثال، کنترلگر عبارت هاي پرس و جوي بانک اطلاعاتي را مديريت کرده و آن ها را به مدل ارسال مي کند، وظيفه اجراي پرس و جوها با مدل است.