Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Testing dan Implementasi Sistem Bab 2. Dasar-Dasar Testing Lecturer: Arochman Referensi: 1.Pressman, Roger S., “Software Engineering: A Practitioner’s.

Presentasi serupa


Presentasi berjudul: "Testing dan Implementasi Sistem Bab 2. Dasar-Dasar Testing Lecturer: Arochman Referensi: 1.Pressman, Roger S., “Software Engineering: A Practitioner’s."— Transcript presentasi:

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

2 1.Obyektifitas 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 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, hanya menginformasikan Tester adalah individu yang memberikan hasil pengukuran dari kualitas software 2. Misi dari Tim Testing

3 3.Psikologi 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 Dasar-Dasar Testing 1.Testing yang komplit tidak mungkin 2.Testing merupakan pekerjaan kreatif dan sulit 3.Alasan penting diadakan testing adalah untuk mencegah terjadi errors 4.Testing berbasis pada resiko 5.Testing harus direncanakan 6.Testing membutuhkan independensi 4.Prinsip-prinsip Testing

4 5.Testabilitas 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. Dasar-Dasar Testing

5 6.Kemampuan Tester yang Diharapkan 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 Dasar-Dasar Testing

6 6.Kemampuan Tester yang Diharapkan […Lanjutan] 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) Dasar-Dasar Testing

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

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

9 6.Personalitas Tester [… Lanjutan] 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. Dasar-Dasar Testing

10 7.Pengertian Defect dari Software 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. Dasar-Dasar Testing

11 7.Pengertian Defect dari Software [… Lanjutan] 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. Dasar-Dasar Testing

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

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 Perencanaan – Rencana pendekatan umum – Menentukan obyektivitas testing – Memperjelas secara umum Akusisi – Desain tes – Menerapkan tes Pengukuran – Eksekusi tes – Cek terminasi – Evaluasi hasil Dasar-Dasar Testing

15 10.Tiga Tingkatan Testing Secara Umum 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. Dasar-Dasar Testing 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 Praktik unit testing secara umum

16 10.2. Praktik system testing secara umum 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 Dasar-Dasar Testing 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 Praktik acceptance testing secara umum

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

18 Jawaban 1.Misi dari tim testing tidak hanya untuk melakukan testing, tapi juga untuk membantu meminimalkan resiko kegagalan proyek 2.Tester tidak melakukan pembenahan atau pembedahan kode, tidak mempermalukan atau melakukan komplain pada suatu individu atau tim 3.Bila seorang tester hanya ingin membuktikan bahwa kode beraksi sesuai dengan fungsi bisnisnya 4.Karena jumlah kemungkinan kombinasi test case yang amat besar. 5.Testtabilitas adalah seberapa mudah (subuah program komputer) dapat dites 6.Mempunyai kemampuan analisa yang kuat dan terfokus, mempunyai kemampuan komunikasi yang baik, mempunyai latar belakang QA. 7.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. 8.Perencanaan, Akusisi, Pengukuran 9.Unit testing, System testing, Acceptance testing 10.Fungsi, kode, kondisi ekstrim dan batasan-batasan. Dasar-Dasar Testing


Download ppt "Testing dan Implementasi Sistem Bab 2. Dasar-Dasar Testing Lecturer: Arochman Referensi: 1.Pressman, Roger S., “Software Engineering: A Practitioner’s."

Presentasi serupa


Iklan oleh Google