Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
PENGUJIAN PERANGKAT LUNAK GUI-VSOP UNTUK MENDUKUNG ANALISIS NEUTRONIK REAKTOR NUKLIR
1,2
Khairina Natsir1, Nursinta Adi Wahanani2 Pusat Teknologi dan Keselamatan Reaktor Nuklir, Badan Tenaga Nuklir Nasional, Serpong email:
[email protected],
[email protected]
ABSTRACT Software testing is an investigation conducted to obtain information about the quality of the software being tested. Software testing will give an objective and independent views on the software which will be useful in understanding the level of risk in its implementation before the software used. The objective of this research is to test the GUI-VSOP interface software that processes the VSOP output related to neutronic aspects. Tests was carried out using the Blackbox method. The functions tested include all functions that support the values of neutronic aspects, namely k-eff, burn-up and mass of Pu-239 and Pu-241. The result shows the suitability of the software interface with user needs that facilitate the neutronic analysis and availability of documentation of test results that inform the suitability of the software under test with predetermined specifications. Based on the test results it can be concluded that the software GUI-VSOP deserve to be used to support the neutronic aspects of nuclear reactor safety analysis. Keywords: Software testing, GUI-VSOP, neutronic, Blackbox method PENDAHULUAN Pengujian perangkat lunak adalah proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk menguji apakah perangkat lunak sudah memenuhi persyaratan atau belum[1]. Dengan kata lain, pengujian adalah aktivitas untuk menginvestigasi dan menentukan perbedaan antara hasil yang diharapkan dengan hasil sebenarnya[2]. Tujuan pengujian perangkat lunak adalah menilai apakah perangkat lunak yang dikembangkan telah memenuhi kebutuhan pemakai, menilai apakah tahap pengembangan perangkat lunak telah sesuai dengan metodologi yang digunakan, dan membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan[3]. Perangkat lunak VSOP[4] adalah suatu sistem kode yang saling terintegrasi untuk mensimulasikan riwayat hidup reaktor nuklir yang dikhususkan untuk pembelajaran dan penelitian. Proses perhitungan yang dapat dilakukan VSOP yaitu, perencanaan disain bahan bakar reaktor, penaksiran spektrum neutron, perhitungan difusi 2 atau 3 dimensi, daur bahan bakar, perkiraan biaya bahan bakar, dan termal hidrolik. VSOP mampu mengikuti riwayat hidup reaktor dari pertama kali aktif sampai ke fase equilibrium cycle. VSOP dapat digunakan untuk studi perbandingan reaktor dan simulasi keselamatan. VSOP dapat digunakan untuk semua jenis reaktor termal, termasuk reaktor berukuran kecil yang dikembangkan untuk pembangkit listrik modular atau pemanfaatan energi panas. Perangkat lunak GUI-VSOP adalah perangkat lunak berbasis Graphical User Interface (GUI) yang dikembangkan untuk mempermudah pengguna dalam menggunakan kode VSOP. Pengguna dari dokumen pengujian adalah pengembang perangkat lunak GUI-VSOP (Very Superior Old Program). Tujuan dari penulisan dokumen pengujian adalah memberikan penjelasan mengenai pengujian yang telah dilakukan terhadap perangkat lunak GUI-VSOP, berupa gambaran umum hasil pengujian secara menyeluruh. Tujuan penelitian ini adalah melakukan pengujian terhadap perangkat lunak antarmuka GUI-VSOP yang mengolah keluaran paket program VSOP yang berkaitan dengan aspek neutronik. METODE PENELITIAN Pengujian software adalah sebuah proses formal yang dilakukan oleh tim pengujian khusus dimana unit perangkat lunak/beberapa unit perangkat lunak yang terintegrasi atau seluruh paket perangkat lunak diperiksa dengan menjalankan program pada komputer. Semua tes terkait ditunjukkan A-221
Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
sesuai dengan prosedur pengujian yang disetujui. Dalam pengujian perangkat lunak diidentifikasi kesalahan sebanyak mungkin dari perangkat lunak diuji, sehingga membawa perangkat lunak yang diuji pada kualitas yang memadai setelah koreksi kesalahan diidentifikasi dan dilakukan pengujian ulang. Ada dua teknik pengujian yang dapat digunakan untuk menguji perangkat lunak, yaitu teknik blackbox dan whitebox. Teknik blackbox digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Pada teknik ini, kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut. Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diiketahui kesalahan kesalahannya. Beberapa jenis kesalahan yang dapat diidentifikasi antara lain fungsi tidak benar atau hilang, kesalahan antar muka, kesalahan pada struktur data (pengaksesan basis data), kesalahan inisialisasi dan akhir program, serta kesalahan kinerja. Walaupun sulit untuk menelusuri kesalahan yang mungkin didapat, teknik pengujian blackbox lebih sering dipilih untuk menguji perangkat lunak karena kemudahan dalam pelaksanaannya. Teknik whitebox adalah pengujian untuk memperlihatkan cara kerja dari produk secara rinci sesuai dengan spesifikasinya[5]. Jalur logika perangkat lunak akan dites dengan menyediakan kasus uji yang akan mengerjakan kumpulan kondisi dan pengulangan secara spesifik. Sehingga melalui penggunaan metode ini akan dapat memperoleh kasus uji yang menjamin bahwa semua jalur independen pada suatu model telah digunakan minimal satu kali, penggunaan keputusan logis pada sisi benar dan salah, pengeksekusian semua loop dalam batasan dan batas operasional perekayasa, serta penggunaan struktur data internal guna menjamin validitasnya. Secara sekilas dapat diambil kesimpulan pendekatan pengujian whitebox mengarah untuk mendapatkan program yang 100% benar[6]. Dalam penelitian ini metode Blackbox sengaja dipilih sebagai metode pengujian mengingat perangkat lunak antarmuka yang dikembangkan masih bersifat parsial dan masih memerlukan pengembangan lanjutan, antara lain pengembangan antarmuka untuk mendukung analisis termalhidrolik, sehingga pengujian whitebox belum dapat diterapkan. Langkah-langkah yang digunakan dalam pengujian perangkat lunak GUI-VSOP dapat diperlihatkan pada flowchart pada Gambar.1 berikut ini :
Gambar 1. Prosedur Pengujian 1. Perangkat Keras Pengujian. Perangkat keras yang diperlukan untuk pengujian software GUI-VSOP ini adalah satu set komputer dengan spesifikasi: Processor: Intel® Pentium Dual Core, Memory: 1 GB DDR2, Harddisk 80 GB 2. Perangkat Lunak Pengujian. Perangkat lunak yang diperlukan untuk pengujian software GUI-VSOP pendukung analisis neutronik adalah: Microsoft®Windows 95/98/NT/2000/XP atau Linux®, Software Python 27 yang dilengkapi dengan wxpython, Software GUI_VSOP, dan output running VSOP (.txt) 3. Sumber Daya Manusia sebagai tim penguji. Persyaratan tim penguji yang akan terlibat dalam proses pengujian perangkat lunak ini adalah : Memahami konsep pemrograman dalam bahasa Phyton, memahami proses pengujian perangkat lunak VSOP, memahami permasalahan terkait neutronik reaktor nuklir. 4. Pelatihan Pelatihan. Penguji aplikasi ini hanya diberikan pengenalan lebih lanjut tentang python dan software VSOP. Pada dasarnya penguji telah memiliki pengetahuan tentang hal yang disebutkan sebelumnya tetapi pengenalan yang diberikan hanya bersifat penyegaran kembali. A-222
Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
5. Identifikasi Rencana pengujian. Identifikasi dan rencana pengujian yang dilakukan berdasarkan kepada fungsi-fungsi yang telah didefinisikan sebelumnya di dalam spesifikasi program[7]. Secara singkat, proses ini dijabarkan dalam Tabel 1 : Tabel 1. Identifikasi dan rencana pengujian
6. Material Pengujian. Tampilan awal GUI-VSOP terlihat seperti pada Gambar 2. Layar GUI-VSOP terbagi menjadi 3 bagian. Bagian sebelah kanan atas (View Output Files) digunakan untuk menampilkan hasil running program. Tahapan proses program VSOP secara keseluruhan terdiri dari 12 tahap. Bagian sebelah kanan atas (Computing Process) untuk menampilkan tahapan proses yang sedang dijalankan dan bagian bawah (Activity log), untuk mencatat aktivitas yang sedang dijalankan.
Gambar 2.Tampilan awal software GUI-VSOP A-223
Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
Pada sub menu Neutronic Analysis terdapat beberapa sub menu antara lain Load Output, Suhu, Resonansi, Day, keff , Burn-up, Pu, keff, U, Burn-up, Day, Pu, Burn-up, Pu, Day seperti terlihat pada Gambar 2. Sub menu Load Output digunakan untuk menampilkan output file VSOP. Output VSOP ini adalah sebuah text file yang berukuran besar dan sulit dianalisis. Perangkat lunak GUI-VSOP akan memilih nilai-nilai yang terkait analisis neutronik dan melakukan konversi tampilan text file tersebut kedalam bentuk tabel dan grafik agar mudah dianalisis. Sub menu yang tersedia berfungsi untuk menampilkan data terkait beserta grafiknya. Grafik yang dihasilkan diharapkan bisa mendukung analisis yang dibutuhkan. Layar pada submenu Neutronic Analysis terdiri dari 2 bagian. Bagian atas menampilkan hasil secara keseluruhan dan bagian bawah menampilkan data hasil filter.
Gambar 3. Submenu pada Neutronic Analysis Salah satu contoh hasil output berupa grafik ditunjukkan pada Gambar 4. Pada Gambar 4 tersebut menampilkan plot Burn-up vs keff dan plot Time(Days) vs keff. Pada grafik tersebut dilengkapi informasi jenis kernel, pengkayaan, radius partikel dan kernel density. Pada setiap plot dilengkapi deskripsi tentang grafik tersebut.
Gambar 4. Grafik hasil 7. Pelaksanaan Pengujian Setelah seluruh kelengkapan pengujian tersedia, tim penguji melakukan pengujian bersama-sama dengan pengembang perangkat lunak. Error yang terdeteksi kemudian dilakukan perbaikan dan dilakukan pengujian ulang. PEMBAHASAN Pengujian telah dilakukan untuk semua fungsi yang sudah dikembangkan pada modul Neutronic Analysis. Fungsi-fungsi yang sudah diuji tersebut terdiri dari: A-224
Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
Fungsi buka_file. Fungsi ini berperan untuk membuka file keluaran VSOP. Fungsi Suhu_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang suhu dan resonansi. Fungsi Burn-up_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang Day, Keff dan Burnup. Fungsi Pu_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang Pu dan Keff. Fungsi U_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang massa U-235, Burnup dan Day. Fungsi PuB_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang massa Pu234, Pu241 dan Burnup. Fungsi PuD_file. Fungsi ini berperan untuk menampilkan hasil keluaran VSOP tentang Pu234, Pu241 dan Day. Hasil pengujian untuk fungsi buka_file menunjukkan program berhasil mengarahkan user ke direktori output file VSOP. Kemudian user dipersilakan memilih output file yang diinginkan. Hasil pengujian menunjukkan bahwa program GUI-VSOP berhasil membuka output file yang dipilih pengguna secara benar. Contoh deskripsi hasil uji fungsi buka_file pada Sistem Operasi Microsoft Windows diperlihatkan pada Tabel 2 berikut ini: Tabel 2. Deskripsi hasil uji buka_file Identifikasi Spesifikasi-Fungsi buka_file Nama Kasus Uji Pengujian fungsi buka_file Deskripsi Menyaring dan menampilkan data secara keseluruhan Kondisi Awal Software sudah terbuka tapi masih berupa halaman kosong Tanggal 9 Desember 2013 Pengujian Penguji User Skenario: User mengklik tombol Load_Output Yang diharapkan Pengamatan Kesimpulan Muncul di layar perintah yang memandu Berhasil mengarahkan Ok user untuk menuju ke direktori dimana user ke direktori output output file VSOP berada. file VSOP Pengujian pada fungsi Suhu_file sistem berhasil menampilkan informasi suhu dan total resonansi dalam bentuk baris data dan grafik. Grafik yang ditampilkan sudah dilengkapi dengan informasi jenis kernel yang digunakan, pengkayaan, radius partikel dan kernel density. Pada pengujian fungsi data burn_up_file, sistem berhasil menampilkan hubungan burnup terhadap keff dan day terhadap keff baik dalam bentuk data tabel maupun bentuk grafik. Pengujian terhadap fungsi Pu_file sistem berhasil menampilkan hubungan massa Pu239 terhadap kritikalitas Keff dan hubungan antara massa Pu241 terhadap kritikalitas Keff dalam bentuk data tabel maupun bentuk grafik. Pengujian fungsi U_file memberikan hasil yang baik, dimana sistem mampu menampilkan hubungan antara massa U-235 terhadap Burn-up dan massa U235 terhadap Day dalam bentuk data tabel maupun bentuk grafik. Pada pengujian fungsi PuB_file sistem mampu menampilkan hubungan antara massa Pu239 terhadap Burnup dan hubungan antara massa Pu241 terhadap kritikalitas Burnup dalam bentuk data tabel maupun bentuk grafik. Hasil pengujian terhadap fungsi PuD-file menunjukkan bahwa sistem mampu menampilkan hubungan antara day terhadap massa Pu239 dan day terhadap massa Pu241. Selain hasil diatas, hasil pengujian menunjukkan bahwa grafik dapat menjalankan fungsi simpan dan fungsi opsi (penggantian properti grafik). Rekapitulasi hasil pengujian untuk semua fungsi yang disebutkan diatas ditampilkan dalam Tabel 3.
A-225
Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST) 2014 Yogyakarta, 15 November 2014
ISSN: 1979-911X
Tabel 3. Rekapitulasi hasil uji No 1 2 3 4 5
Nama Fungsi Buka_file Suhu_file Burn-up_file Pu_file U_file
Hasil Ok Ok Ok Ok Ok
6
PuB_file
Ok
7 8
PuD_file Simpan_file
Ok Ok
Keterangan Sistem berhasil menampilkan VSOP output secara keseluruhan Sistem berhasil menampilkan data suhu dan total resonansi Sistem berhasil menampilkan data burn-up, keff dan hari Sistem berhasil menampilkan data Pu-239, Pu-241 dan k-eff Sistem berhasil menampilkan data U-235, burn-up dan hari Sistem berhasil menampilkan data massa Pu-239, massa Pu-241 dan burn-up Sistem berhasil menampilkan data massa Pu-239, Pu-241 dan k-eff Sistem berhasil menyimpan grafik
Selain melakukan pengujian terhadap fungsi-fungsi yang disebutkan diatas, dilakukan juga pengecekan secara manual terhadap hasil output yang ditampilkan dengan data yang terdapat pada file output. Hal ini mengingat pentingnya melakukan verifikasi kesesuaian data yang ditampilkan dengan data mentah output. Aktivitas ini memang memakan waktu, namun hanya perlu dilakukan pada tahap pengujian saja. Setelah software terbukti berjalan baik maka user tidak perlu lagi melakukan pengecekan secara manual. KESIMPULAN Pada kegiatan ini, telah dilakukan pengujian perangkat lunak GUI-VSOP. Materi yang diuji adalah semua fungsi-fungsi yang mendukung analisis aspek neutronik k-eff, burn-up dan massa Pu-239 dan Pu-241. Hasil yang diperoleh adalah kesesuaian perangkat lunak antarmuka dengan keinginan pengguna, kesesuaian perangkat lunak yang dikembangkan dengan metodologi yang digunakan dan tersedianya dokumentasi hasil pengujian yang menginformasikan kesesuaian perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan. Berdasarkan hasil pengujian dapat disimpulkan bahwa perangkat lunak GUI-VSOP layak digunakan untuk mendukung analisis neutronik reaktor nuklir. DAFTAR PUSTAKA Dclune, T.L., And R.B. Rood (2011), Software Testing and Verification in Climate Model Development. Nakagawa, E.Y., J.S. Maldonado (2011) Contributions and Perspectives in Architectures of Software Testing Environments, In IEEE Proceeding of 25th Brazilian Symposium on Software Engineering, pp. 66-71. DOI 10.1109/SBES.2011.42 Xie, T., Et.Al. (2011), A Study On Methods Of Software Testing Based On The Design Models, in Proceeding of 6th International Conference on Computer Science and Education (ICCSE 2011), August 3-5, Singapore, pp. 111-113. Rütten,H,J, ‘(1994) V.S.O.P. Computer Code System for Reactor Physics and Fuel Cycle Simulation, Input Manual and Comments; Berichte des Forschungszentrums Jülich. Pressman, R.S., (2010), Software Engineering: A Practitioner’s Approach, 7th Edition, McGraw-Hill, New York. Sulistyanto H, Azhari Sn (2014), Urgensi Pengujian pada Kemajemukan Perangkat Lunak dalam Multi Perspektif, KomuniTi, Vol. VI, No. 1, Publikasi Ilmiah UMS, Surakarta, pp 65-74. Nursinta Adi Wahanani, Khairina Natsir (2013), Spesifikasi Kebutuhan Spesifik untuk Pengembangan Perangkat Lunak Ouput VSOP, Prosiding Seminar Nasional Teknologi dan Aplikasi Reaktor Nuklir, Serpong, pp 31-36
A-226