Model Driven Euphoria
Beberapa hari terakhir ini, karena dapat tugas untuk merancang sebuah aplikasi, aku merambah dunia UML, belajar cara memakai tool ArgoUML, susah payah memasang AndroMDA, dan mendownload macam-macam freeware untuk menggambar diagram.
Konsep MDA, Model Driven Architecture, membuat model UML yg kita buat menjadi beberapa kali lebih bernilai daripada sekedar sketsa dan dokumentasi. Ada dua kategori atau generasi tool untuk MDA,
Bagi mereka yang belum pernah berkutat di J2EE, ataupun berkutat di situ tapi tidak aware tentang Hibernate / Struts, mungkin penjelasan singkatnya sebagai berikut:
Ohloh ini merupakan situs yang cukup unik, ia membantu orang untuk menilai dan membandingkan project-project open source. Kita bisa lihat frekuensi aktivitas commit yg dilakukan tim pengembang, maupun perkiraan distribusi geografis dari pengguna maupun kontributor sebuah project open source.
Kembali ke MDA tadi, setelah melihat bahwa plugin AndroMDA sebagian besar berkutat di antara Spring-Hibernate-jBPM (yg mana saya rasa sedikit 'heavy'), saya mencari alternatif tool MDA yg open-source, dan ketemu dgn OpenMDX.
OpenMDX, mengklaim bahwa ia adalah tool MDA generasi kedua (atau kategori kedua, whatever). Di antara klaimnya ialah bahwa round trip time, waktu yg dibutuhkan dari saya mengubah model sampai aplikasinya sudah bisa ditest, adalah 1 menit. Angka ini tampaknya memang hanya bisa dicapai dengan teknologi yg lebih sophisticated dari code generation. Saya belum coba sih.. 69 MB downloadnya, dan sekarang proxy Telkom lagi lambat-lambatnya.
NB: gambar satu-satunya di blog ini saya dapat dari OpenMDX, tapi tampaknya tidak match dengan klaimnya (ada code-generation di sini). Tapi memang gambar itu didapat dari Quick Start untuk yg versi 1.x, dan sekarang sudah versi 2.0, dan tidak ada gambar yg bagus dari quick start versi 2.0..
Konsep MDA, Model Driven Architecture, membuat model UML yg kita buat menjadi beberapa kali lebih bernilai daripada sekedar sketsa dan dokumentasi. Ada dua kategori atau generasi tool untuk MDA,
- Tool yang melakukan transformasi dari model yang dibuat, dan kemudian menghasilkan source code dari hasil transformasi. Jargonnya sih, Transformasi PIM (Platform Independent Model) menjadi PSM (Platform Specific Model), dan code generation. AndroMDA termasuk kategori ini.
- Tool yang mentransformasi model menjadi runtime data, yang langsung bisa dieksekusi oleh runtime engine tertentu. OpenMDX termasuk kategori ini.
- hbm.xml mapping, yang bisa dikustomisasi (misalnya apakah untuk tipe Date ingin kita simpan sebagai oracle DATE atau oracle TIMESTAMP)
- kelas entitas,
- kelas-kelas Data Access Object beserta method load,loadAll, update, delete, dan removenya, (katanya bahkan kita bisa menspesifikasikan method yg melakukan query dengan OCL ataupun Hibernate-QL)
Bagi mereka yang belum pernah berkutat di J2EE, ataupun berkutat di situ tapi tidak aware tentang Hibernate / Struts, mungkin penjelasan singkatnya sebagai berikut:
- Hibernate adalah persistence framework yang membuat kita tidak pernah membuat query INSERT/DELETE/UPDATE/SELECT dengan tangan kita sendiri.. eh editor kita maksudnya
- Struts merupakan framework yang menangani flow halaman di aplikasi web, bagaimana sebuah form mendapatkan data, membagi tanggung jawab kelas-kelas menjadi Model-View-dan Controller
Ohloh ini merupakan situs yang cukup unik, ia membantu orang untuk menilai dan membandingkan project-project open source. Kita bisa lihat frekuensi aktivitas commit yg dilakukan tim pengembang, maupun perkiraan distribusi geografis dari pengguna maupun kontributor sebuah project open source.
Kembali ke MDA tadi, setelah melihat bahwa plugin AndroMDA sebagian besar berkutat di antara Spring-Hibernate-jBPM (yg mana saya rasa sedikit 'heavy'), saya mencari alternatif tool MDA yg open-source, dan ketemu dgn OpenMDX.
OpenMDX, mengklaim bahwa ia adalah tool MDA generasi kedua (atau kategori kedua, whatever). Di antara klaimnya ialah bahwa round trip time, waktu yg dibutuhkan dari saya mengubah model sampai aplikasinya sudah bisa ditest, adalah 1 menit. Angka ini tampaknya memang hanya bisa dicapai dengan teknologi yg lebih sophisticated dari code generation. Saya belum coba sih.. 69 MB downloadnya, dan sekarang proxy Telkom lagi lambat-lambatnya.
NB: gambar satu-satunya di blog ini saya dapat dari OpenMDX, tapi tampaknya tidak match dengan klaimnya (ada code-generation di sini). Tapi memang gambar itu didapat dari Quick Start untuk yg versi 1.x, dan sekarang sudah versi 2.0, dan tidak ada gambar yg bagus dari quick start versi 2.0..
Comments