Thursday, October 25, 2018

Communicational Cohesion

Apa itu Communicational Cohesion (Kohesi Komunikasi)?

    Sebuah modul dikatakan memiliki kohesi komunikasi, jika semua fungsi modul mengacu pada atau memperbarui struktur data yang sama.
      Elemen berkontribusi pada aktivitas yang menggunakan input atau output data yang sama.
Tidak fleksibel, misalnya, jika kita perlu fokus pada beberapa kegiatan dan tidak yang lain. Kemungkinan tautan yang menyebabkan aktivitas saling memengaruhi, lebih baik dibagi menjadi yang fungsional kohesif.
       Jenis hasil kohesi dari mempertimbangkan semua hal yang dapat dilakukan dengan data tertentu dan menugaskan semua kegiatan ini satu prosedur. Dengan kata lain, beberapa fungsi digabungkan menjadi satu prosedur. Setiap fungsi dalam proses melakukan sesuatu yang berbeda dengan data.

CONTOH KASUS 1:

STRUKTUR DATA: FILE TRANSAKSI

FUNGSI PROSEDUR:
1. Baca transaksi ke dalam array.
2. Urutkan transaksi
3. Temukan rata-rata transaksi.
4. Cetak transaksi ke kertas.
5. Tulis transaksi ke CD-Writer

CONTOH KASUS 2:

1. Set fungsi yang didefinisikan pada array atau stack.
2. Modul menentukan detail pelanggan seperti menggunakan akun pelanggan untuk menemukan dan mengembalikan nama pelanggan dan saldo pinjaman.






Monday, October 22, 2018

Kohesi Logical (Logical Cohesion)


Apa itu Kohesi?


Kohesi yaitu keterikatan fungsi-fungsi di dalam suatu modul. Maksudnya adalah modul yang dibuat memiliki fungsi-fungsi yang serupa untuk satu tanggung jawab. Karena itu high cohesion sangat penting dalam perancangan software.
Modul kohesi melakukan suatu tugas tunggal pada suatu prosedur perangkat lunak yang memerlukan sedikit interaksi dengan prosedur yang sedang dilakukan di bagian lain dari suatu program. Lebih ringkasnya modul kohesi seharusnya hanya melakukan satu hal tugas saja.

Kohesi Logical

Kohesi Logical yaitu Kohesi yang merupakan elemen-elemen yang melakukan kegiatan dengan kategori yang sama. Parameter yang di masukkan menentukan kegiatan yang dilaksanakan. Tidak semua kegiatan akan dikerjakan.


Contoh 1 :

Read_all_files(file_code)
CASE if file_code
1 : read customer_transaction record
IF not EOF THEN
increment cust_trans_count
2 : read customer_master record
IF not EOF THEN increment
cust_master_count
3 : read product_master record
IF not EOF THEN
increment product_master_count
ENDIF
ENDCASE
END

Contoh 2 :

Input, penanganan kesalahan (error handing) diletakkan secara bersama dalam komponen tunggal.
Modul yang menghasilkan semua output  tanpa melihat tipenya. Sebuah modul yang berisi semua kegiatan print.