21
3.1 Metode Pengembangan Sistem
Pada bagian ini akan dijelaskan tentang metode penelitian yang digunakan dalam pengembangan sistem. Metode penelitian yang dipakai adalah metode Prototyping.
3.1.1 Pembahasan Metode Prototyping
Metode penelitian yang digunakan pada pembuatan aplikasi ini yaitu model prototyping. Secara lengkap, alur model prototyping akan digambarkan seperti pada Gambar 3.1.
Gambar 3.1 Prototyping Model
Keuntungan dari model prototyping ini yaitu perulangan ketiga proses akan terus berlangsung hingga semua kebutuhan terpenuhi, sehingga mendapatkan hasil yang maksimal. Berikut ini merupakan tahapan metode Prototyping dalam penelitian ini:
Tahap analisis kebutuhan digunakan untuk mengetahui dan menerjemahkan semua permasalahan serta kebutuhan perangkat lunak dan kebutuhan sistem yang dibangun. Permasalahan yang muncul diidentifikasi dan dievaluasi, sehingga sistem dapat dibangun sesuai dengan kriteria yang diharapkan. Tahap melakukan analisis kebutuhan pada sistem ini yaitu mempelajari website Yahoo Finance mengenai fitur untuk konversi mata uang yang ada dalam kedua website tersebut. Analisis yang dilakukan pada penelitian ini terdiri dari analisis kebutuhan non fungsional, analisis kebutuhan fungsional, analisis input, analisis alur kerja sistem, analisis output. Perancangan sistem
Setelah melakukan analisis kebutuhan, tahap kedua adalah melakukan perancangan sistem yang akan dibangun. Perancangan sistem dibutuhkan untuk membantu proses pengembangan dan untuk dokumentasi perangkat lunak sistem. Perancangan sistem dibuat dengan menggunakan diagram-diagram UML yang terdiri dari use case diagram, activity diagram, sequence diagram, dan class
diagram.
Pengujian prototipe
pada emulator Android versi 2.1 Eclair. Membandingkan hasil konversi aplikasi dengan hasil konversi Yahoo Finance. Di implementasikan pada Android device dengan versi Android yang berbeda. Meminta user (beberapa masyarakat) untuk menjalankan/testing aplikasi tersebut. Pada tahapan ini sistem akan dievaluasi, jika sistem masih perlu penyempurnaan maka proses akan diulangi dari tahap pertama sampai tahap ketiga. Pada tahap pertama, hasil evaluasi terakhir akan menjadi analisa data dan kebutuhan yang baru.
3.1.2 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional merupakan analisis kebutuhan di luar fungsi daripada sistem, analisis ini terdiri dari analisis hardware (perangkat keras), analisis software (perangkat lunak), analisis web hosting, analisis user (pengguna).
Dalam perancangan aplikasi konversi mata uang ini tentunya dibutuhkan hardware (perangkat keras) serta software (perangkat lunak) pendukung. Kebutuhan minimum untuk hardware (perangkat keras) serta software (perangkat lunak) tercantum pada Tabel 3.1 dan Tabel 3.2.
Tabel 3.1 Kebutuhan Hardware
Kebutuhan Spesifikasi Processor Intel Pentium 4
RAM 1 Gb
Tabel 3.2 Kebutuhan Software
Kebutuhan Spesifikasi
IDE ECLIPSE GALILEO (3.5)
Android Plugin ADT-0.9.4
Android Emulator SDK Android (Android 2.1) Editor PHP Notepad
Daftar software pada Tabel 3.2 dapat dijelaskan sebagai berikut.
- IDE merupakan software yang digunakan untuk membuat program, IDE yang support untuk pembuatan program berbasis Android adalah Eclipse. Eclipse Galileo 3.5 merupakan versi minimum Eclipse yang mendukung Android plugin sampai versi ADT-14.0.0 yang merupakan versi terbaru saat tulisan ini dibuat.
- Android plugin dibutuhkan agar suatu IDE dapat digunakan untuk membuat program berbasis Android, ADT-0.9.4 merupakan versi minimum Android plugin untuk Eclipse Galileo 3.5.
- Android emulator merupakan software yang dibutuhkan oleh IDE untuk proses compile aplikasi Android dan untuk menjalankan aplikasi Android seolah – olah pada Android device. Versi minimum Android emulator yang digunakan
adalah Android 2.1, karena aplikasi yang dibuat menggunakan versi 2.1 dapat dijalankan pada Android versi 2.1 ke atas.
Dalam perancangan aplikasi konversi mata uang ini membutuhkan web hosting untuk menyimpanan file php yang berisi script untuk mengambil data kurs dari website Yahoo Finance. Web
Hosting yang digunakan adalah 1FreeHosting, yang merupakan web
hosting yang memiliki fitur ftp dan php yang dibutuhkan oleh
sistem.
Kemampuan umum yang dimiliki oleh pengguna yang akan menggunakan aplikasi konversi mata uang ini adalah kemampuan mengoperasikan sistem operasi Android menggunakan smartphone.
3.1.3 Analisis Kebutuhan Fungsional device dengan data kurs dari Yahoo Finance yang terbaru ).
- Konversi mata uang, user dapat mengkonversi atau mengubaha nilai dari suatu jenis mata uang suatu jenis mata uang lainnya. - Melihat data kurs, user dapat melihat setiap nilai kurs dari
berbagai jenis mata uang dalam rupiah.
3.1.4 Analisis Input
terakhir diperbaharui atau waktu berlakunya, sehingga dapat ditentukan apakah data kurs perlu untuk diperbaharui atau tidak. Nilai kurs berfungsi untuk proses perhitungan perubahan mata uang dari suatu jenis mata uang ke jenis mata uang lainnya. Semua nilai kurs dalam rupiah untuk mempermudah dalam proses perhitungan dan pemahaman user ketika melihat data nilai kurs.
3.1.5 Analisis Alur Kerja Sistem
Berikut adalah alur kerja yang ditempuh dalam sistem yang dibuat:
- Data kurs yang dibutuhkan diambil oleh aplikasi dari Yahoo Finance yang terdiri dari tanggal kurs dan nilai kurs beserta jenis mata uangnya akan disimpan dalam database local phone. - Data tanggal kurs pada database local phone akan dibandingkan
dengan data tanggal kurs pada Yahoo Finance untuk proses penentuan apakah data kurs perlu diperbaharui atau tidak. - User dapat melihat nilai kurs rupiah dari berbagai jenis mata
uang, data yang akan ditampilkan diakses dari database local phone.
- Data nilai kurs dari jenis mata uang asal dan tujuan yang telah dipilih user, akan diakses dari database sehingga dapat dilakukan proses konversi berdasarkan nominal yang telah dimasukkan user.
3.1.6 Analisis Output
suatu jenis mata uang ke suatu jenis mata uang lainnya berdasarkan nominal yang telah dimasukkan user.
3.2 Perancangan Sistem
Perancangan sistem dibuat dengan menggunakan diagram-diagram UML (Unified Modeling Language).
3.2.1 Use Case Diagram
Use case diagram menggambarkan interaksi antara actor
dengan sistem.
Gambar 3.2 User Use Case Diagram
1. Pengelolaan data kurs yang terdiri dari download data ( mengunduh data kurs dari Yahoo Finance ) untuk disimpan pada database kurs Android device dan update data ( memperbaharui data yang ada pada database kurs Android device dengan data kurs dari Yahoo Finance yang terbaru ).
2. Konversi mata uang yang terdiri dari melihat jenis mata uang apa saja yang tersedia dan menghitung perubahan dari suatu jenis mata uang ke mata uang lainnya berdasarkan nominal tertentu.
3. Melihat nilai kurs dari berbagai jenis mata uang yang tersedia dalam rupiah.
3.2.2 Activity Diagram
Acitvity diagram menggambarkan alur proses kegiatan yang
Gambar 3.3 User Activity Diagram
Gambar 3.3 menggambarkan aktifitas-aktifitas yang dapat terjadi oleh seorang user. Sistem akan memeriksa database local phone apakah kosong atau tidak, jika kosong maka sistem akan
mengunduh data kurs dari Yahoo Finance. Jika database tidak kosong atau proses download telah selesai maka user dapat melakukan update data kurs, konversi mata uang, dan melihat data kurs.
3.2.3 Sequence Diagram
Gambar 3.4 Download Data Sequence Diagram
Gambar 3.4 merupakan sequence diagram untuk menggambarkan suatu interaksi yang terjadi antara user dengan sistem konversi mata uang dalam hal download data. Berikut ini merupakan penjelasan secara detail tentang interaksi tersebut : - Alert dialog untuk download akan muncul saat mengakses
aplikasi untuk pertama kalinya setelah aplikasi diinstal atau database masih kosong, terdapat dua tombol yaitu OK dan
CANCEL
- Klik OK untuk memulai proses download data, data akan diambil dari website Yahoo Finance dengan cara fetching. - Proses fetching pada aplikasi dilakukan melalui file kurs.php
quotes.csv berisi data kurs sesuai permintaan, permintaan dalam hal ini adalah nilai kurs suatu jenis mata uang terhadap rupiah (IDR).
- Data dari Yahoo Finance tidak langsung dikirim ke aplikasi, karena data masih tercampur. Data akan dikirim ke aplikasi setelah dipisahkan menjadi data tanggal kurs, jenis mata uang dan nilai kursnya.
- Data yang diterima selanjutnya disimpan dalam database local phone sesuai dengan tabel masing – masing. Jenis mata uang
Gambar 3.5 Update Data Sequence Diagram
- User memilih tombol update pada tampilan utama atau tampilan datakurs, sehingga proses update akan dimulai.
- Proses update pertama kali adalah membandingkan tanggal pada database yaitu pada tabel tanggal dengan tanggal pada Yahoo Finance yang diambil melalui proses fetching.
- Jika tanggal dari database sama dengan tanggal dari Yahoo Finance, maka proses update akan berhenti karena belum tersedia kurs terbaru. Jika tanggal dari database sebelum tanggal dari Yahoo Finance, maka proses update akan berlanjut. - Data kurs yang terdiri dari tanggal kurs, jenis mata uang dan
nilai kursnya akan diambil dari website Yahoo Finance melalui proses fetching.
Gambar 3.6 Lihat Nilai Kurs Sequence Diagram
Gambar 3.6 merupakan sequence diagram untuk menggambarkan suatu interaksi yang terjadi antara user dengan sistem konversi mata uang dalam hal lihat nilai kurs. Berikut ini merupakan penjelasan secara detail tentang interaksi tersebut : - Aplikasi konversi akan memanggil semua jenis mata uang dan
Gambar 3.7 Konversi Mata Uang Sequence Diagram
- Semua data jenis mata uang pada tabel kurs akan dipanggil sehingga dapat ditampilkan pada daftar jenis mata uang asal dan tujuan yang ada di tampilan kalkulator.
- User memilih jenis mata uang asal, mata uang tujuan, dan nominal yang akan dikonversi.
- Tombol konversi untuk memulai proses perhitungan konversi dengan mencari nilai kurs jenis mata uang asal dan tujuan dari tabel kurs, kemudian mulai proses perhitungan dengan rumus (d/e)*c dengan keterangan sebagai berikut:
d = nilai kurs dari jenis mata uang asal e = nilai kurs dari jenis mata uang tujuan c = nilai nominal
Hasil dari perhitungan akan ditampilkan ke pada user.
3.2.4 Class Diagram
Gambar 3.8 Class Diagram Sistem
Tabel tanggal menyimpan informasi tentang data tanggal kurs yang telah diunduh dari Yahoo Finance. Tabel kurs menyimpan informasi tentang data nilai kurs sesuai dengan jenis mata uang yang telah diunduh dari Yahoo Finance.
3.3 Perancangan Arsitektur MVC
Pada bagian ini akan dilakukan perancangan untuk Model View Controller yang dibuat. Arsitektur MVC dibuat dengan
memilah bagian aplikasi yang tergolong komponen Model, View dan Controller. Dalam sebuah aplikasi, perubahan pada suatu komponen
3.3.1 Perancangan Model
Model merupakan tempat penyimpanan data sementara yang
berasal dari controller atau view. Data yang ada di dalam model dapat diakses oleh controller untuk diproses dan view untuk ditampilkan pada user. Model dalam aplikasi ini direpresentasikan dalam class data, yang berisi beberapa variabel sebagai berikut: - Variabel string jenis {get;set;} : untuk data jenis mata uang. - Variabel double nilai {get;set;} : untuk data nilai kurs dari jenis
mata uang.
- Variabel integer id {get;set;} : untuk data id tanggal database local phone.
- Variabel string tanggal {get;set;} : untuk data tanggal dari database local phone.
- Variabel string pupi {get;set;} : untuk data tanggal dari Yahoo Finance.
- Variabel string semua {get;set;} : untuk data jenis mata uang beserta nilai kursnya yang berasal dari database local phone. - Variabel string a1 {get;set;} : untuk data jenis mata uang asal
yang sudah dipilih user.
- Variabel string a2 {get;set;} : untuk data jenis mata uang tujuan yang sudah dipilih user.
- Variabel double h3 {get;set;} : untuk data nominal yang diinput user.
3.3.2 Perancangan View
View merupakan bagian yang menangani presentation logic.
View berfungsi untuk menerima dan merepresentasikan data kepada
user. Bagian ini memiliki akses langsung terhadap bagian Model
yang berhubungan dengna data. Pada aplikasi ini bagian View berisi user interface. Desain yang dilakukan pada bagian View
dikelompokkan dalam class-class untuk lebih memudahkan lagi dalam pengembangan, yaitu:
- Class dataKursUI: user interface data kurs yang merupakan tampilan awal dari aplikasi. Rancangan user interface data kurs terlihat pada Gambar 3.9.
Gambar 3.9 Rancangan User Interface Data Kurs
Gambar 3.10 Rancangan User Interface Konversi
Gambar 3.11 Rancangan User Interface Melihat Kurs
3.3.3 Perancangan Controller
Controller merupakan bagian yang mengatur hubungan antara
bagian model dan bagian view. Controller berfungsi untuk menerima request dari user kemudian menentukan apa yang akan diproses oleh
aplikasi. Class controller yang dibuat dalam aplikasi ini yaitu : - PengelolaanDataKursController, berfungsi untuk mengatur
proses download dan update data kurs.
- KonversiController, berfungsi untuk menampilkan seluruh jenis mata uang dan menangani proses konversi.
- MelihatKursController, berfungsi untuk menampilkan nilai kurs rupiah pada berbagai jenis mata uang.
3.4 Metode Pengujian Sistem
output yang dihasilkan apakah sesuai dengan input atau tidak,
sehingga dapat diketahui apakah sistem berfungsi dengan benar atau tidak. Black box testing akan menguji aplikasi untuk mengidentifikasi kesalahan-kesalahan antara lain sebagai berikut: - Fungsi-fungsi yang salah atau hilang.
- Kesalahan interface.