Testing dan Implementasi Pembahasan Smester ATA Testing M
Testing dan Implementasi
Pembahasan Smester ATA Testing (M 1 M 9) M 10 : UTS • • Pendahuluaan Pengembangan Perangkat Lunak Dasar-dasar Pengujian Software Teknik-teknik Pengujian Software Pengujian berorientasi obyek Strategi Pengujian Perangkat Lunak Mengukur produktivitas dalam pengembangan perangkat lunak • Metrik teknik untuk system berorientasi obyek Implementasi • Impelementasi Sistem (M 11 -M 12) • Impelementasi Sistem (lanjutan) Pemeliharaan (M 13) Minggu 14 & 15 : Studi • Pemeliharaan Sistem kasus (V-class)
Tugas Kelompok Smester ATA �Terdiri dari Minimal 4 kelompok maksimal 6 kelompok �Materi tugas akan diberikan pada minggu ke 2 �Presentasi dimulai minggu ke 4 di kelas �Bentuk makalah Softcopy (File doc/pdf)
Testing dan Implementasi (Pendahuluan) Minggu ke 1
Pendahuluan �Definisi Testing �Alasan testing �Ruang Lingkup Testing �Software Testing �Dasar-Dasar Testing
Ilustrasi Testing
Definisi Testing “percobaan (pengujian) sesuatu untuk mengetahui mutunya (nilainya, kekuatannya, susunannya, dan sebagainya) dan tingkat kemampuan (pengetahuan, keterampilan seseorang, dan sebagainya)”
Kenapa Harus di. Uji (Testing) �Menjamin kualitas dari aplikasi atau software yang Anda ciptakan �Biaya perawatan yang rendah �Menghindarkan Anda dari kegagalan yang akan menimbulkan kerugian besar. �Karena bisnis yang bertahan adalah bisnis yang selalu menghadirkan produk, dalam hal ini aplikasi atau software, terbaik
Bug ”kesalahan pada komputer baik disebabkan oleh perangkat lunak ataupun perangkat keras sehingga komputer tidak bekerja dengan semestinya” 7 tipe Bug: 1. Functionality Errors 2. Communication Errors 3. Missing command errors 4. Syntactic Error 5. Error handling errors 6. Calculation Errors 7. Control flow errors Error Failure Fault Mistake
Ruang Lingkup Testing � Melakukan cek pada program terhadap spesifikasi. � Menemukan bug pada program. � Menentukan penerimaan dari pengguna. � � Memastikan suatu sistem siap digunakan. � Meningkatkan kepercayaan terhadap kinerja program. � Memperlihatkan bahwa program berkerja dengan benar � � Membuktikan bahwa error tidak terjadi � � Mengetahui akan keterbatasan sistem. � Mempelajari apa yang tak dapat dilakukan oleh sistem. � Melakukan evaluasi kemampuan sistem. � Verifikasi dokumen. � Memastikan bahwa pekerjaan telah diselesaikan.
Definisi Software Testing “proses yang dibuat sedemikian rupa untuk mengindentifikasikan ketidaksesuaian hasil sebuah sistem informasi dengan hasil yang diharapkan” Atau “proses eksekusi program atau sistem secara intens untuk menemukan error. ”
Software Testing Perlu diingat“V&V (Verification & Validation)” �Testing software adalah proses mengoperasikan software dalam suatu kondisi yang dikendalikan, �Verifikasi adalah pengecekan atau pengetesan entitas-entitas, termasuk software, untuk pemenuhan dan konsistensi dengan melakukan evaluasi hasil terhadap kebutuhan yang telah ditetapkan �Validasi melihat kebenaran sistem, apakah proses yang telah ditulis dalam spesifikasi adalah apa yang sebenarnya diinginkan atau dibutuhkan oleh pengguna
Verification & Validation
Ruang Lingkup Software Testing 1. Verifikasi apakah telah berlaku sebagaimana telah ditetapkan (menurut spesifikasi), 2. mendeteksi error, dan 3. Validasi apakah spesifikasi yang telah ditetapkan sudah memenuhi keinginan atau kebutuhan dari pengguna yang sebenarnya.
Hubungan testing dan kualitas Good Quality Software software yang bebas error dan bug secara obyektif, tepat waktu dana, sesuai dengan kebutuhan atau keinginan dapat dirawat (maintainable) Quality Control Pengendalian kualitas untuk mengukur kualitas produk Faktor Kualitas • Fungsionalitas • Rekayasa • Adaptabilitas Quality Assurance – QA jaminan kualitas untuk mengukur kualitas proses yang digunakan untuk membuat produk berkualitas
Software Quality Assurance (SQA) a set of activities for ensuring quality in software engineering processes (that ultimately result in quality in software products). � It includes the following activities: �Process definition and implementation �Auditing �Training � responsibilities: �identify weaknesses in the processes �correct those weaknesses to continually improve the process � models/standards: �CMMI �Six Sigma �ISO 9000
Software Quality Control (SQC) “a set of activities for ensuring quality in software products. ” �following activities: �Reviews �Requirement Review Software Quality Control �Design Review is limited to the �Code Review/Testing phases of �Deployment Plan Review the Software �Test Plan Review �Test Cases Review Development Life Cycle �Testing and the goal is to ensure �Unit Testing that the products meet �Integration Testing specifications/requiremen �System Testing �Acceptance Testing ts
Dasar-Dasar Testing �Tujuan testing : menemukan sebanyak mungkin masalah (error) �Misi Tim Testing : membantu meminimalkan resiko kegagalan proyek �Obyektifitas Testing (verifikasi, validasi dan deteksi error) �Meningkatkan kepercayaan bahwa sistem dapat digunakan dengan tingkat resiko yang dapat diterima. �Menyediakan informasi yang dapat mencegah terulangnya error yang pernah terjadi. ��Menyediakan informasi yang membantu untuk deteksi error secara dini. �Mencari error dan kelemahan atau keterbatasan sistem. �Mencari sejauh apa kemampuan dari sistem. �Menyediakan informasi untuk kualitas dari produk
Dasar-dasar testing � Testing dikatakan baik, jika : �Kemungkinan mendapatkan error tinggi �Tidak redundan --> resource terbatas, tiap tes yang dilakukan HARUS memiliki tujuan yang berbeda � Tidak terlalu simpel atau kompleks �Kode untuk kondisi khusus mendapatkan porsi tes yang sama dengan kode yang umum �Kode untuk kondisi khusus --> peluang memp. bug tinggi �Testing untuk kode yang dijalankan dalam kondisi normal tidak mengeksekusi error handling code �Testing yang sukses adalah testing yang berhasil menemukan erroryangmemberikan tidak diketahuihasil pengukuran Tester adalah individu dari kualitas produk.
Metode Testing �Blackbox Testing �Whitebox Testing �Gray Box testing �Ad-Hoc Testing
Level Testing �Unit Testing �Integrasi Testing �System Testing �Acceptance Testing
Tipe Testing �Smoke Testing �Functional Testing �Usability Testing �Performance Testing �Regression Testing �Compliance Testing
Situasi Ini pernah Anda Alami Silahkan anda menjeskan situasi tersebut !
Mind Set Tester vs Mind Set Programmer • Melakukan apa saja untuk membuatnya gagal. • Membuktikan bahwa kode beraksi sesuai dengan fungsi bisnisnya, maka zero defect minded tester tersebut telah gagal dalam menjalankan tugasnya sebagai tester must prove the code fails
Prinsip-Prinsip Testing �Testing yang komplit tidak mungkin. �Testing merupakan pekerjaan yang kreatif dan sulit. �Alasan yang penting diadakannya testing adalah untuk mencegah terjadinya errors. �Testing berbasis pada resiko. �Testing harus direncanakan. �Testing membutuhkan independensi.
Contoh pekerjaan Tester
Kesimpulan proses eksekusi program atau sistem secara intens untuk menemukan error �Testing dilakukan selain untuk menemukan error, untuk menjamin kualitas dari software yang dibuat kaitannya dengan bisnis �Testing adalah
Latihan 1. Jelaskan kembali secara singkat definisi testing software 2. Jelaskan kembali secara singkat Mind set programmer Vs mind set tester
- Slides: 28