• Tidak ada hasil yang ditemukan

Menemukan Kandidat Untuk Struktur

Dalam dokumen BAB II LANDASAN TEORI (Halaman 81-88)

10. Penentuan prioritas final

2.4 Sistem Informasi .1 Pengertian Sistem

2.4.10 Aktivitas utama dalam OOA&D

2.4.10.4 Event Table

2.4.10.5.4 Menemukan Kandidat Untuk Struktur

Memodelkan hubungan struktural sama seperti ketika melakukan pemilihan class dan event. Dimulai dari mengumpukan kandidat untuk hubungan struktural di antara model-model class. Di mana pengumpulan kandidat ini berdasarkan pada prinsip : mempelajari abstrak, hubungan statis antar class dan mempelajari konkrit, hubungan dinamis antar objek. Dalam mengumpulkan kandidat, didasarkan pada empat tipe struktur. (Mathiassen et al, 2000, p.77)

a. Identifikasi Agregasi

Untuk menentukan kandidat untuk struktur agregasi terdapat tiga macam pendekatan. Pertama, memeriksa setiap pasang class untuk melihat apakah mungkin objek dari suatu class merupakan bagian objek dari class yang lain. Kedua, menentukan apakah sesuai untuk mengagregasikan objek dari setiap pasang class ke dalam objek dari sebuah class yang baru saja dibuat.

Ketiga, menentukan apakah setiap class dapat dipecah menjadi beberapa class yang tidak terdapat dalam model yang sudah dibuat.

(Mathiassen et al, 2000, p.78)

Menurut Mathiassen et al.,(2000, p.79), dalam mendefinisikan hubungan dalam agregasi, terdapat terdapat tiga jenis aplikasi dari struktur agregasi.

• Whole-part, di mana keseluruhan merupakan penjumlahan dari bagian-bagian, ketika menambahkan atau mengurangi bagian apapun, dapat merubah keseluruhan secara mendasar.

• Container-content, di mana keseluruhan merupakan tempat penampungan dari bagian-bagian; ketika menambahkan atau mengurangi bagian apapun, properti dasar dari keseluruhan tidak berubah.

• Union member, di mana keseluruhan merupakan keteraturan dari kesatuan anggota. Kesatuan ini tidak dirubah secara fundamental baik dengan menambahkan atau mengurangi beberapa anggota.

b. Identifikasi Generalisasi

Untuk menghasilkan kandidat untuk struktur generalisasi terdapat tiga macam pendekatan. Pertama, memilih dari semua class yang berpasangan dan tentukan apakah satu dari dua class tersebut merupakan generalisasi dari yang lainnya. Kedua, tentukan apakah ada class generalisasi yang dapat terbentuk dari sepasang class yang dipilih. Ketiga, mengambil setiap class yang dipilih, mencoba untuk mendefinisikan sebuah generalisasi atau spesialisasi yang sesuai. (Mathiassen et al, 2000, p.78)

c. Identifikasi Asosiasi

Untuk menghasilkan struktur asosiasi, perlu diperhatikan sisa dari class yang berpasangan untuk melihat apakah class-class tersebut dapat saling terhubung dengan sebuah arti. Sebuah asosiasi perlu untuk dideskripsikan kapanpun harus melakukan kegiatan administrasi, mengawasi, dan mengendalikan hubungan antar objek yang dengan kata lain tidak berhubungan dengan model. (Mathiassen et al, 2000, p.79)

2.4.10.6 Behavior

Untuk aktivitas behavior, pengembangan definisi class di dalam classdiagram diperlukan untuk menambahkan deskripsi mengenai behavioral pattern dan atribut dari setiap class. Hasil dari aktivitas behavior ini deiekspresikan dalam gambar dalam sebuah state chart diagram yang dapat dilihat pada gambar 2.15. (Mathiassen et al, 2000, p.89)

a. Behavioral Pattern dan Atribut

Sebuah objek adalah antitas dengan identitas, state dan behavior. Di dalam aktivitas class dapat dilihat behavior sederhana sebagai suatu kumpulan event yang tidak teratur yang melibatkan sebuah objek. Di dalam aktivitas behavior, pendeskripsian behavior menjadi lebih akurat dengan menambahkan waktu relatif dari suatu event. Sebuah behavior dari objek didefinisikan oleh sebuah event trace yang menunjukan event dalam suatu urutan dari waktu ke waktu.

(Mathiassen et al, 2000, p.90)

Event trace ini memilki arti yakni sebuah urutan event yang melibatkan objek tertentu. Sebuah event trace adalah unik untuk sebuah objek tertentu. Ini adalah sebua urutan event secara tepat yang melibatkan objek dalam interval waktu tertentu. Sebagai contoh, objek dari class “customer” memiliki event trace berikut sepanjang masa hidup objek ini. Fokus di dalam object-oriented pada analisis problem domain adalah pada objeknya, tapi untuk alasan tertentu, mendeskripsikan sekelompok objek dengan definisi class umum. Oleh sebab itu, perulangan untuk mendeskripsikan behavior dari setiap objek

yang ada di dalam problemdomain dilakukan. Sebagai gantinya, behavioral pattern untuk objek class dapat diartikan sebagai sebuah deskripsi atas event trace yang mungkin untuk semua objek di dalam class. (Mathiassen et al, 2000, p.90)

Behavioral pattern mendeskripsikan behavior umum untuk semua objek dari class. Untuk menghasilkan pattern, digunakan contoh dari event traces untuk objek individu di dalam class berdasarkan pada prinsip : membuat behavioral pattern dari event trace. Event trace dan behavioral pattern sama-sama berhubungan dengan sebuah objek atau class. Untuk melangkah dari objek individu ke arah problem domain dinamis, dilakukan penekanan pada kolaborasi objek dan deskripsi event umum untuk dua atau lebih objek. Hal ini ditunjukkan pada prinsip : mempelajari event umum. Event umum dapat digunakan untuk mendeskripsikan interaksi antar class, karena semua event dinamakan secara umum disepanjang problem domain. Ketika memodelkan problem domain, dapat diformulasikan kebutuhan untuk data yang akan disimpan pleh sistem, dan oleh karena itu menjadikan data dapat diakses melalui fungsi dan interface. Untuk menspesifikasikan data digunakan atribut yang berarti adalah properti deskriptif untuk sebuah class atau event. Aktivitas behavior termasuk di dalamnya empat buah sub-aktivitas, seperti digambarkan pada gambar 2.15. Di mana dimulai dari event table dan class diagram, untuk memulai mendeskripsikan behavioral pattern dari setiap class dalam class diagram menggunakan

event yang berhubungan sebagai pondasi awal. (Mathiassen et al, 2000, p.92)

Gambar 2.15. Sub-Aktivitas dalam Pemodelan Behavior Object

Sumber : Mathiassen et al, 2000, p.92

b. Notasi untuk Behavioral Pattern

Sebuah behavioral pattern menggunakan event tunggal yang digunakan untuk pengendalian struktur dasar dari struktur pemrograman, yakni:

Sequence: event dalam kelompok yang terjadi satu demi satu

Selection: tepat satu dari sekelompok event yang terjadi

Iteration: suatu event terjadi nol sampai beberapa kali

Behavioral pattern adalah deskripsi yang menangkap karakter dinamis dari problem domain tanpa menspesifikasikan mengapa dan bagaimana suatu behavior tertentu dapat terjadi. (Mathiassen et al, 2000, p.93)

Sebuah behavioral pattern dengan sequence, selection dan iteration dapat dideskripsikan menjadi yang paling komprehensif dibandingkan ekspresi biasanya. Menggunakan simbol “+” yang mewakili sequence, simbol “l” yang mewakili selection dan simbol “*”

yang mewakili iteration, behavior dari customer dapat dideskripsikan menjadi account opened + (amount depositedl amount withdrawn)* + account closed. (Mathiassen et al, 2000, p.93)

Behavioral pattern juga dapat dideskripsikan berupa gambar dengan menggunakan statechart diagram. Notasi klasik ini pada umumnya digunakan untuk mendeskripsikan adanya kedinamisan yang melibatkan sejumlah state dan sejumlah transisi. Seperti pada gambar 2.15, tiga buah struktur pengendalian klasik yang digunakan dalam ekspresi biasa dapat juga digunakan untuk diekspresikan dalam statechart diagram. (Mathiassen et al, 2000, p.94)

Sequence diekspresikan dengan menggunakan event yang menjalani melalui beberapa state, di mana setiap state hanya memiliki satu buah event. Event tersebut harus terjadi agar urutannya dapat dijelaskan oleh anak panah. Selection diekspresikan dengan membuat semua kemungkinan event keluar dari state yang sama. Iteration diekpresikan dengan membuat event kembali ke state awalnya.

(Mathiassen et al, 2000, p.94)

Dalam dokumen BAB II LANDASAN TEORI (Halaman 81-88)

Dokumen terkait