Feeds:
Posts
Comments

Archive for January 23rd, 2007

 

Selama satu pekan yang lalu saya dan beberapa rekan mengikuti training UML dengan menggunakan Rational Rose. Sebenarnya saya sendiri sudah pernah mendapatkan materi UML dengan Rational Rose semasa kuliah dulu, namun karena ini merupakan paket training untuk satu tim pengembang sistem yang akan kita buat, maka saya juga diikutsertakan.  Belajar lagi UML”, begitulah kira-kira apa yang saya lakukan kemarin itu. Belajar memang tidak mengenal batas, kita dituntut untuk belajar sepanjang hayat, walaupun sesuatu itu pernah kita pelajari, paling tidak kita bisa lebih memperdalam pemahaman dan kemampuan kita terhadap suatu hal tersebut.

UML (Unified Modeling Language) merupakan sebuah bahasa standar yang memodelkan sebuah sistem. Tujuan dari pemodelan sistem ini adalah memodelkan proses bisnis yang terjadi pada rancangan sistem yang dibuat dan mendokumentasikan sistem perangkat lunak yang akan dibuat, sehingga akan memudahkan dalam mengembangkan sebuah rancangan sistem. Dengan menggunakan UML kita dapat membuat model berbagai jenis aplikasi, yang nantinya dapat berjalan pada perangkat keras, sistem operasi, dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun.

Notasi UML diturunkan dari tiga notasi yang telah ada sebelumnya : Grady Booch OOD (Oject-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivan Jacobson OOSE (Object Oriented Software Engineering).

Sebelum munculnya UML, masing-masing metodologi pemodelan berorientasi objek membawa notasi sendiri-sendiri, sehingga menimbulkan masalah ketika digunakan dalam bekerja sama dengan group lain yang menggunakan metodologi yang berbeda. Hingga akhirnya Booch, Rumbaugh, dan Jacobson  yang merupakan tiga tokoh yang metodologinya paling banyak digunakan, mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek. Pada tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG) . Selanjutnya UML menjadi standar bahasa pemodelan untuk aplikasi berorientasi objek.

Adapun Rational Rose merupakan tool yang digunakan untuk mendesain perangkat lunak melalui pendekatan UML. Rational Rose menyediakan beberapa fungsi dalam membuat sebuah aplikasi perangkat lunak, mulai dari desain proses, membuat use case diagram, class diagram, activity diagram, sequence diagram, component diagram, deployment diagram, sampai pada generate code dan reverse engineering. Hal ini akan memudahkan perancang dan pengembang sistem dalam merancang dan mengembangkan sistemnya, karena selain terdokumentasi dengan baik, disamping itu juga dapat menghasilkan kerangka code yang siap dikembangkan secara lebih detail nantinya.

Berikut ini merupakan tips pengembangan piranti lunak dengan menggunakan UML:

  1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
  2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.
  3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
  4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem.
  5. Berdasarkan use case diagram , mulailah membuat activity diagram .
  6. Definisikan objek-objek level atas ( package atau domain ) dan buatlah sequence dan/atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir.
  7. Buarlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case .
  8. Berdasarkan model-model yang sudah ada, buatlah class diagram . Setiap package atau domain d ipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
  9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokan class menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga, definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik.
  10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node.
  11. Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan :
    • Pendekatan use case , dengan meng- assign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit code yang lengkap dengan tes.
    • Pendekatan komponen, yaitu meng- assign setiap komponen kepada tim pengembang tertentu.

12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta code nya. Model harus selalu sesuai dengan code yang aktual.

13. Piranti lunak siap dirilis.

 

Read Full Post »