Model-driven architecture

Model-driven architecture (MDA™) adalah sebuah pendakatan perancangan perangkat lunak yang diluncurkan oleh Object Management Group (OMG) di 2001. MDA mendukung rekayasa model-driven dari sistem perangkat lunak. MDA menyediakan sekumpulan panduan untuk menstrukturkan spesifikasi yang dinyatakan sebagai model. Pendekatan MDA mendefinisikan fungsionalitas sistem menggunakan sebuah platform-independent model (PIM) dengan memakai sebuah domain-specific language yang sesuai. Kemudian, diberikan sebuah platform definition model (PDM) berupa CORBA, .NET, the Web, dll., PIM diterjemahkan ke dalam satu atau lebih platform-specific model (PSM) yang dapat dijalankan oleh komputer. PSM dapat menggukanan Domain Specific Language yang berbeda, atau sebuah General Purpose Language seperti Java, C#, PHP, Python, dll.. Kakas otomatis umumnya yang melakukan penerjemahan ini. Organisasi OMG sekadar menyediakan spesifikasi kasar dan bukan implementasi, kadang-kadang merupakan jawaban atas Requests for Proposal (RFP). Implementasi datang dari perusahaan swasta atau kelompok open source. Prinsip-prinsip MDA dapat juga diterapkan pada area lain sepertibusiness process modeling dimana PIM diterjemahkan ke dalam proses otomatis atau manual.