Metode-Perancangan-Program-Pertemuan-9 (3).ppt
-
Upload
tri-ismardiko-widyawan -
Category
Documents
-
view
350 -
download
11
Transcript of Metode-Perancangan-Program-Pertemuan-9 (3).ppt
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
1/39
Materi 9Komunikasi Antar Modul,Kohesi dan Kopling
Disusun Oleh : Yulyani Arifin,S.Kom, MMSI
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
2/39
AgendaKomunikasi Antar ModulModul Kohesi
Modul Kopling
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
3/39
Mahasiswa mampu memahami komunikasiantar modul.
Mahasiswa mampu menyelesaikan masalahdenan penunaan parameter antar modul
Mahasiswa mampu menukur kekuataninternal modul denan kohesi
Mahasiswa mampu menukur tinkatpertukaran informasi antar modul
Kemampuan Akhir yang Diharapkan
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
4/39
MATERI BELAJAR
Komunikasi Antar Modul
!erlu mempertim"ankan arus
informasi antar modulArus informasi # intermodule$ommuni$ation% dapat dipenuhi
denan $akupan &aria"el # lokal,lo"al data,passing parameter%
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
5/39
MATERI BELAJAR
Komunikasi Antar Modul
'akupan &aria"el :"aian dalam se"uah proramtempat &aria"el didefinisikan dan dapatdireferensikan.
(.)lo"al data
* diunakan : semua modul dlm (proram
* +ankauan : semua proram
* ifetime : selama eksekusi proram
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
6/39
MATERI BELAJAR
Komunikasi Antar Modul-. Data lokal
* diunakan : di su" modul
* +ankauan : su" modul tertentu*ifetime : selama eksekusi su" modul*Menurani side effe$t # penunaan
data lo"al dalam se"uah modul%
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
7/39
MATERI BELAJAR
Komunikasi Antar Modul. !assin !arameter
* !arameter : data item yan ditransfer
dari modul yan dipanil ke modulyan memanil.* Syarat :
* 'allin Module menyediakannama untuk parameter yan dikirim
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
8/39
MATERI BELAJAR
Komunikasi Antar Modul* Su" Module harus dapat menerima
parameter dan menem"alikannya /ika
di"utuhkan. * 'ontoh :
'allin Module :
!rint0pae0headin #pae$ount, line$ount% Su"Module :
!rint0pae0headin# paenum"er,linenum"er%
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
9/39
MATERI BELAJAR
Komunikasi Antar Modul!arameter 1ormal dan Aktual
!arameter 1ormal : !arameter yan ada
ketika su"modul yan ditentukan.
!arameter Aktual : 2aria"el atau ekspresi
yan dikirimkan pada se"uah su" modulyan dipanil.
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
10/39
MATERI BELAJAR
Komunikasi Antar Modul
'ontoh parameter aktual:Mainline
'al$ulate0amount0owin #as1iure,amount"illed% 3nd
'ontoh !arameter 1ormal :
Su"modul'al$ulate0amount0owin #as4sae,amountOwin%
5..5..
3nd
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
11/39
MATERI BELAJAR
Komunikasi Antar Modul
!arameter 2alue dan 6eferen$e* !arameter 2alue :
7ilai yan dikirimkan dari satu modul kemodul yan memanil.
* !arameter 6eferen$e :
Alamat memori dari se"uah parameteryan dikirim ke modul yan memanil.
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
12/39
MATERI BELAJAR
Komunikasi Antar Modul
8ierar$hy 'hart dan !arameter!arameter yan dikirimkan antar modul
dapat diam"arkan dalam 8ierar$hy 'hart
Data
parameters
Status
parameter
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
13/39
MATERI BELAJAR
Latihan Program dengan Parameter
Desin a solution alorithm that will prompt aterminal operator for three $hara$ters,
a$$ept those $hara$ters as input, sort theminto as$endin se9uen$e and output themto the s$reen. he alorithm is to $ontinue
to read $hara$ters untuk ;
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
14/39
MATERI BELAJAR
Latihan Program dengan Parameter
Diaram Definisi
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
15/39
MATERI BELAJAR
Latihan Program dengan Parameter
8ierar$hy 'hart
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
16/39
MATERI BELAJAR
Latihan Program dengan Parameter
Aloritma Solusi :
!ro$ess0three0$hara$ters
6ead0three0$hara$ters#$har(, $har-, $har%DO>8I3 7O #$har(?;
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
17/39
MATERI BELAJAR
Latihan Program dengan Parameter
Aloritma Solusi :
Sort0three0$hara$ters#$har(,$har-,$har%
I1 $har(@$har- 837Swap0two0$hara$ters#$har(, $har-%37DI1I1 $har-@$har 837
Swap0two0$hara$ters#$har-, $har%37DI1I1 $har(@$har- 837
Swap0two0$hara$ters#$har(, $har-%37DI1
37D
Swap0two0$hara$ters#first$har,se$ond$har%temp ? first$harfirst$har ? se$ond$harse$ond$har ? temp
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
18/39
MATERI BELAJAR
Modul Kohesi
* Modul : melakukan satu funsi, terdiri dari (entry, ( eit dan nama modul yan
men$erminkan funsinya.* Kohesi : tolak ukur kekuatan internal dalam
modul .
* Semakin dekat element dalam modul makasemakin tini tinkat kohesi.* Modul denan kohesi tini adalah modul
yan "aik.
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
19/39
MATERI BELAJAR
Modul Kohesi
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
20/39
MATERI BELAJAR
Functional Cohesion
* 1un$tional 'ohesion ter/adi ketika semuaelement "erkontri"usi mener/akan suatu
tuas khusus.'al$ulate0sales0ta I1 produ$t is sales ta eempt 837
sales00ta ? B 3S3
I1 produ$t0pri$e C EB.BB 837
sales0ta ? produ$t0pri$e F B.-E3S3 I1 produ$t0pri$e C (BB.BB 837 sales0ta ? produ$t0pri$e F B.E 3S3 sales0ta ? produ$t0pri$e F B.E 37DI1
37DI1
37DI137D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
21/39
MATERI BELAJAR
Sequential Cohesion
* Se9uential 'ohesion ter/adi ketika se"uahmodul terdiri dari elemen G elemen yan
terantun pada proses elemense"elumnyaProcess_purchases
set total_purchases to zero
prompt and get number_of_purchases
DO loop_index = 1 to number_of_purchasesprompt and get pruchase
add purchase to total_purchases
ENDDO
sales_tax = total_purchases*sales_tax_percent
amount_due = total_purchases + sales_tax
END
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
22/39
MATERI BELAJAR
Communicational Cohesion
* 'ommuni$ational 'ohesion ter/adi ketikase"uah modul dikelompokan "ersama
karena menunakan data yan sama.&alidate0produ$t0re$ord
I1 transa$tion0type 7O?;B== 837error0fla ? trueerror0messae ? ;in&alid transa$tion type=
print0error0report 37DI1
I1 $ustomer0num"er is 7O? numeri$ 837error0fla ? trueerror0messae ? ;in&alid $ustomer num"er=print0error0report
37DI1 I1 produ$t0no ? "lanks O6 produ$0no has leadin "lanks 837
error0fla ? trueerror0messae ? ;in&alid produ$t no=print0error0report
37DI137D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
23/39
MATERI BELAJAR
Procedural Cohesion
* !ro$edural 'ohesion ter/adi ketika elemen*element dalam se"uah modul salin terkait
karena di/alankan "erdasarkan prosedur.'ontoh : Mainline
6ead0student0re$ord0and0total0student0aesset num"er0of0re$ords to Hero
set total0ae to Heroread student re$ordDO>8I3 more re$ords eist
add ae to total0aeadd ( to num"er0of0re$ords
37DDOprint num"er0of0re$ords, total0ae
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
24/39
MATERI BELAJAR
Temporal Cohesion
* emporal 'ohesion ter/adi ketika elemen Gelemen dalam se"uah modul dikelompokan
"ersama karena terkait denan waktu.Initialisation
Open transa$tion fileIssue !rompt ;enter today=s date G DDMMYY=6ead todays0dateSet transa$tion0$ount to Hero
6ead transa$tion re$ordI1 not 3O1
in$rement transa$tion0$ount37DI1Open report file!rint0pae0headinsSet report0total to Hero
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
25/39
MATERI BELAJAR
Logical Cohesion
* oi$al 'ohesion ter/adi ketika elemen Gelemen dalam se"uah modul dikelompokan
"ersama "erdasarkan pada akti&ity tertentu.6ead0all0files#file0$ode% 'AS3 of file0$ode
( : 6ead $ustomer transa$tion re$ordI1 not 3O1
in$rement $ustomer0transa$tion0$ount 37DI1
- : 6ead $ustomer master re$ordI1 7O 3O1
in$rement $ustomer0master0$ount 37DI1
: 6ead produ$t master re$ordI1 7O 3O1
in$rement produ$t0master0$ount 37DI1
37D'AS337D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
26/39
MATERI BELAJAR
Coincidental Cohesion
* 'oin$idental 'ohesion ter/adi ketika elemenG elemen dalam se"uah modul
dikelompokan "ersama hanya karenadalam satu modul. idak ada hu"unanyan "erarti
1ile0pro$essin open employee updates file
read employee re$ordprint0pae0headinopen employee master fileset pae0$ount to oneset error0fla to false
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
27/39
MATERI BELAJAR
Modul Coupling
* Coupling adalah ukuran se/auh manapertukaran informasi antara modul.
* Semakin kuat coupling artinya semakin"esar keterantunan pada modul lain.
* Semakin lemah couplingartinyasemakin mudah mandiri dan mudahdikem"ankan.
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
28/39
MATERI BELAJAR
Modul Coupling
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
29/39
MATERI BELAJAR
Data Coupling
* Data 'ouplin ter/adi ketika se"uah modulmenirimkan &aria"el non lo"al ke modul
lain.Module A
Module
3lementary data
item
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
30/39
MATERI BELAJAR
Data Coupling
'ontoh:A. !ro$ess0$ustomer0re$ord
55$al$ulate0sales0ta#total0pri$e, sales0ta%
55. 'al$ulate0sales0ta
I1 total0pri$e @ EBBB 837sales0ta ? total0pri$e F B.-E
3lse
If total0pri$e @ JBBB 837sales0ta ? total0pri$e F B.-3lse
sales0ta ? total0pri$e F B.(E37DI1
37DI1
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
31/39
MATERI BELAJAR
Stamp Coupling
* Stamp 'ouplin ter/adi ketika se"uah modulmenirimkan struktur data non lo"al ke
modul lain.Module A
Module
Data Stru$ture
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
32/39
MATERI BELAJAR
Stamp Coupling
'ontoh:!ro$ess0transa$tion0re$ord
5.pro$ess0male0student #$urrent0re$ord%
537D
!roses0male0student #$urrent0re$ord%in$rement male0student0$ount #$urrent0re$ord%If student0ae @ -( 837
in$rement0mature0male0$ount37DI15.5.
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
33/39
MATERI BELAJAR
Control Coupling
* 'ontrol 'ouplin ter/adi ketika se"uahmodul menirimkan &aria"el kontrol untuk
menontrol loika modul lainModule A
Module
1la
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
34/39
MATERI BELAJAR
Control Coupling
'ontoh:!ro$ess0input0$ode
read input0$ode$hoose0appropriate0a$tion #input0$ode%
5537D
'hoose0appropriate0a$tion #input0$ode%'AS3 O1 input0$ode
( : read employee re$ord- : print0pae0headin : open employee master fileJ : set pae0$ount to HeroE : error0messae ?;3mployee num"er not numeri$=
37D'AS337D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
35/39
MATERI BELAJAR
!ternal Coupling
* 3ternal 'ouplin ter/adi ketika dua ataule"ih modul menakses &aria"el lo"al
yan sama.)lo"al Data
&aria"el
Module A Module
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
36/39
MATERI BELAJAR
!ternal Coupling
'ontoh:'al$ulate0sales0ta
I1 produ$t is sales eempt 837sales0ta ? B
3S3I1 produ$t0pri$e C EB 837 sales0ta ? sales0pri$e F B.-E5.537DI1
37DI1
'al$ulate0amount0due5amount0due ? total0amount sales0ta
537D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
37/39
MATERI BELAJAR
Common Coupling
* 'ommon 'ouplin ter/adi ketika dua ataule"ih modul menakses struktur data lo"al
yan sama.)lo"al DataStru$ture
Module A Module
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
38/39
MATERI BELAJAR
Common Coupling
'ontoh:
6ead0$ustomer0re$ordread $ustomer re$ordI1 3O1 837
set 3O10fla to true37DI137D
2alidate0$ustomer0re$ordI1 $ustomer0num"er is 7O numeri$ 837
error0messae ? ;in&alid $ustomer num"er=print0error0report37DI155.
37D
-
7/26/2019 Metode-Perancangan-Program-Pertemuan-9 (3).ppt
39/39
MATERI BELAJAR
" # A