Selasa, 25 Juni 2013

Pengenalan UML (Unified Modeling Languange)

uml
Pertama-tama yang perlu diketahui untuk belajar UML adalah pertanyaan apa kepanjangan UML? Jangan tertawa dahulu. Soalnya banyak yang mengartikan UML sebagai Universal Modeling Language … (jangan-jangan diartikan Ungu Modeling Language!!). Baik, jawabannya UML singkatan dari Unified Modeling Language (logonya dapat dilihat di pojok kiri atas situs ini). Lalu siapa penemunya? Hingga saat ini, dari browsing di internet hingga studi literatur tidak ada yang ngaku-ngaku sebagai penemu atau pencetus UML. Karena pemodelan terhadap object programming sudah ada sejak dahulu, tapi tiap pengembang memiliki model masing-masing sehingga membingungkan orang yang baru belajar walaupun mahasiswa-mahasiswa kita terkenal cerdas. Oleh karena itu tiga orang yang sering dijuluki “three amigos” yakni Ivar Jacobson, Grady Booch dan Rumbaugh yang gambarnya terpampang di pojok kiri atas blog ini berusaha untuk menyeragamkan notasi yang saat itu berjumlah lebih dari 50 jenis. Namun demikian ketiga orang itu dibantu oleh suatu konsorsium bernama OMG (Object Management Group) yang terdiri dari pengembang, industri perangkat lunak, kampus dan pihak-pihak yang berkecimpung dalam dunia software engineering. Berbeda dengan DFD, ERD, Normalisasi dan model-model yang biasa dikenal oleh siswa yang belajar analisa dan disain sistem informasi, UML berusaha membuat suatu model yang bisa dipakai dalam segala jenis programming. Pernah gak membuat DFD untuk game packman atau game moto-gp? Pasti bingung khan? Atau jika sistem core-banking dibuatkan DFD-nya, kira-kira berapa lembar kertas yang dibutuhkan? Walaupun dari namanya unified, tidak berarti UML hanya terdiri dari satu model. O-iya, sebelumnya jangan samakan model dengan diagram ya ..
Diagram beda dengan model karena model tidak hanya berupa gambar/diagram, termasuk di dalamnya narasi (jalan cerita diagramnya). Model dalam UML terdiri dari diagram-diagram antara lain: use case, class, object, packet, component, activity, statechart, deployment dan interraction. Interraction diagram terdiri dari sequence, communication, timing dan global overview interraction. Pasti ada yang protes, kok di buku ini 9 diagram, di buku itu 13 diagram. Baik, UML itu seperti software, sudah masuk versi 2.0 atau lebih. Beberapa literatur mengatakan diagram UML ada sembilan (biasanya dipakai di kampus sebagai materi kuliah). Nah yang menyebutkan diagram UML ada 9 berarti yang dimaksud adalah UML 1.4. Sedangkan literatur-literatur yang membahas UML 2.0 hampir semuanya menyebutkan diagram UML ada delapan (use case, class, package, component, activity, statechart, deployment dan interraction).
Lalu dimana diagram sequence yang terkenal? Ternyata diagram sequence bersama dengan diagram timing, communication dan overview masuk dalam kategori diagram interraction. Kemudian dimana diagram collaboration? Nah ini masalahnya. Dalam UML 2.0 diagram collaboration diganti namanya dengan diagram communication, tapi collaboration tetap dipakai tapi tanpa menyebutkan kata diagram, jadi “collaboration” saja.
Sebenarnya UML itu bahasa pemrograman atau hanya pemodelan? Berbeda dengan jenis pemodelan pada pemrograman terstruktur (o iya berarti harus tahu terlebih dahulu dong jenis-jenis bahasa pemrograman, ok nanti dibahas) UML sesuai dengan singkatannya merupakan language/bahasa pemrograman. Nanti kita akan bahas dengan software rational rose enterprise 2003. Dan ternyata model yang dibuat dalam diagram-diagram UML dapat dikonversi menjadi source code oleh software rational rose dalam bahasa java, c++, vb6 dan oracle.

UML menyediakan 10 macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:
  1. Use Case Diagram untuk memodelkan proses bisnis.
  2. Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi.
  3. Sequence Diagram untuk memodelkan pengiriman pesan (message) antar objects.
  4. Collaboration Diagram untuk memodelkan interaksi antar objects.
  5. State Diagram untuk memodelkan perilaku objects di dalam sistem.
  6. Activity Diagram untuk memodelkan perilaku Use Cases dan objects di dalam system.
  7. Class Diagram untuk memodelkan struktur kelas.
  8. Object Diagram untuk memodelkan struktur object.
  9. Component Diagram untuk memodelkan komponen object.
  10. Deployment Diagram untuk memodelkan distribusi aplikasi.

Tidak ada komentar:

Posting Komentar