8
3
User Interface Prototyping, menggambarkan prototype desain antarmuka untuk pengguna.
4
Architecture and Component Design, membuat desain model arsitektur dan komponen dari sistem. Desain perangkat lunak merupakan tahapan untuk menerjemahkan keinginan user menjadi desain teknis yang siap diimplementasikan oleh programmer.
5
6
Pengimplementasian persamaan pada model multimarket harus diubah ke model linier terlebih dahulu. Hal ini bertujuan memudahkan pengolahan dan pemodelan. Untuk membentuk persamaan linier tersebut, penulis dibantu oleh seorang dosen dari Departemen Matematika IPB dan seorang dosen dari Departemen Ilmu Ekonomi IPB. Hasil linearisasi tersebut kemudian diimplementasikan dalam beberapa kasus multimarket dengan menggunakan Microsoft Excel. Penulis kemudian menulis kode program berdasarkan model multimarket yang sudah diimplementasikan ke dalam Excel tersebut. Hasil dari persamaan linier tersebut setelah diimplementasikan dalam kode program. 7
System Test, dalam pengujian ini penulis menggunakan pendekatan secara white box dan black box. Untuk menguji keakuratan hasil, sistem ini diuji dengan menggunakan lima kasus, antara lain:
Kasus 4: Rice, Corn, Chicken, Duck, Poultry Feed.
Kasus 5: Rice, Corn, Chicken, Cows, Duck, Goat, Poultry Feed, Livestock Feed.
Kemudian, hasil dari sistem baru akan akan dibandingkan dengan hasil pengolahan menggunakan sistem yang lama. Penghitungan keakuratan hasil perangkat lunak ini akan dibantu oleh beberapa pakar makroekonomi dari LPPM InterCAFE.
Architecture and Component Prototyping, membuat dokumen teknis yang mengandung empat atribut sebuah program yaitu struktur data, arsitektur perangkat lunak, representasi antar muka, dan algoritme. Implementation, mengimplementasikan hasil perancangan ke dalam kode program atau biasa disebut dengan coding.
Untuk evaluasi usability dari sistem, penulis menggunakan kuesioner. Poin pertanyaan akan diperoleh dari kriteria evaluasi heuristik. Penulis akan menggunakan 10 orang koresponden. 8
Operation and Maintenance, Perangkat lunak yang telah lolos uji diimplementasikan dan disertai dengan dukungan pelatihan penggunaan, dan sebagainya.
HASIL DAN PEMBAHASAN Requirements Analysis Pengguna dari sistem ini adalah para peneliti dan mahasiswa. Untuk mengetahui karakteristik dan kebutuhan pengguna, penulis melakukan wawancara kepada 2 orang pakar model multimarket dan 3 orang asisten peneliti yang biasa menggunakan model multimarket. Berdasarkan hasil wawancara tersebut, dapat dilihat bahwa pengguna sudah terbiasa menggunakan sistem konvensional dalam melakukan simulasi menggunakan Microsoft Excel. Karena itu, prosedur simulasi sistem ini diimplementasikan berdasarkan sistem lama. Pengguna membutuhkan sebuah sistem yang memudahkan dalam memanipulasi nilai yang sudah dimasukkan, memudahkan penghitungan variabel, dapat disimpan dan dilanjutkan di lain waktu. Pakar multimarket sendiri lebih membutuhkan sistem yang mampu memanipulasi persamaan-persamaan multimarket yang digunakan.
Kasus 1: Rice, Corn, Chicken, Cows, Duck, Goat, Poultry Feed, Livestock Feed.
Kasus 2: Rice, Chicken, Cows, Duck, Goat, Poultry Feed, Livestock Feed.
Langkah-langkah berikut menggambarkan tahapan yang harus dilakukan untuk melakukan simulasi secara konvensional.
Kasus 3: Corn, Chicken, Cows, Duck, Poultry Feed, Livestock Feed.
1 Pengisian komoditas dan karakteristik. 2 Pengisian komoditas eksogenus.
endogenus
dan
9
3 Pengisian household. 4 Pembuatan tabel pengisian nilai (berdasarkan karakteristik). 5 Pengisian nilai komoditas. 6 Penghitungan parameter. 7 Pembuatan blok data matriks. 8 Pembuatan eksogenus.
matriks
endogenus
dan
9 Melakukan simulasi. Pada sistem yang lama, langkah yang pertama dilakukan ialah menentukan komoditas utama, komoditas perantara, household, dan penentuan karakteristik. Hal ini dilakukan pertama karena karakteristik akan menentukan cara pengisian data. Proses pembuatan tabel (langkah ke-4) bertujuan memudahkan pengisian nilai. Pada proses ini (langkah ke-4), peluang terjadinya human error sangat besar, karena jumlah tabel yang yang dihasilkan cukup banyak dan pembuatan tabel dilakukan secara manual berdasarkan karakteristik dari suatu komoditas. Contohnya, simulasi yang melibatkan 12 komoditas dan 2 household (rumah tangga) bisa menghasilkan 40 tabel. Pada tahap ini, perubahan struktur suatu tabel bis a berdampak terhadap kesalahan pada perhitungan parameter di proses selanjutnya. Hal ini disebabkan pembangkitan parameter masih memanfaatkan formula yang disediakan oleh Microsoft Excel sehingga jika nilai cell yang digunakan sebagai rujukan dalam pembangkitan parameter berubah, nilai parameter akan menyesuaikan dengan perubahan tersebut. Jika jumlah komoditas yang dilibatkan sangat banyak, hal ini juga akan berdampak terhadap semakin sulitnya pengguna untuk melakukan perubahan terhadap suatu nilai. Hal ini disebabkan jika komoditas yang dilibatkan banyak, secara otomatis tabel yang dihasilkan akan banyak juga. Ketika tabel yang dihasilkan sangat banyak, pencarian lokasi dari suatu cell akan memerlukan waktu yang lebih lama. Seluruh data dimasukkan secara manual ke dalam Microsoft Excel. Letak nilai-nilai tersebut disesuaikan dengan tabel yang telah dibuat pada proses sebelumnya (langkah ke4). Perhitungan parameter dilakukan secara manual dengan cara memasukkan formula ke dalam cell dari Microsoft Excel.
Pembuatan blok matriks dilakukan untuk memudahkan pengisian matriks endogenus dan matriks eksogenus. Model multimarket memiliki input nilai yang sangat dinamis. Salah satu contohnya sebuah komoditas. Komoditas ialah suatu objek atau jasa yang memiliki nilai. Sebuah komoditas bisa memiliki karakteristik yang berbeda-beda yang mengakibatkan nilai yang dibutuhkan pun berbeda. Sebuah komoditas juga bisa memiliki nilai komoditas endogenus dan eksogenus dan untuk setiap komoditas tersebut memiliki komoditas pesaing dan komoditas input tersendiri. Sistem ini membutuhkan sebuah database agar simulasi yang sedang dikerjakan bisa dilanjutkan di lain waktu. Desain struktur data memerlukan perhatian khusus, karena dalam sekali pembuatan matriks, record yang dihasilkan bisa mencapai ratusan. Database nantinya akan sering diakses oleh sistem. Oleh karena itu, dibutuhkan suatu skema yang memudahkan sistem dalam pencarian data yang dibutuhkan. Requirements Definition Hasil dari Requirements Definition ialah: 1 Sistem yang mampu menambah, mengubah, dan menghapus jenis komoditas (RD-01). 2 Sistem yang mampu menambah, mengubah, dan menghapus jenis household (RD-02). 3 Sistem yang mampu menambah, mengubah, dan menghapus nilai komoditas utama (RD-03). 4 Sistem yang mampu menambah, mengubah, dan menghapus nilai komoditas perantara (RD-04). 5 Sistem yang mampu menambah, mengubah, dan menghapus nilai household (RD-05). 6 Sistem yang mampu parameter ( RD-06).
menghitung
7 Sistem yang mampu membangkitkan matriks endogenus dan eksogenus (RD07). 8 Sistem yang mampu melakukan simulasi (RD-08). 9 Sistem yang mampu memanipulasi proyek yang sedang dikerjakan (RD-09).
10
Actor dan use case ditentukan atas dasar kebutuhan fungsi. Kebutuhan fungsi ini diakomodir di use case. Selanjutnya use case menyediakan nilai hasil kepada actor. Atas dasar spesifikasi tersebut maka dihasilkan 1 actor dan 9 use case yang dapat dilihat pada Gambar 3. Multimarket Express 1. Manipulasi Komoditas
«extends»
1.1 Mnaipulasi Karakteristik Komoditas
*
2. Manipulasi Household
* **** *
***
*
Pengguna
3. Manipulasi Nilai Komoditas Utama
*
*
8. Simulasi *
4. Manipulasi Nilai Komoditas Perantara
9. Modifikasi Project
* * 5. Manipulasi Nilai Household
User Interface Prototyping User Interface prototyping membantu penulis menjelaskan sistem yang akan dibangun. Prototyping yang disajikan masih dalam bentuk mock up. Karakteristik pengguna sistem ini adalah peneliti atau mahasiswa yang telah terbiasa menggunakan perangkat lunak spreadsheet, sehingga cara pengisian nilai pada software ini didesain menggunakan tabel-tabel. Nilai dari tabel-tabel tersebut bisa diisi dengan cara copy-paste dari Excel. Karakteristik lain dari penggguna sistem ini adalah pengguna yang memiliki latar belakang pendidikan di bidang ekonomi atau telah lama bergelut di bidang ekonomi sehingga penggunaan istilah dalam sistem ini menggunakan istilah ekonomi.
* 6. Generate Parameter
* 7. Membuat Matrix Endogenus dan Exogenus
Gambar 3 Use case diagram Multimarket Express. Pada Gambar 4 dijelaskan class diagram untuk sistem secara keseluruhan. 1
1..*
Komoditas -ID Komoditas -Info -Karakteristik -Input Endogenus -Kompetitor Endogenus -Input Exogenus -Kompetitor Exogenus
Matriks_Utama -ID Matriks -Kode Matriks -Nama Matriks -Info Matriks -ID Komoditas
Household -ID Household -Info -Indek
1
Warna utama yang digunakan pada sistem ini adalah warna abu-abu (red = 172, green = 172, blue = 172). Tidak digunakannya warnawarna tajam agar pengguna, terutama yang berusia lanjut tidak cepat mengalami kelelahan pengelihatan. Kombinasi warna perak dan hitam agar kontras pada teks tetap terjaga. Hasil dari User Interface Prototyping yaitu: a Saat sistem pertama kali dijalankan, welcome screen akan aktif (Gambar 5). Pengguna harus memilih salah s atu opsi yang ada. Pilihan yang tersedia antara lain: Exit, Run Wizard, New, Open, dan Continue.
1 1
1..* 1..* 1..* Konten_Matriks -ID Konten -ID Matriks -ID Komoditas -ID Household -Nilai
Gambar 4 Class diagram Multimarket Express. Pada gambar di atas, dijelaskan bahwa sebuah komoditas bisa memiliki banyak matriks dan banyak konten matriks. Class Matriks_Utama berisi deskripsi dari sebuah matriks, sedangkan Konten_Matriks berisi nilai dari matriks tersebut. Nilai Konten matriks memiliki hubungan dengan komoditas, household, dan matriks_utama.
Gambar 5 Mockup form startup. b Setelah Pengguna memilih salah satu menu, maka menu utama akan diaktifkan. Menu ditampilkan pada Lampiran 1. Menu utama dikategorikan menjadi enam menu, dengan satu menu simulasi yang tidak aktif. Enam menu tersebut yaitu File, Input, Window, Simulation, Help, dan Build. Menu
11
File berisi fungsi-fungsi yang berhubungan dengan file proyek. Seluruh nilai yang harus dimasukkan pengguna dikategorikan dalam menu input. Menu Window memudahkan pengguna saat bekerja dengan beberapa form dalam waktu yang bersamaan. Menu Simulation yang berada dalam kondisi disable menunjukkan bahwa pengguna belum bisa melakukan simulasi karena data yang dibutuhkan belum lengkap. Menu Help berisi dokumentasi sistem dan keterangan tentang pengembang sistem. c Setelah itu, pengguna harus menentukan seluruh komoditas dan household (Gambar 6 dan 7). Tampilan input karakteristik komoditas menggunakan checklist box agar pengguna bisa memilih lebih dari satu karakteristik dalam waktu yang bersamaan. Daftar seluruh komoditas yang telah dimasukkan ditampilkan menggunakan listview yang berada di sebelah kiri, agar ruang untuk menampilkan listview menjadi lebih panjang sehingga komoditas yang ditampilkan dalam satu waktu dapat lebih banyak dan menghindari scrolling.
komoditas perantara menggunakan tab agar dengan sekali memilih komoditas, pengguna bisa mengubah seluruh nilai yang ada.
Gambar 8 Mockup form pengisian nilai komoditas utama.
Gambar 9 Mockup form pengisian nilai komoditas perantara.
Gambar 6 Mockup form jenis komoditas. Gambar 10 Mockup form pengisian nilai income household. e Parameter dan matriks dibangkitkan dengan menggunakan menu “Build” yang ada di menu utama (Gambar 11).
f Simulasi bisa dilakukan jika matriks
Gambar 7 Mockup form jenis household. d Setelah komoditas dan household dipilih, pengguna harus mengisi nilai dari komoditas dan household (Gambar 8, 9, dan 10). Antarmuka pengisian nilai komoditas utama dan
berhasil dibangkitkan. Antarmuka untuk form simulasi terdiri atas dua tabel. Tabel-tabel tersebut berfungsi sebagai tabel input dan tabel output. Agar tampilan output lebih menarik, pengguna bisa menampilkan hasil simulasi dalam bentuk grafik dengan menekan tombol graph yang berada pada kiri atas form. Hasil simulasi dapat diekspor menjadi file
12
Microsoft Excel dengan menggunakan tombol yang berada di sebelah “view graph” (Gambar 12). Form grafik bisa menampilkan dua grafik pada saat bersamaan (Gambar 13). Tampilan ini digunakan untuk memudahkan pengguna mengingat nilai apa yang telah diubah sebelumnya. Untuk melihat detail nama dan nilai salah satu titik, pengguna hanya perlu meletakkan cursor di atas titik yang diinginkan. Nilai akan dari titik tersebut akan tampil. Untuk menghilangkan grafik input, pengguna tinggal menekan tombol “hide shock ” yang berada pada kiri atas.
Gambar 11 Mockup form build matriks .
Gambar 12 Mock up form simulasi.
Gambar 13 Mockup form grafik. Architecture and Component Design and Prototyping Pada perancangan Architecture and Component dari sistem, akan dikembangkan menggunakan konsep OOP. Koneksi ke pangkalan datanya sendiri menggunakan konsep Data Acess Object (DAO).
Alasan digunakan OOP adalah untuk kemudahan dalam pengelolaan dan perbaikan sistem. Data Access Object (DAO) digunakan karena kode dipisahkan berdasarkan fungsinya sehingga kode yang lainnya hanya perlu mengetahui secara abstrak cara mengakses data tanpa perlu mengetahui bagaimana akses ke sumber data diimplementasikan. Kelebihan dari menggunakan DAO ini adalah fungsi yang berhubungan dengan database terpisah dengan fungsi untuk membuat tampilan dan controller, sehingga pengubahan kueri untuk mengakses database menjadi lebih mudah. Proses pengiriman pesan setiap objek dijelaskan dengan menggunakan sequence diagram. Akan tetapi, untuk saat ini, karena diagram yang sangat banyak, akan dibahas beberapa proses yang penting untuk diperhatikan. Sequence diagram untuk startup bisa dilihat pada Lampiran 2. Pada proses startup program, hal yang pertama dilakukan adalah mengecek validasi ke class koneksi database. Jika database tersebut valid, tombol “continue” akan aktif. Selanjutnya, jika pengguna menekan tombol open, dialog open file akan muncul. Jika database yang dipilih pengguna valid, proses bisa dilanjutkan. Jika pengguna menekan tombol “Run Wizard”, sistem akan melakukan validasi terhadap database yang aktif. Jika database valid, form wizard akan dimunculkan. Proses penambahan komoditas dari Form Komoditas Utama dapat dilihat pada Lampiran 3. Sequence diagram untuk proses penyimpanan nilai dari komoditas utama dapat dilihat pada Lampiran 4. Dari gambar tersebut, dijelaskan bahwa untuk melihat nilai dari suatu komoditas, sistem harus memperoleh karakteristik dari komoditas tersebut lebih dulu, kemudian tabel yang ditampilkan akan disesuaikan dengan karakteristik yang dimiliki. Sebelum melakukan simulasi, sistem akan menampilkan dua tabel, yaitu tabel input dan output. Tabel input berfungsi sebagai tabel mengisi nilai simulasi dan tabel output berfungsi menampilkan nilai hasil simulasi. Nilai dari tabel input yang sudah diisi oleh pengguna akan dikenal sebagai nilai dari matriks eksogenus. Setelah nilai matriks eksogenus diperoleh, dilanjutkan dengan pengolahan matriks dengan dengan memanfaatkan class Matriks_Function. Hasil dari pengolahan matriks tersebut dijadikan sebagai hasil simulasi dan kemudian
13
iii Income
ditampilkan dalam tabel output. Sequence diagram untuk fungsi simulasi bisa dilihat pada Lampiran 5.
Data yang harus dimasukkan terkait income block , yaitu:
Sistem terdiri atas serangkaian proses yang terurut. Secara garis besar, proses akan dibagi menjadi dua.
Total penerimaan setiap rumah tangga yang berasal dari komoditas yang dianalisis dalam model.
1 Proses pengisian nilai
Total penerimaan setiap rumah tangga dari semua aktivitas yang dilakukannya, baik dari aktivitas yang ada di dalam model maupun di luar model (besar GDP yang disumbangkan oleh masing-masing kelompok rumah tangga).
Proses pengisian nilai terdiri atas beberapa proses, yaitu: a) Inisialisasi komoditas dan houshold. Yaitu proses penentuan jumlah komoditas household beserta karakteristiknya. Karakteristik yang disediakan, antara lain: Main Comodity, Intermediate Comodity, Landshare and Productivity, Supply Response, Animal Consumption, Human Consumption, Tradeable, Rest of Economics, Import Quota’s, Export Quota’s, Net Importer, dan Net Exporter. b) Pengisian nilai household.
komoditas
dan
Penghitungan parameter
Penghitungan parameter adalah proses membangkitkan nilai-nilai yang dibutuhkan oleh matriks. Perhitungan ini dilakukan oleh sistem dengan menggunakan nilai-nilai yang sudah dimasukkan oleh pengguna di tahap sebelumnya. d) Pembuatan matriks
Proses input data dibagi menjadi tiga bagian, yaitu: i Main Comodity Nilai yang harus dimasukkan adalah: a Input Endogenus b Input Exogenus c Price Block Data yang harus dimasukkan di Price Block adalah World Price, Border Price, Consumer Price, Producer Price, Export tax, Import tax, dan Subsidy. d Land Productivity (hanya untuk komoditas yang menggunakan lahan). e Land Share (hanya untuk komoditas yang menggunakan lahan). f Supply Block (hanya komoditas yang tidak gunakan lahan).
c)
untuk meng-
g Final Demand. ii Intermediate Comodity Nilai yang harus dimasukkan untuk intermediate comodity adalah: Input Comodity, Leontif Function, dan Demand.
Pembuatan matriks dilakukan setelah semua data lengkap. Nilai dari setiap vektor diambil dari nilai-nilai input dan parameter-parameter yang sudah inisialisasi dan kemudian meletakkannya sesuai dengan posisinya. Matriks yang dibuat adalah matriks endogenus dan eksogenus. Setelah matriks dibuat, matriks akan disimpan dalam RAM. Proses yang terjadi dapat digambarkan sebagai activity diagram yang terlihat pada gambar yang terlampir pada Lampiran 6. 2 Proses simulasi Proses simulasi dilakukan setelah proses pengisian nilai selesai. Proses simulasi terdiri dari beberapa proses, antara lain: a)
Proses pengisian nilai shock
Nilai yang akan dimasukkan di sini adalah nilai simulasi untuk satu atau beberapa komoditas. Nilai-nilai ini kemudian akan dikenal sebagai sebuah matriks oleh perangkat lunak. b)
Proses pengolahan matriks
Proses ini yaitu melakukan pengolahan matriks antara matriks nilai simulasi dengan matriks persamaan yang dilakukan di awal.
14
c)
Proses menampilkan hasil
Hasil dari pengolahan matriks akan ditampilkan dalam bentuk tabel perbandingan antara nilai awal dengan nilai setelah dilakukan simulasi. Hasil akhir dari sistem adalah nilainilai hasil dari simulasi yang dilakukan pengguna. Agar lebih efektif, hasil simulasi juga bisa ditampilkan dalam bentuk chart. Implementation Sistem ini dibuat menggunakan bahasa pemrograman VB.net. IDE yang digunakan adalah Visual Studio 2010. Agar database bisa fleksibel, maka DBMS yang digunakan ialah Microsoft Access. Untuk pembuat grafik output simulasi, sistem ini menggunakan library dari ZenGraph. Teknik pemrograman yang digunakan ialah object oriented programming. Fungsi untuk mengakes database dipisahkan menjadi layer tersendiri yang dinamakan Data Access Object (DAO). Lokasi database disimpan dalam satu file tersendiri yang dinamakan “dbConnection.conn”. Lokasi database disimpan terpisah agar pengguna bisa melihat database mana yang sedang digunakan walaupun sistem tidak dijalankan. Parameter dibangkitkan dengan memanfaatkan fungsi multithreading pada VB.net. Beberapa parameter yang dibangkitkan yaitu: Supply Elasticity, Total Demand,
Import Margin, Export Margin, Koefisien Matriks untuk Productivity Response, Koefisien Matriks untuk Productivity Response, Share Income, dan Demand Ratio. Proses pembuatan matriks dibuat dengan menggunakan array. Penulis tidak menggunakan teknik linked list karena linked list tidak menyediakan fitur 2 dimensi seperti yang diberikan oleh array. Pada proses pengolahan matriks, fungsi yang digunakan adalah fungsi untuk melakukan pengolahan matriks dalam bentuk array 2 dimensi. Tipe data yang digunakan untuk menyimpan nilai dalam matriks adalah double karena data yang digunakan dalam bentuk bilangan desimal. Untuk proses pembangkitan matriks endogenus dan eksogenus memanfaatkan fungsi multithreading yang disediakan VB.Net. Matriks endogenus dan eksogenus dibangkitkan dengan menggunakan persamaan model multimarket yang telah diliniearisasi. Proses linearisasi dikerjakan oleh para peneliti di InterCAFE dan seorang dosen dari Departemen Matematika IPB. Penulis tidak menampilkan persamaan hasil linearisasi karena proses linearisasi dilakukan dengan mengimplementasikan langsung ke kasus-kasus multimarket. Untuk membangkitkan matriks, terlebih dahulu harus diketahui daftar komoditas utama, komoditas perantara, dan household. Agar lebih mudah untuk untuk diakses kembali, penulis menyimpan daftar komoditas utama, komoditas perantara dan household tersebut dalam sebuah objek yang
Gambar 14 Struktur fisik database Multimarket Express.
15
disimpan dalam memori. Langkah selanjutnya ialah membangkitkan nama kolom dan nama baris dari matriks endogenus dan eksogenus yang kemudian akan dijadikan identifier. Nama kolom dan nama baris yang sudah dibangkitkan akan disimpan dalam sebuah array. Daftar nama baris dan nama kolom yang berhasil dibangkitkan kemudian disimpan sebagai sebuah atribut dari “Form_Utama” yang bersifat public. Nama kolom dan nama baris yang telah dibangkitkan akan dijadikan acuan dalam membuat matriks endogenus dan eksogenus. Setiap nama baris dan kolom memiliki arti nilai apa yang akan disimpan ke dalam matriks. Contohnya baris matriks endogenus yang pertama bernama “Equilibrium Rice” dan kolom matriks endogenus yang pertama bernama “Quantity_Supply Rice”. Jika “Equilibrium Rice” bertemu dengan “Quantity_Supply Rice”, kata “Rice” pada “Equilibrium Rice” akan dikenal sebagai nama komoditas. Berdasarkan karakteristik dari “Rice”, jika “Rice” merupakan jenis barang tradeable dan barang impor, nilai yang disimpan ke dalam matriks adalah -1. Nilai -1 diperoleh dari persamaan hasil linearisasi model multimarket yang dilakukan oleh peneliti di InterCAFE. Matriks endogenus dan eksogenus yang berhasil dibangkitkan disimpan sebagai sebuah atribut dari “Form_Utama” yang bersifat public. Proses simulasi diawali dengan menciptakan tabel untuk memasukkan nilai “shock ” dan tabel untuk menampilkan hasil simulasi. Proses pembuatan tabel untuk memasukkan nilai “shock ” diperoleh dari nama kolom matriks eksogenus yang sudah dibangkitkan pada proses sebelumnya. Proses pembuatan tabel untuk menampilkan nilai hasil simulasi diperoleh dari nama kolom matriks endogenus. Selanjutnya adalah melakukan inversi matriks endogenus. Setelah tabel untuk memasukkan nilai “shock ” dan tabel untuk menampilkan hasil simulasi berhasil diciptakan, pengguna dapat memasukkan nilai “shock” dan melakukan simulasi. Nilai “shock ” yang dimasukkan pengguna kemudian dideklarasikan sebagai matriks input. Proses simulasi dilakukan dengan cara mengalikan matriks eksogenus dengan matriks input. Hasil perkalian tersebut
disimpan dengan nama matriks_exo_input. Untuk memperoleh hasil akhir, matriks_exo_input harus dikalikan dengan matriks endogenus yang telah diinvers i. Hasil perkalian tersebut yang akan ditampilkan sebagai matriks hasil simulasi. Spesifikasi perangkat keras yang digunakan dalam proses pengimplementasian adalah notebook dengan prosesor Intel Core i5, RAM 6 GB, dan VGA 1.696 MB. Dari hasil analisis sistem, penulis membuat database yang terdiri atas 11 tabel. Struktur fisik tabel yang digunakan dapat dilihat pada Gambar 14. System Test Pengujian secara black box dilakukan dengan menguji fungsi-fungsi tertentu pada sistem. Hasil pengujian secara black box dapat dilihat pada Lampiran 8. Pengujian keakuratan hasil dilakukan dengan menghitung rata-rata selisih dari variabelvariabel yang memiliki hasil berbeda. Misalkan, contoh kasus satu diperoleh 155 variabel output hasil simulasi. Dari 155 variabel tersebut, terdapat 143 variabel yang memiliki hasil output yang berbeda dengan simulasi yang dilakukan dengan Excel. Total selisih perbedaan tersebut ialah 0.0814 sehingga rata-rata selisih perbedaan variabelvariabel tersebut ialah 0.0005 atau 0.0569%. Tabel 1 Hasil simulasi software Contoh kasus Rata-rata selisih Test software 1
0.0569%
Test software 2
0.0761%
Test software 3
0.1470%
Test software 4
0.0893%
Test software 5
3.0579%
Rata-rata
0.6855%
Berdasarkan hasil simulasi pada Tabel 1 diperoleh rata-rata selisih perbedaannya adalah 0.68%. Terjadi perbedaan sebesar disebabkan adanya perbedaan 0.68% pembulatan nilai-nilai yang dibuat oleh sistem yang dibangun dengan Excel. Pengujian lain yang telah dilakukan yaitu pengujian white box. Fungsi-fungsi yang diuji secara white box hanya fungsi-fungsi yang dianggap perlu mendapat perhatian oleh penulis. Hasil pengujian white box dapat dilihat pada Lampiran 9. Pada pengujian ini, penulis tidak menampilkan nilai input yang
16
digunakan untuk menguji fungsi karena nilai input fungsi berupa matriks dua dimensi yang jika ditampilkan akan membutuhkan halaman yang banyak. Contohnya yaitu pengujian dengan menggunakan matriks kasus satu. Matriks yang dihasilkan adalah matriks dengan ordo 155 x 155, yang jika penulis tampilkan akan membutuhkan 24025 baris. Fungsi pertama yang diuji ialah fungsi Perkalian Matriks. Best case pada fungsi ini adalah saat fungsi hanya memproses 4 baris kode program, yaitu 1, 2, 14, dan 17. Worst case pada fungsi ini adalah saat fungsi memproses 14 baris kode program, yaitu 1, 2, 3, 4, 5, 6 ,7 , 8, 9, 10, 11, 12, dan 17. Worst case terjadi jika nilai matriks yang dikirimkan melalui variabel fungsi memiliki ordo yang tidak mendukung perkalian atau salah satu matriks ada yang memiliki nilai nol. Fungsi kedua yang diuji secara white box adalah fungsi Inversi Matriks. Best case pada fungsi ini adalah saat fungsi hanya memproses 4 baris kode program, yaitu 1, 2, 3, dan 42. Worst case pada fungsi ini adalah saat fungsi ini adalah saat fungsi memproses 38 baris program, yaitu 14. 1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, dan 42. Tabel 2 Hasil kuesioner 10 koresponden Pertanyaan
Jumlah A
Jumlah B
Jumlah C
Total
No. 1
8
0
2
10
No. 2
6
0
4
10
No. 3
5
1
4
10
No. 4
7
1
2
10
No. 5
5
1
4
10
No. 6
6
0
4
10
No. 7
7
0
3
10
No. 8
8
0
2
10
No. 9
6
2
2
10
No. 10
0
10
0
10
Total 58% 15% 27% 100% Keterangan: A = memuaskan B = tidak memuaskan C = cukup memuaskan Untuk pengujian kemudahan penggunaan, penulis menggunakan kuesioner. Kuesioner yang disebar kepada 10 koresponden. Koresponden terdiri atas 2 peneliti dari InterCAFE, 3 asisten peneliti dari InterCAFE,
3 mahasiswa ilmu ekonomi, dan 2 koresponden dari mahasiswa ilmu komputer. Soal poin satu (Visibility of system status), 80% koresponden memberikan nilai baik. Poin dua (Match between system and the real world), 40% koresponden merasa kurang, karena sistem ini menggunakan istilah-istilah ekonomi dan evaluator yang memberikan penilaian kurang adalah evaluator yang tidak memiliki latar belakang ekonomi sehingga mengalami kesulitan saat memahami istilah seperti komoditas, household, endogenus, eksogenus, dan lain lain. Poin tiga (User control and freedom), sebagian evaluator tidak puas karena sistem aplikasi ini tidak memiliki fungsi “undo”. Poin empat (Consistency and standards), 70% koresponden merasa puas, akan tetapi ada koresponden yang mengatakan tidak puas. Hal ini kemungkinan karena ada beberapa ikon baru yang digunakan penulis yang tidak umum dan tidak diberikan keterangan. Poin lima (Error prevention), 50% koresponden merasa puas. 40% mengatakan cukup. Hal tersebut karena penulis tidak menampilkan pesan konfirmasi di semua fungsi. Pesan konfirmasi hanya ditampilkan pada event yang dinilai penting oleh penulis. Pada poin enam (Recognition rather than recall), 60% koresponden merasa puas. Sebagian evaluator mengatakan cukup. Evaluator yang terbiasa dengan dengan sistem yang lama akan lebih cepat mengingat langkah-langkah yang dilakukan, karena sistem yang dibangun memiliki langkah-langkah yang mirip dengan sistem yang lama. Poin tujuh (Flexibililty and efficiency of use), 70% koresponden memberikan nilai puas. Poin delapan (Aesthetic and minimalist design), sebagian evaluator puas. Poin sembilan (Help users recognize, diagnose, and recover from errors), sebagian besar evaluator memberikan nilai cukup. Ada 20% koresponden mengatakan tidak puas, karena beberapa pesan error ditampilkan tanpa disertai langkah untuk mengantisipasi error. Poin sepuluh (Help and documentation), evaluator tidak puas, karena dokumentasi tentang sistem ini belum disediakan. Poin terakhir yaitu tentang kepuasan dan kemudahan dalam menggunakan sistem yang dibangun penulis dilakukan dengan tes wawancara. Dilakukan dengan tes wawancara karena pada lembar evaluasi yang diberikan, penulis tidak menanyakan kemudahan dan kepuasan evaluator dalam menggunakan sistem. Hasil dari wawancara tersebut, enam