Senin, 26 Januari 2009

Unified Modeling Language (UML)

Nama : Ahmad Juwaeni
Nim : 0611356213
Mata Kuliah : Perancangan Sistem Informasi
Kode Kelas : SI111G

Jurusan : Manajemen Informatika
Dosen : Henderi, M.Kom.


1. Sejarah UML
Pada Oktober 1994, Dr. James Rumbaugh bergabung dengan perusahaan Rational Software, dimana Grady Booch sudah bekerja disana sebelumnya. Grady Booch mengembangkan Object Oriented Design (OOD) dan Dr. James Rumbaugh mengembangkan Object Modeling Technique (OMT). Duet mereka pada bulan Oktober 1995 menghasilkan Unified Method versi 0.8Musim gugur 1995 Dr. Ivar Jacobson ikut pula bergabung dengan duet Rumbaugh-Booch, dengan memperkenalkan tool use case. Trio tersebut pada bulan Juni 1996 menghasilkan Unified Modeling Language (UML) versi 0.9. Sebelumnya Dr. Ivar Jacobson mengembangkan Object Oriented Software Engineering (OOSE).
Pada konsorsium di bulan Januari 1997 lahirlah UML versi 1.0, pada bulan September 1997 lahirlah UML versi 1.1 dengan 8 buah diagram
yaitu:
1. Use Case Diagram
2. Activity Diagram
3. Sequence Diagram

4. Collaboration Diagram
5. Class Diagram
6. Statechart Diagram
7. Component Diagram
8. Deployment Diagram
Pada bulan Nopember 1997 sebuah organis
asi non profit standarisasi Object Management Group (OMG) mengakui UML sebagai sebuah bahasa pemodelan standar untuk aplikasi object oriented.

2. Definisi UML
Unified Modeling Language (UML) adalah sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.


3. Diagram Dasar UML

a. Model Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah "apa" yang diperbuat sistem, dan bukan "bagaimana". Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem.

Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerajaan tertentu.

Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal.

Sebuah use case juga dapat meng-extend use case lain dengan behavior-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.
contoh use case diagram:

b. Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode/fungsi).
Elemen-elemen class diagram dalam pemodelan UML terdiri dari: Class-class, struktur class, sifat class (class behavior), perkumpulan/gabungan (association), pengumpulan (agregation), ketergantungan (depedency), relasi-relasi turunannya, keberagaman dan indikator navigasi, dan role name (peranan/tugas nama).
Hubungan antar class:

  1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
  2. Agregasi, yaitu hubungan yang menyatakan bagian ("terdiri dari")
  3. Relasi Turunan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metode class asalnya dan menambahkan fungsionalitas baru, sehingga dia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
  4. Hubungan dinamis, yaitu rangkaian pesan (massage) yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagram.
contoh class diagram:


c. Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
Activity diagram dapat dibagi menjadi beberapa object swimlane (partisi) untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
contoh activity diagram tanpa swimlane:

d. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa massage yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).

Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa saja yang dihasilkan.

Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.
Massage digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, massage akan dipetakan menjadi operasi/metoda dari class.
Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah massage.
Contoh sequence diagram:

Tool Yang Mendukung UML
Saat ini banyak sekali tool pendesainan yang mendukung UML, baik itu tool komersial maupun opensource. Beberapa diantaranya adalah:

Referensi
Sebagai referensi dalam mempelajari dan menggunakan UML, situs-situs yang merupakan menjadi bahan tulisan ini yaitu:
dan juga buku-buku tentang UML lainnya

Tidak ada komentar: