Pengujian Software Instalasi


Setiap software aplikasi yang telah berhasil dibuat oleh suatu tim pengembang software, perlu dibuatkan program untuk instalasinya (setup disk).

Program instalasi sangat diperlukan untuk memudahkan software aplikasi yang dibuat menjadi lebih mudah untuk dipasang di komputer pengguna. Tentu saja pemasangan harus oleh pengguna itu sendiri, setidaknya bukan oleh tim pengembang itu sendiri yang harus memasangnya.

Salah satu pengujian yang harus dilakukan kepada software adalah pengujian kepada program instalasi yang dibuat untuk software tersebut. Pengujian ini dimaksudkan untuk memastikan apakah aplikasi yang telah dibuat dapat dengan mudah dipasang di komputer pengguna atau tidak.


 Program instalasi yang dibuat oleh tim pengembang harus semudah mungkin penggunaannya. Bisa dikemas dalam satu file itu sangat baik, atau setidaknya dikemas dalam satu CD. Pengembang harus membuat atau menggunakan program khusus yang digunakan bisa membuat paket instalasi, supaya progam instalasi menjadi baik.

Penguji?
Siapa yang menjadi penguji, tentu saja penguji pertama kali adalah pengembang itu sendiri. Setelah pengembang yakin program instalasinya telah selesai, barulah pengujian dilakukan oleh pihak lain yang tidak mengerti sama sekali tentang bagaimana membuat program atau program instalasi itu.

Penguji bisa juga dari orang yang tidak mengerti sama sekali tentang membuat program, tetapi harus sudah biasa menggunakan komputer.


 Pengujian?
Pastikan kita menggunakan sedikitnya dua komputer untuk pengujian. Ini harus diusahakan. Komputer pertama adalah komputer yang sudah berisi bermacam-macam program, dan komputer kedua adalah komputer yang masih ‘bersih’ (baru dipasang sistem operasinya atau hanya berisi aplikasi standar seperti Office saja).

Hal pertama yang diperhatikan pada saat pengujian ini adalah apakah software instalasi berhasil memasang program ke dalam komputer pengguna atau tidak. Tentu saja bisa dilihat apakah sampai dengan selesai tidak ada kesalahan.



Proses pengujian sederhana ini bisa digunakan untuk mengetahui tentang environment sistem yang digunakan untuk pengujian. Kita bisa mencatat spesifikasi komputer yang digunakan dalam proses pengujian. Spesifikasi komputer ini akan digunakan sebagai dasar bahwa program instalasi sudah berhasil dijalankan dan memasang aplikasi, jadi bukan kita mengeneralisasi bahwa program telah berhasil atau dapat digunakan di semua komputer.

Catat juga sistem operasi yang digunakannya, yang juga akan menjadi platform sistem operasi yang telah digunakan untuk pengujian.


Setelah proses instalasi berhasil dilakukan. Berikutnya adalah memeriksa kelengkapan hasil instalasi. Tentang kelengkapan hasil instalasi ini harus berkoordinasi dengan dengan tim pengembang untuk mengetahui harus seperti apa hasil dari instalasinya.

Periksa setiap file, terutama yang berhubungan dengan aplikasi dan dokumentasi. Buka file-file tersebut, apakah ada yang corrupt atau tidak.

Pemeriksaan berikutnya adalah menjalankan setiap menu yang ditampilkan yang dihasilkan oleh aplikasi. Ini adalah pengujian standar yang harus dilakukan dalam pengujian software. Untuk memastikan semua fungsi berjalan dengan baik. Pengujian ini harus tetap dilakukan, karena bisa saja, program yang dikemas ke dalam paket program instalasi ini program yang salah.


Jika semua telah dilakukan dan tidak ada kesalahan yang ditampilkan, maka pengujian pada program instalasi telah selesai dilakukan.

Secara sekilas kita dapat mengetahui bahwa proses pengujian program instalasi tidak sekedar menjalankan, jika sudah berhasil dipasang, berarti sudah berhasil. Ternyata tidak, karena masih harus menguji lagi program yang telah dipasang tersebut. Jika tidak kita bisa membuat kesalahan fatal yang mengakibatkan kerugian finansial; misalnya jika setelah itu diperbanyak ke dalam ribuan CD? Setelah selesai penduplikasian, baru diketahui bahwa program tersebut adalah salah, maka bisa jadi runyam. Masih beruntung jika belum didistribusikan, jika sudah? Bisa dibayangkan …

CONTOH SOFTWARE PENGUJIAN APLIKASI


* ENTEPRISE SISTEM

           Enterprisesystem adalah  sistem berbasis software untuk membantu pengelolaan sistem informasi pada suatu organisasi dengan skala besar. Skala besar berarti volume transaksi yang besar, concern terhadap kualitas informasi yang tinggi, mengintegrasikan berbagai proses bisnis, lintas bidang (horisontal) maupun lintas strata (vertikal). Contoh dari ES adalah ERP (Enterprise Resource Planning) atau e-Business secara umum, e-Government, dan ingrated software lainnya.


Mengimplementasikan ES tidak mudah, atau setidaknya memilki strategi yang berbeda dengan sistem lain yang terbatas ruang lingkupnya, penggunanya dan tidak terpadu. Implementasi di sini bermakna bahwa software telah dapat digunakan dan bisa memberikan value bagi penggunanya sesuai tujuan pemanfaatan software tsb. Implementasi ini bisa dilakukan secara internal organisasi (oleh divisi IT/MIS) atau dengan pihak eksternal dalam kerangka proyek dan terikat legalitas berbentuk kontrak.

implementator sebagai pihak eksternal yang melakukan implementasi dan klien sebagai organisasi yang diimplementasikan softwarenya.

 Implementasi ES berbeda dengan implementasi software berskala kecil atau yang penggunanya tunggal seperti MS Word, Database Rental VCD atau website, meskipun produknya sama-sama software yang berjalan di atas server dan membutuhkan konektivitas. Tentu nanti ada strategi yang berbeda, metode pemilihan bahan yang berbeda, tahapan yang berbeda, standar-standar tertentu, dst. Demikian pula dalam konteks software, bisa dipilah berdasar cakupan penggunaannya, bisa dilihat juga dari jenisnya (generik dan customized), yang masing-masing punya strategi implementasi yang berbeda. SE berkaitan dengan pengelolaan sistem informasi, yang tidak hanya bicara teknologi saja, tapi berkaitan dengan proses bisnis, struktur organisasi dan manusianya.

Pola pikir ”developer” adalah menganggap suatu problem bisa selesai dengan solusi berbasis software yang baik dan tepat. Tapi apakah cukup seperti itu? Dalam membangun solusi, ya itu cukup, tapi belum tentu menjamin kesuksesan implementasi. Pola pikir developer cenderung berfokus pada analisis dan development tidak pada implementasinya. Padahal sukses tidaknya proyek software, baik buruknya reputasi implementator, seringkali orang luar melihat pada keberhasilan implementasinya dan value yang didapatkan klien. ES untuk organisasi dengan puluhan divisi, ribuan orang, puluhan kepentingan, dan mungkin ratusan konflik. Apalagi jika software yang kita implementasikan bukan sekedar supporting tools tapi adalah core dari bisnis itu sendiri (konsep e-business). Cara implementasi dengan pola pikir seperti ini hanya akan menghasilkan solusi dan software yang bagus, tapi tidak optimal dan memberikan value untuk organisasi tsb, atau bahkan malah tidak pernah akan digunakan.

Implementator tidak bisa memposisikan diri sebagai project manager pada sebuah proyek yang berkaitan langsung dengan proses bisnis internal klien. Seorang project manager harus mampu mengelola semua resource berkaitan dengan proyek. Kadang kita tidak menyadari bahwa sebagaian besar resource dari proyek software justru berada di sisi organisasi klien. Sementara, project manager seharusnya memiliki akses ke seluruh resource tersebut, karena jika tidak, itu bukan project manager namanya.

 Dalam kasus ini, maka project manager seharusnya justru berada di sisi klien, bukan implementator. Akan sia-sia jika aktivitas project planning, project controlling dsb sepenuhnya dilakukan oleh implementator, sementara klien hanya ”tahu beres” saja. Pada akhirnya aktivitas-aktivitas project management tsb hanya akan menghasilkan berkas-berkas dan dokumen administratif saja, yang pada kenyataannya tidak pernah dilaksanakan.

 Peran yang paling pas untuk implementator adalah sebagai konsultan. Tugas utama dari konsultan adalah memberikan informasi, mendampingi, memfasilitasi dan menjadi motor ”behind the screen”. Tentu saja jika kontraknya melibatkan pengadaan software, konsultan juga akan melakukan development atau implementasi secara teknis, namun implementasi keseluruhannya harus dipimpin oleh klien sendiri melalui project manager. Jika klien tidak memiliki pengetahuan yang cukup untuk mengelola proyek software, itulah tugas konsultan untuk mendampinginya, sehingga proses project planning, control, evaluation, dst sepenuhnya akan berasal dari ide-ide, komitmen dan effort dari klien sendiri.

Tugas konsultan adalah memfasilitasi dan mengarahkannya. Model seperti ini yang kemudian memunculkan teknik JAD (Joint Application Design), yang intinya adalah melibatkan dan kolaborasi seluruh stakeholder proyek. salah satu fase dalam implementasi sistem adalah fase transisi, yang pasti akan menuntut perubahan baik kecil maupun besar. Adanya sistem baru, mau tidak mau akan merubah proses bisnis. Perubahan proses bisnis berarti perubahan cara kerja, alur kerja dan bahkan budaya kerja. Perubahan ini menyangkut aspek people dan proses bisnis, sehingga dikenal konsep change management.


 Dalam eksekusinya, change ini harus dipimpin dan dimanage oleh leader di internal organisasi. Yang jelas seorang konsultan tidak hanya dituntut memiliki pengetahuan tentang software engineering dan hal-hal teknis, dan juga tidak cukup ditambah dengan pengalaman dan keterampilan project management, namun konsep dan bestpractice tentang change management, communication skill yang excellent sangat diperlukan.

Sumber :

http://bagusalfiyanto.blogspot.com/2010/06/software-pengujian-perangkat-lunak.html