T1 672007710 BAB III

(1)

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).


(2)

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 :


(3)

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 :


(4)

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.


(5)

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


(6)

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.


(7)

menambah pengguna

hapus pengguna

ubah kata sandi

mengubah transaksi hapus transaksi

mengelola data pengguna

admin

mengelola data transaksi

tambah transaksi

menampilkan transaksi

pengguna menyaring transaksi

Gambar 3.2Use CaseDiagram

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


(8)

menggunakan sistem untuk melakukan aktivitas yang akan dilakukan.

Gambar 3.3Activity 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.


(9)

Gambar 3.4Activity 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.


(10)

Gambar 3.5Activity 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


(11)

obyek. Jadi class diagram membantu pengembang mendapatkan struktur sistem dan menghasilkan rancangan yang baik.

Gambar 3.6Class 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


(12)

sebagai tanggapan dari sebuah event untuk menghasilkan output

tertentu.

: admin

aplikasi 1: menginput username & password

2: validasi

3: konfirmasi login

Gambar 3.7Sequence DiagramLogin 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.


(13)

: 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.8Sequence 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.


(14)

: 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.9Sequence 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.


(15)

: 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.10Sequence 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.11Deployment Diagram SQL Server

executive Menyimpan Data Analisa Data Mengolah Data

<<Database Serv er>>


(16)

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).


(17)

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:


(18)

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 AntarmukaHalaman Utama

Pada Gambar 3.12 terdapat beberapa bagian fitur utama, yaitu : 1. Baru

Digunakan untuk tambah transaksi.

2. Edit

Pada fitur ini admin dapatmengubah 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.


(19)

7. Logout

Pada fitur ini admin maupun pengguna keluar dari aplikasi.

8. Manageuser / 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


(20)

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


(21)

3.3.4 Algoritma Kriptografi


(22)

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.


(1)

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:


(2)

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 AntarmukaHalaman 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.


(3)

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


(4)

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


(5)

3.3.4 Algoritma Kriptografi


(6)

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.