Bab 3 Metode Perancangan -...
Transcript of Bab 3 Metode Perancangan -...
13
Bab 3
Metode Perancangan
3.1 Metode Perancangan dan Desain Sistem
Metode rekayasa perangkat lunak yang digunakan dalam
pembuatan skripsi ini adalah metode prototyping. Metode
prototyping adalah metode rekayasa perangkat lunak dimana antara
developer dan client saling berinteraksi dalam membangun desain
sistem aplikasi yang akan dibuat. Metode prototyping sangat cocok
digunakan untuk perangkat lunak yang dibangun mengikuti
kebutuhan pengguna (user requirement). Dalam metode ini,
pengguna tidak memberikan detail pada input, proses, dan output.
Sehingga model dari sistem prototyping yang dibangun tersebut
akan terus menerus diperbaiki agar sesuai harapan pengguna
(Pressman, 2001).
Gambar 3.1 Metode Prototype (Pressman, 2001)
14
Pada Pembangunan prototype sistem dilakukan beberapa
tahapan untuk membangun aplikasi sistem sesuai dengan permintaan
user yaitu :
Tahapan prototype pertama, pengguna belum memberikan
detail dari sistem yang akan dibangun. Kebutuhan pengguna
(user requirement) yang didapat dalam wawancara awal di
fakultas teknologi informasi dan studi pustaka.
Kebutuhan pengguna sistem dalam metode prototyping
kedua pada dasarnya merupakan pengembangan dari
kebutuhan pengguna sistem metode prototyping tahap
pertama. Membangun prototyping dengan membuat
perancangan sementara yang berfokus pada penyajian
kepada pelanggan. Selain itu, pengguna juga memberikan
tambahan kebutuhan pengguna untuk sistem yang dibangun
pada tahap berikutnya.
Tahap berikutnya adalah evaluasi yang dilakukan oleh
pelanggan apakah prototyping yang sudah dibangun sudah
sesuai dengan kebutuhan pelanggan. Tahapan prototyping
akan terus berputar sampai keinginan pelanggan tercapai.
3.2 Pengumpulan Data
Pada pembangunan prototype sistem yang pertama,
pengguna belum memberikan detail secara keseluruhan dari sistem
yang akan dibangun. Kebutuhan pengguna (user requirement) yang
didapat dalam wawancara awal di fakultas teknologi informasi dan
studi pustaka antara lain :
15
1. Aplikasi dibuat secara sederhana dan mudah dalam
pengoperasiannya.
2. Aplikasi terdapat menu seperti : menambah data (New),
mengubah data (Edit), menghapus data (Delete), Menyaring
data (Filter).
Kemudian tahap selanjutnya dalam metode prototyping yaitu
melakukan pembangunan prototype sistem. Pembangunan prototype
sistem dibangun berdasarkan kebutuhan pengguna yang telah
didapat dari hasil wawancara yang sudah dilakukan sebelumnya.
Hasil dari pembangunan pada prototype sistem ini dapat disebut
prototype sistem pertama. Pembangunan prototype sistem pertama
akan dibahas pada bab selanjutnya.
Prototype sistem pertama yang sudah selesai dibangun akan
dilakukan evaluasi sistem berdasarkan kebutuhan pengguna. Tahap
evaluasi sistem mempertemukan antara client atau pengguna sistem
dengan developer atau pembangun sistem. Dari tahap evaluasi
sistem ini akan diketahui kekurangan dari sistem yang dibangun.
Sehingga kekurangan yang telah diketemukan dari tahap evaluasi ini
digunakan sebagai kebutuhan sistem dalam pembangunan prototype
sistem berikutnya dan tahapan dalam metode prototyping pun akan
berulang.
Kebutuhan pengguna sistem dalam metode prototyping kedua
pada dasarnya merupakan pengembangan dari kebutuhan pengguna
sistem metode prototyping tahap pertama. Selain itu, pengguna juga
memberikan tambahan kebutuhan pengguna untuk sistem yang
dibangun pada tahap berikutnya. Kebutuhan pengguna sistem pada
tahap kedua yaitu :
16
1. Menambahkan menu Login pada aplikasi.
2. Menambahkan menu Akun Transaksi.
Kebutuhan pengguna pada metode prototyping tahap kedua
selanjutnya digunakan untuk melakukan pembangunan prototype
sistem tahap kedua. Prototype sistem pada tahap kedua disebut
prototype sistem kedua. Pembangunan prototype sistem pada tahap
kedua dibahas dalam bab 4. Proses evaluasi metode prototyping
tahap kedua dilakukan setelah pembangunan prototype sistem kedua
selesai.
Hasil proses evaluasi prototype sistem kedua dapat
disimpulkan bahwa sistem yang dibangun hampir memenuhi
kebutuhan dari pengguna sistem. Namun, masih terdapat beberapa
penambahan fitur dalam prototype sistem kedua. Penambahan fitur
tersebut digunakan dalam metode prototyping tahap ketiga.
Penambahan fitur pada sistem tahap ketiga adalah :
1. Perancangan dan pembuatan database.
2. Perbaikan terhadap antarmuka prototype sistem kedua.
3. Implementasi enkripsi database.
Kebutuhan pengguna pada prototyping tahap ketiga digunakan
dalam pembangunan sistem pada metode prototyping tahap ketiga.
Prototype sistem yang dihasilkan dalam metode prototyping tahap
ketiga disebut prototype sistem ketiga. Pembangunan prototype
sistem ketiga akan dibahas pada bab 4. Setelah prototype sistem
ketiga selesai tahap selanjutnya dalam metode prototyping adalah
melakukan evaluasi prototype sistem.
17
Dalam proses evaluasi prototyping sistem ketiga telah
disimpulkan bahwa semua kebutuhan pengguna telah dipenuhi maka
pembangunan prototype sistem dinyatakan sudah selesai.
Kebutuhan minimum perangkat keras dan perangkat lunak
untuk menjalankan percobaan ini adalah sebagai berikut :
Sistem operasi : Microsoft Windows XP SP3
Program : Microsoft Visual Studio 2010 dengan bahasa
pemrograman C#
Database : SQL Server 2008
Perangkat Keras : Pentium dual-core processor 1,8 GHz dan 1
GB RAM.
Metode pengumpulan data dilakukan dengan cara berikut :
1. Wawancara
Dengan melakukan tanya jawab langsung dengan nara sumber
untuk memperoleh data dan informasi yang berkaitan dengan
penelitian.
2. Studi Pustaka
Dengan membaca buku - buku literature yang dianggap
penting dan relevan dengan topik penelitian guna
mengumpulkan data teoritis untuk menunjang penelitian.
3.3 Perancangan pada Aplikasi Kriptografi
Perancangan dapat digambarkan dengan menggunakan
Unified Modeling Language (UML) yang digunakan untuk urutan
proses yang terjadi pada sistem informasi. Dengan menggunakan
UML kita dapat membuat model untuk semua jenis aplikasi piranti
18
lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras,
sistem operasi dan jaringan apapun, serta ditulis dalam bahasa
pemrograman apapun. Tetapi karena UML juga menggunakan class
dan operation dalam konsep dasarnya, maka ia lebih cocok untuk
penulisan piranti lunak dalam bahasa-bahasa berorientasi objek.
3.3.1 Perancangan Sistem
Langkah awal dalam merancang sistem ini dibuat use case
sebagai analisis awal. Model sistem aplikasi dapat dilihat dengan
menggunakan use case yaitu operasi-operasi yang dilakukan oleh
actor.
3.3.1.1 Use Case Diagram
Use case diagram menggambarkan interaksi antara
pengguna atau admin dengan suatu sistem. Yang ditekankan adalah
“apa” yang diperbuat sistem, dan bukan “bagaimana”. Use case
diagram mempunyai bagian penting yaitu actor, use case, dan
association. Actor adalah pengguna atau admin yang berinteraksi
dengan sistem aplikasi. Use case merepresentasikan operasi -
operasi yang dilakukan oleh actor. Association adalah relasi yang
menggambarkan hubungan antara actor dan use case.
19
menambah pengguna
hapus pengguna
ubah kata sandi
mengubah transaksihapus transaksi
mengelola data pengguna
admin
mengelola data transaksi
tambah transaksi
menampilkan transaksi
pengguna
menyaring transaksi
Gambar 3.2 Use Case Diagram
Use case diagram pada Gambar 3.2 diatas adalah gambaran
secara umum. Penjelasannya adalah sebagai berikut:
Administrator bertugas sebagai pengelola isi aplikasi serta
memiliki hak akses sebagai user.
User dapat melihat transaksi pada aplikasi dan
menambahkan transaksi baru.
3.3.1.2 Activity Diagram
Activity Diagram menggambarkan proses aktifitas alur kerja
yang terjadi dari awal sampai akhir. Oleh karena itu activity diagram
menggambarkan proses-proses dan jalur - jalur aktivitas dari level
atas secara umum.
Sebuah aktivitas dapat direalisasikan oleh satu use case atau
lebih. Aktivitas tersebut menggambarkan proses yang sedang
berjalan, sementara use case menggambarkan bagaimana actor
20
menggunakan sistem untuk melakukan aktivitas yang akan
dilakukan.
Gambar 3.3 Activity Diagram Mengelola Data Pengguna
Gambar 3.3 merupakan aktifitas yang terjadi saat admin
mengelola data. Admin login terlebih dahulu kemudian jika validasi
berhasil maka dapat membuka aplikasi kriptografi. Admin dapat
mengelola data pengguna seperti : menambah pengguna baru,
menghapus pengguna, mengubah kata sandi admin atau pengguna.
Setelah perubahan disimpan, admin dapat keluar dari aplikasi.
21
Gambar 3.4 Activity Diagram Mengelola Data Transaksi
Gambar 3.4 merupakan aktifitas yang terjadi saat admin
mengelola transaksi. Pada awalnya admin login terlebih dahulu, jika
berhasil login maka admin dapat membuka aplikasi transaksi.
Admin dapat mengelola data transaksi seperti : menambah,
menghapus, mengubah, menampilkan, menyaring transaksi yang ada
dalam aplikasi.
22
Gambar 3.5 Activity Diagram Pengguna
Pada Gambar 3.5 merupakan aktifitas yang terjadi antara
aplikasi transaksi dengan pengguna. Dimana pada tersebut pengguna
dapat menampilkan transaksi, menyaring transaksi dan menambah
transaksi.
3.3.1.3 Class Diagram
Class diagram mendekripsikan jenis-jenis obyek dalam
sistem dan berbagai macam hubungan yang terjadi.class diagram
menunjukkan property dan operasi sebuah class dalam hubungan
23
obyek. Jadi class diagram membantu pengembang mendapatkan
struktur sistem dan menghasilkan rancangan yang baik.
Gambar 3.6 Class Diagram Sistem
Gambar 3.6 menggambarkan hubungan antar class.
Dijelaskan bahwa class user berelasi langsung dengan transaction
bersifat One to Many yaitu bahwa satu user dapat menambahkan
lebih dari satu transaksi. Class administrator berelasi langsung ke
banyak transaksi bersifat One to Many. Dan administrator berelasi
langsung ke user yang bersifat One to Many.
3.3.1.4 Sequence Diagram
Sequence diagram merupakan interaksi antara objek-objek
dalam suatu sistem dan terjadi komunikasi yang berupa pesan serta
urutan antar operasi dan informasi yang diperlukan oleh masing-
masing operasi. Sequence diagram biasa digunakan untuk
menggambarkan rangkaian langkah - langkah yang dilakukan
24
sebagai tanggapan dari sebuah event untuk menghasilkan output
tertentu.
: adminaplikasi
1: menginput username & password
2: validasi
3: konfirmasi login
Gambar 3.7 Sequence Diagram Login Admin
Gambar 3.7 merupakan sequence diagram login admin yang
menjelaskan proses login yang terjadi pada saat admin membuka
aplikasi. Pada awalnya admin memasukkan username dan password
pada aplikasi untuk divalidasi yang ada di dalam basis data.
Selanjutnya ada konfirmasi login, apakah proses login berhasil atau
gagal.
25
: admin
menambah pengguna
menghapus pengguna
mengubah kata sandi
1: menambah pengguna baru
2: menghapus pengguna yang ada dalam basisdata
3: mengubah kata sandi yang ada dala basis data
Gambar 3.8 Sequence Diagram Mengelola Data Pengguna
Gambar 3.8 merupakan sequence diagram saat admin
mengelola data pengguna. Pada awalnya pengguna memilih menu
yang sudah ada pada aplikasi. Admin dapat menambah pengguna
baru agar pengguna tersebut dapat login selain itu admin dapat
menghapus pengguna yang sudah tersimpan pada basis data. Admin
dapat mengubah kata sandi pada pengguna yang sudah tersimpan
pada basis data maupun mengubah kata sandi pada admin itu sendiri.
26
: admin
menambah transaksi
menghapus transaksi
mengubah transaksi
menampilkan transaksi
menyaring transaksi
1: menambahkan transaksi baru
2: menghapus transaksi yang tersimpan pada basisdata
3: mengubah data transaksi
4: menampilkan semua transaksi
5: menyaring transaksi berdasarkan kriteria
Gambar 3.9 Sequence Diagram Admin Mengelola Data Transaksi
Gambar 3.9 merupakan sequence diagram saat admin
mengelola data transaksi. Saat membuka aplikasi transaksi admin
dapat menambahkan transaksi baru, menghapus transaksi yang
sudah tersimpan pada basis data, mengubah data transaksi,
menampilkan semua transaksi dan menyaring transaksi berdasarkan
kriteria tertentu.
27
: pengguna
tambah transaksi
menampilkan transaksi
menyaring transaksi
1: menambah transaksi baru
2: menampilkan semua transaksi baru
3: menyaring transaksi sesuai dengan kriteria tertentu
Gambar 3.10 Sequence Diagram Pengguna Mengelola Data Transaksi
Gambar 3.10 merupakan sequence diagram saat pengguna
mengelola data transaksi. Pengguna hanya bisa menambahkan
transaksi baru, menampilkan semua transaksi dan menyaring
transaksi sesuai dengan kriteria tertentu.
3.3.1.5 Deployment Diagram
Deployment Diagram adalah suatu diagram yang berisi
tentang pandangan yang berkaitan dengan penyebaran fisik dalam
sebuah infrastruktur sistem.
Gambar 3.11 Deployment Diagram
SQL Server
executive Menyimpan Data Analisa Data Mengolah Data
<<Database Serv er>>
Aplikasii
28
Pada Gambar 3.11 terlihat bahwa aplikasi kriptografi untuk
kerahasiaan database keuangan menggunakan SQL Server sebagai
Database Management System yang akan menyimpan seluruh data
yang diperlukan. Aplikasi akan mengakses data yang ada dalam
database. Saat pengguna membuat transaksi baru pada aplikasi maka
data yang tersimpan akan otomatis terenkripsi dan pada database.
3.3.2 Perancangan Database
Database merupakan komponen dasar dari sebuah sistem
informasi dan pengembangannya. Perancangan database bertujuan
memenuhi informasi yang berisikan kebutuhan - kebutuhan para
pengguna dan menyediakan informasi yang mudah dimengerti oleh
pengguna.
Tabel 3.1 Tabel Transaksi Keuangan
Column Name Data Type Allow Nulls
Id bigint
Tanggal numeric(24,6) ˅
KodeAkun varchar(200) ˅
Debit varchar(200) ˅
Kredit varchar(200) ˅
Keterangan varchar(200) ˅
Tabel 3.1 adalah tabel yang digunakan untuk menyimpan
data transaksi yang dimiliki PT. INDOMEDIA. Tabel ini memiliki
enam field yaitu : Id (primary key, bigint), Tanggal (numeric 24,6,
allow nulls), KodeAkun (varchar 200, allow nulls), Debit (varchar
200, allow nulls), Kredit (varchar 200, allow nulls), Keterangan
(varchar 200, allow nulls).
29
Tabel 3.2 Tabel Akun Pengguna
Column Name Data Type Allow Nulls
Username varchar(200)
Password varchar(200) ˅
Tabel 3.2 adalah tabel yang digunakan untuk menyimpan
akun pengguna. Tabel ini memiliki 2 field yaitu : username (varchar
200), password (primary key, varchar 200, allow nulls).
Tabel 3.3 Tabel Kode Akuntansi
Column Name Data Type Allow Nulls
Kode varchar(50)
Nama varchar(200) ˅
Tabel 3.3 adalah tabel yang digunakan untuk menyimpan
kode akuntansi. Tabel ini memiliki 2 field yaitu : kode (primary key,
varchar 50), nama (varchar 200, allow nulls).
3.3.3 Rancangan Antarmuka
Dalam sub bab ini akan dibahas mengenai desain interface
pada aplikasi. Desain interface merupakan rancangan antarmuka
program yang akan diimplementasikan. Terdapat beberapa
rancangan antarmuka yang akan dibuat dalam sistem ini, antara lain:
30
3.3.3.1 Antarmuka Halaman Utama
Antarmuka halaman utama merupakan halaman yang
menyediakan tiga fitur utama yang dapat dipilih user.
1 2 3 4 5 6 7
8 9 10
11
Gambar 3.12 Antarmuka Halaman Utama
Pada Gambar 3.12 terdapat beberapa bagian fitur utama, yaitu :
1. Baru
Digunakan untuk tambah transaksi.
2. Edit
Pada fitur ini admin dapat mengubah detail data transaksi.
3. Hapus
Pada fitur ini admin menghapus transaksi yang sudah ada.
4. Data
Pada fitur ini admin maupun pengguna dapat menampilkan
transaksi berdasarkan kriteria tertentu.
5. Refresh
Pada fitur ini admin maupun pengguna dapat memuat ulang
pada data transaksi.
6. Report
Pada fitur ini admin maupun pengguna melihat hasil laporan
untuk dicetak.
31
7. Logout
Pada fitur ini admin maupun pengguna keluar dari aplikasi.
8. Manage user / admin
Pada fitur ini admin dapat mengelola akun dari pengguna
seperti : password
9. Manage Akun Transaksi
Pada fitur ini admin dapat mengelola akun transaksi.
10. Restore
Mengembalikan data yang sudah terhapus.
11. Tampilan Menu
Pada fitur ini menampilkan menu yang dipilih pengguna atau
admin.
3.3.3.2 Antarmuka kelola akun
Antarmuka kelola akun merupakan halaman yang
menampilkan menu saat pertama kali masuk ke aplikasi kriptografi.
Gambar 3.13 Interface Kelola Akun
1
2
3
4 5 6
7
32
Pada Gambar 3.13 terdapat beberapa bagian, yaitu :
1. Mengisi username.
2. Mengisi password.
3. Menyimpan hasil perubahan
4. Menambah akun pengguna / admin yang baru
5. Mengubah password atau username
6. Menghapus daftar akun yang ada.
7. Tampilan hasil perubahan
33
3.3.4 Algoritma Kriptografi
Gambar 3.14 Algoritma Kriptografi
34
Pada Gambar 3.14 algoritma AES, jumlah blok input, blok
output, dan state adalah 128 bit. Dengan besar data 128 bit, berarti
Nb = 4 yang menunjukkan panjang data tiap baris adalah 4 byte.
Dengan blok input atau blok data sebesar 128 bit, key yang
digunakan pada algoritma AES tidak harus mempunyai besar yang
sama dengan blok input. Cipher key pada algoritma AES bisa
menggunakan kunci dengan panjang 128 bit, 192 bit, atau 256 bit.
Perbedaan panjang kunci akan mempengaruhi jumlah round yang
akan diimplementasikan pada algoritma AES ini.
Proses enkripsi pada algoritma AES terdiri dari 4 jenis
transformasi bytes, yaitu SubBytes, ShiftRows, Mixcolumns, dan
AddRoundKey. Pada awal proses enkripsi, input yang telah disalin
ke dalam state akan mengalami transformasi byte AddRoundKey.
Setelah itu, state akan mengalami transformasi SubBytes,
ShiftRows, MixColumns, dan AddRoundKey secara berulang-ulang
sebanyak Nr. Proses ini dalam algoritma AES disebut sebagai round
function. Round yang terakhir berbeda dengan round - round
sebelumnya dimana pada round terakhir, state tidak mengalami
transformasi MixColumns.