Strategi Implementasi Sistem ERP: Testing Sistem

TESTING ERP System Implementation - Part 6

Testing adalah aktifitas yang sangat penting dan kritikal dalam proses implementasi ERP, pada tahap ini setelah tim proyek calon pengguna sudah mengerti bagaimana menggunakan sistem.

Maka, salah satu kunci agar kita bisa sukses melakukan implementasi sistem ERP, kita harus melakukan testing dengan lengkap dan benar.

Testing sistem terlebih lagi menjadi sangat penting apabila kita melakukan custom development, apabila sistem dibuat secara khusus untuk kebutuhan anda, berarti sistem tersebut belum pernah digunakan sama sekali oleh siapapun.

Karena itu waktu yang anda harus siapkan untuk melakukan testing harus lebih banyak dibanding kita membeli aplikasi yang sudah tersedia dipasaran.

Agar kita lebih memahami pentingnya testing berikut adalah tujuan:

  1. Menguji / verifikasi proses sebuah sistem bekerja sesuai yang sudah disepakati dalam blueprint
  2. Menguji / verifikasi hasil nya sesuai dengan yang harapkan? Apa-kah cara perhitungannya sudah sesuai?
  3. Menguji/verifikasi apabila terjadi kondisi yang tidak direncanakan/exception.

Unit Test

Pertama-tama kita harus melakukan Unit test. Dan sesuai dengan namanya, pada Unit test kita lebih berfokus kepada melakukan pengujian terhadap suatu fungsi dalam sistem yang akan di test.

Misalnya kita membuat sistem untuk penjualan, maka kita harus melakukan testing terhadap:

1. Master data pelanggan

Apakah semua data yang diperlukan sudah tersedia? Kode Pelanggan, Nama Pelanggan, Group Pelanggan, dan lainnya. Apakah pada saat input data, semuanya berhasil tersimpan dengan baik, dan apakah dapat di akses kembali?

2. Transaksi Penjualan

Pada saat memasukkan data penjualan, apakah semua informasi yang dibutuhkan sudah dapat diakomodasikan? Kode Pelanggan, Kode Barang terjual, Jumlah Barang, dan Harga Barang? Apakah discount dimungkinkan? Bagaimana discount dihitung? Bagaimana cara memasukkan informasi pajak penjualan?

Pada saat melakukan unit testing maka kita perlu memeriksa semua kelengkapan data, dan apabila ada perhitungan seperti nilai setelah diskon, atau pajak sudah sesuai dengan yang diharapkan.

Pada kedua contoh tersebut terlihat bahwa fokus kita pada saat melakukan Unit test adalah lebih kepada satu fungsi tertentu untuk menguji kelengkapan informasi, dan apakah sesuai dengan harapan kita pada saat dijalankan.

TIPS:
Jumlah unit yang harus ditesting ini sangat tergantung dari sistem IT yang akan anda implementasikan, tapi terlepas dari jumlahnya.
PENTING untuk membuat list dari unit apa saja yang harus anda uji, agar tidak ada unit yang terlewatkan.

Integration Test

Setelah kita melalui tahap unit testing, maka kita harus melakukan tahap Integration test, dimana pada kegiatan ini kita melakukan testing secara berkesinambungan.

Proses testing juga sudah melibatkan beberapa divisi terkait yang akan menggunakan sistem tersebut.

Jika boleh dibilang kita melakukan simulasi di tahap integration test ini, kita berusaha mengkondisikan kejadiannya yang akan terjadi pada saat sistem baru digunakan.

Jika pada unit test kita harus membuat list apa saja yang akan kita uji, maka pada tahap integration test ini terlebih lagi kita harus membuat skenario apa saja yang akan kita test.

Misalnya kita melakukan testing scenario:

  • Penjualan dengan Pengiriman Barang sekali kirim.
  • Penjualan dengan Pengiriman Barang sebagian/bertahap.
  • Penjualan dengan Pembayaran Cash.
  • Penjualan dengan Pembayaran Kredit 30 hari.
  • Penjualan dengan Pembayaran bertahap.

Sama hal nya dengan unit test, dengan adanya scenario testing yang sudah terdokumentasikan maka akan mudah melakukan testing dan menghindari bisnis proses yang terlewatkan oleh testing dan baru disadari pada saat sistem sudah digunakan.

Performance Test/Volume Test

Terakhir hal yang biasa kami temui saat membantu proses implementasi ERP selain permasalahan bugs yang dapat ditemui pada Unit test dan integration test, adalah permasalahan Perfomance.

Kadang pada saat kita melakukan Unit test dan Integration test permasalahan ini tidak terlihat mengingat jumlah user yang melakukan testing hanya sebagian yakni yang termasuk dalam tim proyek dimana hanya sekitar 20- 30%, akan tetapi pada saat semua user menggunakan sistem bisa terjadi response sistem menjadi lambat, hal lainnya juga bisa terjadi karena pada saat testing kita baru menggunakan data sample, belum menggunakan 100% data sebenarnya sehingga belum terlihat response perfoma sistem.

Dalam tahap testing kita harus dapat memprediksi performa dari sistem baru yang akan digunakan.

Apakah menyiapkan waktu untuk melakukan testing secara bersamaan dengan semua tim dalam perusahaan termasuk yang diluar tim proyek implementasi ERP.

Sampai kepada apabila jumlah data kita perkirakan akan sangat banyak dibanding pada saat testing, hal ini harus kita perhitungkan juga.

Sebisa mungkin dilakukan simulasi terutama pada bisnis proses tertentu yang memang pada saat awal persiapan proyek sudah kita ketahui mungkin akan menjadi tantangan.

Misalnya pada kasus proyek ritel kami pernah menangani customer dengan master barang lebih dari 1 juta barang, pada saat tahap testing tidak mungkin user sudah menyelesaikan semua data-data tersebut, dan untuk kepentingan unit test dan integration test dengan hanya menyiapkan 10 ribu data barang sudah lebih dari cukup.

Bayangkan perbedaannya antara testing yang menggunakan 10 ribu master barang dengan kondisi nanti nya pada saat sistem berjalan dengan 1 juta master barang.

Manajemen proyek harus pandai-pandai mengatur strategi bagaimana kita bisa melakukan simulasi untuk beberapa hal yang mungkin bisa mengganggu performa sistem pada saat sistem mulai digunakan (go live).

Tentunya kita tidak ingin pada saat semua sudah dengan siap kita lakukan dalam persiapan proyek akan tetapi pada saat sistem mulai digunakan terjadi masalah performa, dan sistem tidak dapat digunakan sehingga mengganggu operasional.

Kecenderungan tim member pada saat melakukan testing, yang seharusnya menguji sistem, namun karena sistem baru dan perlu adaptasi maka lebih banyak waktu yang dihabiskan untuk belajar / training dibandingkan untuk melakukan testing.

Karenanya penting untuk membuat daftar dari apa saja yang ingin kita test / uji baik Unit Test, Integration Test maupun Performance Test, agar:

  1. Kita dapat memahami seberapa banyak yang harus kita uji.
  2. Memiliki daftar dari proses yang kita harapkan dapat digunakan pada saat sistem berjalan (go live), membuat kita dapat focus pada saat melakukan testing, dan tidak ada yang terlewatkan. Dan baru kita sadari pada saat sistem sudah digunakan yang dapat berakibat fatal, karena pada saat sistem sudah digunakan, lebih sulit melakukan perubahan yang mana setiap perubahan harus dilakukan testing kembali.
  3. Dengan melihat kepada hasil testing, kita dapat menganalisa seberapa siap sistem yang sedang dibuat, dari hasil ini juga kita dapat membuat keputusan yang lebih rasional apakah akan menggunakan mulai menggunakan sistem sesuai jadwal? Atau menunda proyek? Dan berapa lama?

Karenanya tanpa adanya daftar dari apa saja yang harus kita test, baik Unit Test, Integration Test maupun Performance Test, maka besar kemungkinan akan terjadi kekacauan pada saat sistem digunakan (go Live).

Pada bahasan mengenai apakah kita akan melakukan strategi parallel run atau melakukan cut off sistem lama pada saat sistem baru mulai digunakan, kita mempertanyakan kesiapan sistem karena khawatir akan terjadi sesuatu pada sistem baru, atau sistem baru belum sesuai pada saat digunakan yang akan menyebabkan hambatan dalam operasional sehari-hari.

Dengan melakukan testing berulang-ulang dan secara lengkap resiko tersebut dapat dihilangkan.

Melihat dari banyaknya aktifitas yang harus dilakukan pada saat testing, sekali lagi penting sekali untuk mendapatkan komitmen dari manajemen tingkat atas untuk memberikan perhatian dan waktu dalam mendukung para calon pengguna.

Mengingat pada aktifitas ini para calon pengguna harus menghabiskan banyak waktu dalam melakukan testing, dan pada saat bersamaan juga tidak sedikit yang masih melakukan aktifitas operasional sehari-hari.

7 point kunci lainnya yang berpengaruh pada kesuksesan implementasi ERP System:

  1. Dukungan dari manajemen eksekutif / Top Management
  2. Jebakan Harapan / Ekspektasi
  3. Cetak biru bisnis proses / Business Process Blueprint
  4. Manajemen persiapan data
  5. Training
  6. Apakah semua calon pengguna (user) sudah siap?
  7. Cut off strategy – Paralel Run Vs Cut off

SAP Business One Indonesia