Model Driven Architecture (MDA)
Pendahuluan
a. Latar Belakang
Design merupakan bagian terpenting dari tahapan pembangunan perangkat lunak. Bila kesalahan terdapat pada tahap ini, maka bisa menimbulkan kesalahan pada perangkat lunak yang terbangun nantinya. Biasanya tahap coding yang bertujuan untuk mengimplementasikan design harus dilakukan manual, dan hal ini menghabiskan cukup banyak waktu pengembangan perangkat lunak. Melihat permasalahan ini, dibutuhkan suatu pendekatan baru yang berfokus pada design dan tidak terganggu oleh proses coding. Model-Driven Architecture merupakan pendekatan baru yang bisa mengakomodir kepentingan ini.
b. Pengertian MDA
MDA atau Model-Driven Architecture merupakan pendekatan pengembangan perangkat lunak yang berfokus kepada tahap modelling. MDA memisahkan antara application logic dan business logic, sehingga pembangunan software hanya perlu berfokus pada pemodelan tanpa dipusingkan oleh coding. MDA tools menyediakan kemudahan untuk men-generate code dari design atau model yang sudah dibuat. Selain itu, model yang sudah dibuat dapat digunakan kembali apabila suatu saat akan dibuat perangkat lunak serupa dengan platform yang berbeda.
MDA
a. Konsep MDA
- PIM atau Platform-Independent Model digunakan untuk membuat design model yang tidak tergantung pada teknologi atau platform apapun. Biasanya dipakai UML untuk membuat model ini. Perlu diketahui bahwa UML merupakan kunci dari MDA dan menjadi basis dari 99% pembangunan projects MDA.
- PSM atau Platform-Spesific Model merupakan model yang berdasarkan platform tertentu dan bisa di-generate dari PIM langsung menggunakan MDA tool atau dibuat secara manual.
- Skema basisdata yang telah dibuat sebelumnya dapat dimasukkan menjadi bagian model kita secara langsung melalui MDA tool.
b. Langkah-langkah MDA
- Menganalisa dan menentukan business requirements.
- Men-design UML diagram untuk domain model yang tidak tergantung pada teknologi tertentu, yang merepresentasikan core business. UML model ini disebut PIM (Platform-Independent Model), yang dibuat dengan menggunakan tool MDA.
- Membangun UML diagram yang mengacu ke suatu teknologi tertentu. UML ini disebut PSM (Platform-Spesific Model). Model ini bisa dibuat secara manual atau men-generate-nya menggunakan tool MDA.
- Generate application code dengan menggunakan tool MDA.
Kelebihan MDA
- Waktu pengembangan yang lebih cepat. Hal ini karena dengan kemampuan tool MDA, men-generate code dari model akan lebih cepat dibanding dengan menulis code dari awal.
- Keuntungan dalam hal arsitektur. Artinya, MDA membuat kita untuk berfokus pada arsitektur dan object model dari system daripada coding. Dengan men-design terlebih dahulu, kita akan bisa mengurangi kemungkinan kesalahan arsitektur dalam siklus hidup pengembangan.
- Memperbaiki konsistensi kode dan kemampuan maintain. Dengan tool MDA, code yang di-generate akan memiliki algoritma yang konsisten, sehingga code bisa lebih dimengerti oleh sesama pengguna MDA.
- Meningkatkan portabilitas antar vendor middleware. PIM dapat digunakan kembali untuk men-generate code untuk middleware platform yang berbeda.
- Code yang di-generate oleh MDA tool tidak menimbulkan bug.
Kekurangan MDA
- Kadang-kadang MDA tool menggenerate code yang tidak dibutuhkan.
- Orang yang pertama kali menggunakan MDA menghadapi beberapa kesulitan.
Kesimpulan
MDA adalah pendekatan pengembangan pernagkat lunak yang fokus pada tahap pemodelan dan memberi kemudahan untuk langsung men-generate application code. Model yang dibentuk oleh MDA mempunyai sifat interopability, portability, dan reusability sehingga sangat bermanfaat. Trend pengembangan perangkat lunak mengarah pada pendekatan MDA yang berbasis modelling ini karena membuat waktu pengembangan menjadi lebih efisien.
Referensi
Recent Comments