Object Modeling Technique

(Dynamic Modeling)

M. Saad Nurul Ishlah, M.Comp.

Dept. Ilmu Komputer FMIPA Univ. Pakuan

Review

Object Modeling Technique

( James Rumbaugh, 1991 )

Tujuan

  • Menguji entitas sebelum dibangun (simulasi),
  • Komunikasi dengan Pengguna,
  • Visualisasi,
  • Mengurangi kompleksitas

Fase

  • Analisis
    • Perumusan Masalah
    • Pemodelan Obyek
    • Pemodelan Dinamis
    • Pemodelan Fungsional
    • Validasi, Ulangi, Perbaiki ketiga model
  • Perancangan Sistem
  • Perancangan Obyek
  • Implementasi

Analisis

  • Object model (Aspek statis pada sistem)

    • Mendeskripsikan obyek pada sistem dan keterhubungannya

    • Output: Class, Object, &/or Instance diagram

  • Dynamic model (Aspek dinamis pada sistem)

    • Menggambarkan perubahan states pada obyek terhadap event tertentu

    • Output: State diagram

  • Functional model

    • Menggambarkan transformasi data yang terjadi pada sistem

    • Output: Data Flow Diagram

Pemodelan Obyek (Objek modeling)

  • Direpresentasikan dalam Object diagram, Class diagram
  • Links/Association (Unary, Binary, Ternary, n-ary)
  • Multiplicity (0..1, 1..1, 0..*, 1..*)
  • Inheritance (generalization, specialization)
  • Aggregation (part of, has a)

Notasi

Class name

Attributes

Operations

Associations

Associations

0..1

0..*

Inheritance

Aggregation

Class

Class

Class

Class

Class

Ternary

Class

= 1..1

= 0..*

= 1..*

Dynamic Modeling

(Pemodelan dinamis)

Apa itu pemodelan dinamis?

  • Pemodelan untuk menggambarkan perubahan states pada obyek terhadap event tertentu pada waktu tertentu.
  • Menggambarkan
    • states : abstraksi dari atribut dan link dari obyek pada waktu tertentu
    • transitions : hubungan antarstate
    • events : stimulus luar yang mempengaruhi obyek pada satuan waktu
    • actions: proses komputasi yang terjadi sebagai akibat langsung dari events
  • Output: scenarios, event-trace diagrams, dan state diagrams.

Kenapa pemodelan dinamis?

  • Setiap obyek memperlihatkan karakteristik dan perilaku tertentu yang berubah seiring waktu
  • Setiap obyek mengenali dan merespon events tertentu

Contoh:

 

Langkah Pemodelan

  1. Siapkan scenarios untuk beberapa urutan interaksi.
  2. Kenali events antarobyek dan siapkan event trace untuk setiap scenario.
  3. Siapkan event flow diagram dari sistem.
  4. Buat state diagram untuk setiap class yang mempunyai perilaku dinamis yang penting.
  5. Lakukan pengecekan untuk consistency and completeness (konsistensi dan kelengkapan) dari events yang tersebar di dalam state diagrams.

Scenario

  • Sebuah scenario merupakan urutan dari beberapa event yang terjadi selama satu eksekusi pada sistem
  • Setiap pengeksekusian dari sistem seyogyanya direpresentasikan oleh sebuah scenario
  • Sekup scenario bisa bervariasi. Bisa jadi semua events dalam sistem atau hanya beberapa event yang dihasilkan oleh obyek tertentu.

Scenario

Contoh:

sebuah scenario penggunaan ATM untuk mengambil uang

Scenario

Kekurangan:

  • Tidak menggambarkan dengan jelas berapa obyek yang terlibat dan obyek mana yang menstimulus events maupun yang menerima events

Event-trace diagram

  • garis vertikal: menunjukkan obyek,
  • tanda panah horizontal: event dari obyek mengirim ke obyek penerima,
  • Waktu bertambah dari atas ke bawah,
  • ruang kosong antara tanda panah horizontal tidak memiliki informasi apa-apa.

Event-trace

diagram

Contoh:

  • Obyek:
    • User, ATM, Consortium, Bank
  • User generates "insert card" event

Event Flow diagram

(Sequence Diagram)

State Diagram

  • State:
    • kondisi dari sebuah objek selama masa hidupnya (dalam sistem) yang memenuhi beberapa kondisi,
    • dapat melakukan aktifitas, atau menunggu event lain,
    • kondisi antara dua events (interval) yang diterima sebuah obyek, menggambarkan nilai pada waktu itu.

State Diagram

  • Event:
    • spesifikasi dari kejadian yang signifikan
    • kejadian yang dapat menstimulasi perubahan (transisi) state,
    • sesuatu yang terjadi pada satuan waktu tertentu.
  • Contoh:
    • mengklik tetikus (mouse)

State Diagram

  • Activity:
    • sebuah operasi yang membutuhkan waktu untuk menyelesaikannya
    • termasuk operasi yang kontinyu maupun sekuensial
    • sebuah state dapat mengotrol aktivitas yang kontinyu
  • Contoh:
    • Menayangkan gambar pada televisi
    • melakukan komputasi tertentu selama waktu tertentu

State Diagram

  • State diagrams:
    • digunakan untuk mendeskripsikan perilaku dari sebuah sistem
    • mendeskripsikan semua kemungkinan state dari sebuah obyek ketika events terjadi
    • State diagram menspesifikasikan urutan state yang disebabkan urutan event

Kapan digunakan?

  • Gunakan untuk mendeskripsikan perilaku dari sebuah obyek melalui beberapa contoh kasus dari sistem,
  • Hanya gunakan state diagram untuk kelas-kelas yang obyeknya perlu dipahami pada sistem
  • Tidak semua kelas memerlukan state diagram dan state diagram tidak berguna untuk mendeskripsikan kolaborasi dari obyek-obyek
  • State diagrams dikombinasikan dengan diagram lain seperti interaction diagram dan activity diagram.

Notasi

  • state dinotasikan sebagai sebuah node
  • transisi disimbolkan oleh tanda panah yang berisi nama event

Initial state

Final state

Notasi

Contoh

References

  • http://www.ddegjust.ac.in/studymaterial/mca-5/mca-503.pdf
  • http://www.idi.ntnu.no/grupper/su/publ/html/totland/ch0527.htm

Terima kasih

PBO-3 - Object Modelling Technique - Object modeling & functional modeling

By M. Saad Nurul Ishlah

PBO-3 - Object Modelling Technique - Object modeling & functional modeling

Continue a discussion in modelling object technique (dinamyc & functional).

  • 1,460