Monday, November 10, 2008

Software Modeling Tools yang saya gunakan

Hampir 2 tahun berjalan semenjak saya dan teman mulai serius berkutat dalam software development. Sejauh ini kami berupaya menerapkan praktik-praktik software engineering yang telah kami pelajari (meski dalam penerapannya kami sesuaikan untuk setiap kasus yang dijumpai). Mumpung ada semangat untuk menulis =p kali ini saya akan berbagi informasi seputar modeling tools yang kami gunakan, baik saat pengembangan produk maupun saat mengerjakan proyek. Sampai dengan saat ini saya mengkategorikan kakas pemodelan yang saya gunakan ke dalam 2 kategori yaitu:
  • Software Architecting
  • Business Process Modeling

Untuk Software Architecting saya memakai StarUML (staruml.sourceforge.net) dan melakukan pemodelan menggunakan notasi UML. Metode yg saya gunakan dalam software development adalah Object Oriented Software Engineering (OOSE) jadi saya banyak memodelkan entity object, interface object, dan controller object. Dan syukurlah StarUML mendukung semua notasi utk objek-objek tersebut :)

Penggunaan StarUML secara intensif sebenarnya baru saya mulai sekitar 3 bulan lalu (meski sudah saya install sejak setahun yg lalu =p) sebagai pengganti Rational Rose. StarUML merupakan open source software dengan lisensi GPL (GNU Public License), mendukung spesifikasi UML versi 2.0 (StarUML™ maximizes itself to order UML 1.4 standard and meaning, and it accepts UML 2.0 notation on the basis of robust meta model), dan mendukung MDA (Truly Platform Independent Models (PIM) can be created, and Platform Specific Model (PSM) and executable codes can be automatically generated in any way). Untuk kebutuhan pemodelan static dan behavioral dengan menggunakan 9 jenis diagram UML, StarUML saya anggap sudah memadai. Untuk fitur MDA saya tidak tahu bagaimana dukungannya sebab saya belum menerapkan MDA dlm kegiatan software development.

Dibandingkan free-software lainnya seperti AgroUML, saya lebih memilih StarUML karena StarUML merupakan native-application jadi lebih cepat dieksekusi, dan saya pantau penggunaan memorinya (RAM) juga tidak besar. AgroUML saya nilai lebih lambat dan berat (penggunaan RAM tergolong besar), maklum karena dibangun menggunakan Java dan hal ini cukup mengganggu kenyamanan memrogram saya karena biasanya saya menjalankan minimal 3 buah program secara bersamaan. Area kerja (drawing area) AgroUML juga lebih sempit, kecuali mau menggunakan layar monitor yg besar :(

Netbeans juga menyediakan plug-in untuk menggambar diagram UML tetapi meski saya menggunakan Netbeans sebagai IDE utama, saya tidak memilih menggunakan plug-in tersebut karena (lagi-lagi) konsumsi RAM yang cukup besar (umumnya saat memrogram saya melihat konsumsi RAM oleh Netbeans 6.5 RC2 sebesar ~300MB). Selain itu terkadang saya hanya perlu melakukan modeling UML tanpa memrogram. Jadi seandainya kegiatan tersebut saya lakukan di Netbeans, maka untuk memulainya saja sudah harus menunggu loading time yang cukup lama.

Ke depannya saya dan teman berencana membeli Sparx Enterprise Architect untuk menggantikan StarUML. Saya sudah mencoba test-drive Enterprise Architect (EA) dan saya nilai lebih bagus dari StarUML dalam hal kelengkapan dokumentasi dan tampilan. Untuk soal code-generation, saya dapati hasil Rational Rose masih lebih tepat ketimbang StarUML maupun EA.

Untuk Business Process Modeling saya menggunakan BizAgi BPMN Process Modeler yang mendukung pemodelan menggunakan notasi BPMN (Business Process Modeling Notation). Tampilan BizAgi sangat intuitif, warna-warni diagram-nya menarik, dan simple. BizAgi juga merupakan free software (no need to buy). Sejauh ini saya belum menggunakan BizAgi secara intensif dan hanya untuk pemodelan yg tergolong simple. Sebelum menggunakan BizAgi saya menggunakan Visio dan Borland Together Architect.

Oh ya, baik StarUML maupun BizAgi hanya tersedia untuk platform Win32 (setidaknya hingga artikel ini dimuat). Untuk platform *nix, saya belum melakukan eksplorasi ^_^

3 comments:

Gustavo Ignacio Gomez said...

if you want to be able to turn your BPMN processes into running applications, we just released BizAgi Xpress BPM Suite. So go on, visit our web site at www.bizagi.com, download it (no questions asked) and experience the power and simplicity of BizAgi Xpress; it provides enterprise class functionality at very low cost!

Anonymous said...

Bro,irfin,mau tanya, bizagi bisa support ke bahasa indonesia gak??

Irfin Afifudin said...

Hi,
Maksudnya support bgm ya? Klo tampilan UI (user interface) nya sih tidak/belum ada bahasa Indonesia. Tapi klo yg dimaksud hasil pemodelan dlm bahasa Inggris di translasikan ke bahasa Indonesia, juga tidak bisa.

Cartoon by Scott Simmerman