Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Testing dan Implementasi Sistem

Presentasi serupa


Presentasi berjudul: "Testing dan Implementasi Sistem"— Transcript presentasi:

1 Testing dan Implementasi Sistem
Bab 2. Dasar-Dasar Testing Lecturer: Arochman Tujuan: Memberikan landasan yang cukup dalam memahami dasar-dasar testing (seperti obyektifitas dan prinsip-prinsip dasar testing dn testabilitas). Memberikan gambaran secara umum tentang siklus hidup testing dan integrasinya di dalam siklus hidup pengembangan software. Referensi: Pressman, Roger S., “Software Engineering: A Practitioner’s Approach,” Fifth Edition, McGraw-Hill, New York, 2001. Hetzel, Bill, “The Complete Guide to Software Testing,” Second Edition, John Wiley & Sons, 1988. Collard & Co., “Software testing & Quality Assurance Techniques,” Collard & Co., 1997. Shoemaker, Dan, and Jovanovic, Vladan, “Engineering A Better Software Organization,” Quest Publishing House, Michigan, 1999.

2 1. Obyektifitas Testing Dasar-Dasar Testing Meningkatkan kepercayaan bahwa sistem dapat digunakan dengan tingkat resiko yang dapat diterima Menyediakan informasi yang dapat mencegah terulangnya error yang perna terjadi Menyediakan informasi yang membantu untuk mendeteksi error secara dini Mencari error dan kelemahan atau keterbatasan sistem Mencari sejauh apa kemampuan dari sistem Menyediakan informasi untuk kualitas produk software 2. Misi dari Tim Testing Misi dari tim testing tidak hanya untuk melakukan testing, tapi juga untuk membantu meminimalkan resiko kegagalan proyek Tester tidak melakukan pembenahan atau pembedahan kode, tidak mempermalukan atau melakukan komplain pada suatu individu atau tim, hanya menginformasikan Tester adalah individu yang memberikan hasil pengukuran dari kualitas software

3 3. Psikologi Testing Dasar-Dasar Testing Tester harus keinginan yang mendasar untuk “membuktikan kode gagal, dan akan melakukan apa saja untuk membuatnya gagal” Bila seorang tester hanya ingin membuktikan bahwa kode beraksi sesuai dengan fungsi bisnisnya, maka tester tersebut telah gagal dalam menjalankan tugasnya sebagai tester 4. Prinsip-prinsip Testing Testing yang komplit tidak mungkin Testing merupakan pekerjaan kreatif dan sulit Alasan penting diadakan testing adalah untuk mencegah terjadi errors Testing berbasis pada resiko Testing harus direncanakan Testing membutuhkan independensi

4 5. Testabilitas Dasar-Dasar Testing
Untuk membantu testing dalam mendisain test case yang efektif dan lebih mudah, perekayasa software harus menempatkan testtabilitas dalam benaknya. Menurut James bach, testabilitas software adalah seberapa mudah (suatu program komputer) dapat dites. Karakteristik yang dapat mengarah pada software yang dapat dites: Operability, Semakin baik software bekerja, akan membuat software dites dengan lebih efisien. Observability, apa yang anda lihat, adalah apa yang anda tes. Controllability, dengan semakin baik kita mengenali software, semakin banyak testing yang dapat diotomatisasi dan dioptimalisasi. Decomposability, dengan pengendalian batasan testing, kita dapat lebih cepat dalam mengisolasi masalah dan melakukan testing ulang yang lebih baik. Simplicity, semakin sedikit yang dites, semakin cepat kita melakukannya. Stability, Semakin sedikit perubahan, semakin sedikit/ masalah atau ganguan testing. Understandability, semakin banyak informasi yang kita miliki, kita akan dapat melakukan tes lebih baik.

5 6. Kemampuan Tester yang Diharapkan
Dasar-Dasar Testing Kemampuan secara umum Mempunyai kemampuan analisa yang kuat dan terfokus Mempunyai kemampuan komunikasi yang baik Mempunyai latar belakang QA Pemahaman terhadap metodologi Pengembangan rencana tes Pembuatan dan perawatan lingkungan tes Standar tes Dokumentasi tes (seperti test cases dan procedure test) Pengetahuan akan pendekatan testing Integration testing Acceptance Testing Stress / Volume Testing Regression testing Functional testing End-To-End Testing GUI Testing

6 6. Kemampuan Tester yang Diharapkan […Lanjutan]
Dasar-Dasar Testing Pengetahuan tentang sistem (berhubungan dengan pasar dari organisasi bersangkutan) Perbankan/Keuangan Produk Komersial Telecom Internet Y2K Pengetahuan dan pengalaman akan penggunaan alat bantu testing Alat bantu capture atau playback (seperti WinRunner) Alat bantu Load testing (seperti LoadRunner, RoboTest) Kemampuan terhadap linkungan testing Mainframe (seperti MVS, JCL). Client – Server (seperti WinNT, UNIX) Kemampuan terhadap aplikasi Dokumentasi (seperti office, excel, word, Lorus Notes) Database (seperti oracle, access, 3GL, 4GL, SQL, RDBMS) Pemrograman (seperti C++, VB, OO)

7 6. Personalitas Tester Dasar-Dasar Testing Atribut positif Terencana
Bermental juara Berpendirian teguh Praktikal Analitikal Bermoral baik Atribut negatif Sedikit empati terhadap pengembang Kurang berdiplomasi Skeptis Keras kepala

8 6. Personalitas Tester [… Lanjutan]
Dasar-Dasar Testing Hambatan apa yang akan dihadapi tester dalam bekerjasama dengan pengembang?

9 6. Personalitas Tester [… Lanjutan]
Dasar-Dasar Testing Hambatan yang akan dihadapi tester dalam bekerjasama dengan pengembang, Pengembang (developers) pada umumnya akan cenderung untuk melarikan diri dan bersembunyi darinya, bila mereka merasa hal-hal sebagai berikut: Percaya bahwa tester akan mengganggu perkerjaan mereka dan manambahkan kerumitan dengan masalah-masalah yang terjadi akibat keberadaan tester. Takut untuk mendiskusikan hal-hal yang berkaitan dengan pengembangan yang sedang dilakukan, dimana hal tersebut akan dapat digunakan untuk menjatuhkan mereka.

10 7. Pengertian Defect dari Software
Dasar-Dasar Testing User interface errors: sistem memberikan suatu tampilan yang berbeda dari spesifikasi. Error handling: pengenalan dan perlakuan terhadap error bila terjadi. Boundary – related errors: perlakuan terhadap nilai batasan dari jangkauan mereka yang mungkin tidak benar. Calculation errors: perhitungan arimatika dan logika yang mungkin tidak benar. Initial and later states: fungsi gagal pada saat pertama digunakan atau sesudah itu. Control flow errors: pilihan terhadap apa yang akan dilakukan berikutnya tidak sesuai untuk status saat ini. Errors in handling or interpreting data: melewatkan dan mengkonversi data antar sistem (dan mungkin komponen yang terpisah dari sistem) dapat menimbulkan error. Race conditions: bila dua event diproses akan maka salah satu akan diterima berdasarkan prioritas sampai pekerjaan selesai dengan baik, baru pekerjaan berikutnya. Load conditions: saat sistem dipaksa pada batas maksimum, masalah akan mulai muncul, seperti arrays, overflow, diskfull.

11 7. Pengertian Defect dari Software [… Lanjutan]
Dasar-Dasar Testing Hardware: antar muka dengan suatu device mungkin tidak dapat beroperasi dengan benar pada suatu kondisi tertentu seperti device unavailable. Source and Version Control: program yang telah kadaluwarsa mungkin akan dapat digunakan lagi bila ada revisi untuk memperbaikinya. Documentation: pengguna tak dapat melihat operasi yang telah dideskripsikan dalam dokumen panduan. Testing errors: tester membuat kesalahan selama testing dan berpikir bahwa sistem berkelakuan tak benar.

12 8. Siklus Hidup Software secara Umum
Dasar-Dasar Testing Pembagian fase-fase/tahapan dapat tidak sama antara suatu organisasi dengan organisasi lain, namun semuanya memiliki tahap-tahap dasar yang sama.

13 9. Siklus Hidup Testing Secara Umum
Dasar-Dasar Testing Pada awalnya testing merupakan salah satu sub-fase dari fase pengembangan (development), setelah fase coding. Sudut pandang testing yang tepat adalah dengan menyediakan suatu siklus hidup testing secara lengkap, yang merupakan suatu bagian dan menjadi satu kesatuan di dalam siklus hidup software secara keseluruhan

14 9. Aktifitas Testing Secara Umum
Dasar-Dasar Testing Perencanaan Rencana pendekatan umum Menentukan obyektivitas testing Memperjelas secara umum Akusisi Desain tes Menerapkan tes Pengukuran Eksekusi tes Cek terminasi Evaluasi hasil

15 10. Tiga Tingkatan Testing Secara Umum
Dasar-Dasar Testing Unit testing: Testing penulisan kode-kode program dalam satuan unit terkecil secara individual. System Testing: Proses testing pada sistem terintegrasi untuk melakukan verifikasi bahwa sistem telah sesuai spesifikasi. Acceptance Testing: Testing formal yang dilakukan untuk menentukan apakah sistem telah memenuhi kriteria penerimaan dan memberdayakan pelanggan untuk menentukan apakah sistem dapat diterima atau tidak. 10.1. Praktik unit testing secara umum Tujuan: Konfirmasi bahwa modul telah dikode dengan benar. Pelaku: Biasanya Programer Apa yang dites: Fungsi (Black Box), Kode (White Box), Kondisi ekstrim dan batasan-batasan. Kapan selesai: Biasanya saat programer telah merasa puas dan tidak diketahui lagi kesalahan. Alat bantu: Tidak biasa digunakan. Data: Biasanya tidak didata.

16 10.2. Praktik system testing secara umum
Dasar-Dasar Testing Tujuan: Merakit modul menjadi suatu sistem yang bekerja dan menentukan kesiapan untuk melakukan Acceptance Test. Pelaku: Pemimpin tim atau grup tes. Apa yang dites: Kebutuhan dan fungsi sistem, Antarmuka sistem. Kapan selesai: Biasanya bila mayoritas kebutuhan telah sesuai dan tidak ada kesalahan mayor yang ditemukan. Alat bantu: Sistem pustaka dan pustaka test case, Generator, komparator dan simulator data testing. Data: Data kesalahan yang ditemukan, Test case 10.3. Praktik acceptance testing secara umum Tujuan: Mengevaluasi kesiapan untuk digunakan. Pelaku: Pengguna akhir atau agen. Apa yang dites: Fungsi mayor, Dokumentasi, Prosedur. Kapan selesai: Biasanya bila pengguna telah merasa puas atau tes berjalan dengan lancar / sukses. Alat bantu: Komparator. Data: Formalitas dokumen.

17 SOAL Dasar-Dasar Testing Apa misi dari Tim testing?
Hal apa yang tidak boleh dilakukan tester dalam menjalankan tugas? Tester dinyatakan gagal dalam menjalankan tugasnya apabila? Kenapa testing yang komplit tidak mungkin dilakukan? Apa yang dimaksud dengan Testtabilitas? Sebutkan kemampuan secara umum yang harus dimiliki tester! Apa perbedaan testing dalam siklus hidup pengembangan software, antara pandangan masa lalu dan sekarang? Sebutkan aktifitas testing secara umum! Sebutkan tiga tingkatan testing secara umum! Hal apa saja yang dites pada tingkatan unit testing!

18 Jawaban Dasar-Dasar Testing
Misi dari tim testing tidak hanya untuk melakukan testing, tapi juga untuk membantu meminimalkan resiko kegagalan proyek Tester tidak melakukan pembenahan atau pembedahan kode, tidak mempermalukan atau melakukan komplain pada suatu individu atau tim Bila seorang tester hanya ingin membuktikan bahwa kode beraksi sesuai dengan fungsi bisnisnya Karena jumlah kemungkinan kombinasi test case yang amat besar. Testtabilitas adalah seberapa mudah (subuah program komputer) dapat dites Mempunyai kemampuan analisa yang kuat dan terfokus, mempunyai kemampuan komunikasi yang baik, mempunyai latar belakang QA. Pada masa lalu testing dilakukan setelah tahap coding, tetapi sudut pandang testing sekarang merupakan suatu bagian dan menjadi satu kesatuan di dalam siklus hidup software secara keseluruhan. Perencanaan, Akusisi, Pengukuran Unit testing, System testing, Acceptance testing Fungsi, kode, kondisi ekstrim dan batasan-batasan.


Download ppt "Testing dan Implementasi Sistem"

Presentasi serupa


Iklan oleh Google