2.2. Rekayasa Perangkat Lunak
Rekayasa perangkat lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem
setelah digunakan Sommerville. I., 2001.
2.2.1. Proses Rekayasa Perangkat Lunak
Ada empat kegiatan proses dasar yang umum bagi seluruh kegiatan proses perangkat
lunak, yaitu:
1.Spesifikasi perangkat lunak. Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefenisikan.
2.Pengembangan perangkat lunak. Perangkat lunak yang memenuhi spesifikasi tersebut harus diproduksi.
3.Validasi perangkat lunak. Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak melakukan apa yang diinginkan oleh pelanggan.
4.Evolusi perangkat lunak. Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan yang berubah-ubah.
2.3. Matematika Kriptografi
Untuk memahami algoritma IDEA, terlebih dahulu perlu dipahami beberapa notasi matematika dasar, teori dan formula. Hal tersebut dibutuhkan untuk mendukung
semua kalkulasi yang dilakukan dalam algoritma IDEA.
2.3.1. Teorema Euclidean
Jika 0 r n ; n 0 ; m n, maka:
……1 Atau :
Universitas Sumatera Utara
m = nq + r …….2
Dimana: r = sisa remainder q = hasil bagi quotient
Contoh: = 7 sisa 1 , jadi 22 = 37 + 1
→ memenuhi teorema.
2.3.2. PBB Pembagi Bersama terBesar
Jika a, b, dan d adalah bilangan bulat bukan 0, serta d|a dibaca: d habis membagi a atau a mod d = 0 dan demikian juga dengan d|b, maka:
PBBa,b = d ……3
Contoh: PBB 45,36 = 9
Karena memenuhi: 9|45 atau = 5 sisa 0 dan juga 9|36 atau = 4 sisa 0
2.3.3. Algoritma Euclidean
Jika m dan n positif, serta m ≥ n, maka:
1Jika n = 0 → PBB m,n = m → stop
jika ≠ 0 → maju ke langkah 2.
2 = q sisa r 3
← n ganti m dengan nilai n n
← r ganti n dengan nilai r kembali ke langkah 1.
Contoh: m = 80 ; n = 12 ; m ≥ n
Solusi: m = qn + r
80 = 6.12 + 8 12 = 1.8 + 4
8 = 2.4 + 0
Jadi PBB 80,12 = 4, karena r terakhir sebelum 0 adalah 4
Universitas Sumatera Utara
2.3.4. Relatif prima
Jika PBB a,b = 1 serta a dan b merupakan bilangan bulat, maka: a dan b dikatakan relatif prima, sehingga dapat dibentuk suatu persamaan:
pa + qb = 1 ……4
dimana p dan q adalah bilangan bulat. Contoh:
20 dan 3 relatif prima, sebab PBB 20,3 = 1, sehingga dapat dinyatakan: 2.20 + -13.3 = 1
Dengan p = 2 dan q = -13
2.3.5. Aritmatika Modulo
Jika a dan b adalah bilangan bulat, serta m 0 dan 0 ≤ r m , maka:
a mod m = r ……5
atau:
a = mq + r ……6
dengan m = modulomodulus. Contoh:
23 mod 5 = 3 ; atau 23 = 5.4 + 3
2.3.6. Kekongruenan
Jika a dan b adalah bilangan bulat, dan m 0, serta a-b mod m = 0 atau m|a-b, maka:
a ≡ b mod m ……7
dibaca: a kongruen dengan b dalam modulus m
lawannya:
a ≡ b mod m ……8
dibaca: a tidak kongruen dengan b dalam modulus m
Contoh: 38 mod 5 = 3 38
≡ 13 mod 5 , atau 13 mod 5 = 3
Universitas Sumatera Utara
Jadi 38 kongruen dengan 13 dalam modulus 5.
Catatan: a ≡ b mod m dapat juga ditulis: a mod m = b ,dan a = b + km
Dengan b = sisa, k = hasil bagi.
2.3.7. Inversi Modulo
Jika a dan b adalah relatif prima atau PBB a,b = 1; serta b 1, maka invers perkalian dari a mod b =