PEMODELAN SYSTEM BERORIENTASI OBYEK (UML)
DEFINISI UML UML (Unified Modeling Language) adalah sebuah bahasa untuk menentukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya.
(Object Management Group) SEJARAH UML Rumbaugh Booch Jacobson Odell Shlaer and Mellor Gamma Meyer OMG (Object Management Group)
SEJARAH UML (2) Sampai era tahun 1990, puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia. Diantaranya adalah: metodologi booch, metodologi coad, metodologi OOSE, metodologi OMT, metodologi shlaer-mellor, metodologi wirfs-brock, dsb. Masa itu terkenal dengan masa perang metodologi (method war) dalam pendesainan berorientasi objek. Masing masing metodologi membawa notasi sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama dengan group/perusahaan lain yang menggunakan metodologi yang berlainan.
SEJARAH UML (3) Dimulai pada bulan Oktober 1994 Booch, Rumbaugh dan Jacobson, yang merupakan tiga tokoh yang metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek. Pada tahun 1995 direlease draft pertama dari UML (versi 0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group. Tahun 1997 UML versi 1.1 muncul, dan saat ini versi terbaru adalah versi 1.5 yang dirilis bulan Maret 2003. Booch, Rumbaugh dan Jacobson menyusun tiga buku serial tentang UML pada tahun 1999. Sejak saat itulah UML telah menjelma menjadi standar bahasa pemodelan untuk aplikasi berorientasi objek
RAGAM DIAGRAM UML Use Case Diagram untuk memodelkan proses bisnis. Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi. Sequence Diagram untuk memodelkan pengiriman pesan (message) antar objects. Collaboration Diagram untuk memodelkan interaksi antar objects. State Diagram untuk memodelkan perilaku objects di dalam sistem. Activity Diagram untuk memodelkan perilaku Use Cases dan objects di dalam system. Class Diagram untuk memodelkan struktur kelas. Object Diagram untuk memodelkan struktur object. Component Diagram untuk memodelkan komponen object. Deployment Diagram untuk memodelkan distribusi aplikasi.
LANGKAH-LANGKAH PEMBUATAN MODEL UML Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul. 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. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem. Berdasarkan use case diagram, mulailah membuat activity diagram. 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.
Buarlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah 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. 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. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement perangkat lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node. 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. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai dengan code yang aktual. Perangkat lunak siap dirilis.
Contoh diagram UML restoran
TUGAS Buatlah diagram UML restoran dengan keterangan berikut: Customer datang untuk memesan tempat, Start. Mengidentifikasi customer jika sudah terdaftar, tapi jika belum masuk ke pilihan daftar customer. Mencari permohonan pemesanan tempat. Mengecek tempat yang tersedia. Jika ada tempat yang kosong maka OK, tapi jika tidak ada maka reservasi batal. Mereservasi ke Buku Reservasi. Mengkonfirmasi ke Customer. Proses selesai, Finish.