Fathiah, S.T.,M.Eng Universitas Ubudiyah Indonesia

Slides:



Advertisements
Presentasi serupa
REKAYASA PERANGKAT LUNAK
Advertisements

Rekayasa Perangkat Lunak dan Proses Software
DASAR-DASAR PENGUJIAN PERANGKAT LUNAK
Jaminan Kualitas Perangkat Lunak Software Quality Assurance [SQA]
BAB 8 PENGUJIAN PERANGKAT LUNAK
Pengujian Perangkat Lunak
REKAYASA PERANGKAT LUNAK
Pengujian Sofware – strategi
Pengujian Software - Pelaksanaan
PENGANTAR REKAYASA PERANGKAT LUNAK I
Manajemen Mutu Perangkat Lunak
Pengujian Perangkat Lunak
TEKNIK PENGUJIAN PERANGKAT LUNAK
Testing dan Implementasi Sistem
TESTING DAN QA SOFTWARE PERTEMUAN 9
Testing Pertemuan ke 2.
STRATEGI PENGUJIAN PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAK
Kriteria Rekayasa Perangkat Lunak (lanjutan)
TEKNIK TESTING DAN STRATEGI TESTING
PENGUJIAN DENGAN SIKLUS HIDUP
Systems Development Life Cycle
REKAYASA PERANGKAT LUNAK
PROCESS MODELS.
Strategi Pengujian Perangkat Lunak
ERP (Enterprise Resource Planning)
Rekayasa Perangkat Lunak Model Proses PL
Tim RPL Teknik Informatika 2017
BAB 1 PENGUJIAN PERANGKAT LUNAK
TESTING DAN IMPLEMENTASI SISTEM (Pertemuan Ke-1)
Pengenalan Rekayasa Perangkat Lunak
TEKNIK PENGUJIAN PERANGKAT LUNAK
REKAYASA PERANGKAT LUNAK
TEKNIK PENGUJIAN PERANGKAT LUNAK
Rekayasa Perangkat Lunak Metode Pengujian Perangkat Lunak
REKAYASA PERANGKAT LUNAK
TESTING DAN IMPLEMENTASI SISTEM
9. Software Quality Assurance
Rekayasa Perangkat Lunak
Strategi Pengujian Perangkat Lunak
Teknik Pengujian Perangkat Lunak
Jaminan Mutu dalam Kebutuhan Rekayasa
STRATEGI TESTING SOFTWARE
Strategi Pengujian Perangkat Lunak & Sistem
Testing dan Implementasi
OOP Pertemuan 4 Febriyanno Suryana, S.Kom, MM
Dasar – dasar pengujian perangkat lunak
Software Engineering ( Pressman )
Software Engineering by Pressman
REKAYASA PERANGKAT LUNAK
JAMINAN KUALITAS PERANGKAT LUNAK (SOFTWARE QUALITY ASSURANCE)
Rekayasa Perangkat Lunak Dosen : Citra Noviyasari, S.Si, MT
PERTEMUAN 2 Proses Pengembangan Perangkat Lunak
Testing & Implementasi
Testing dan Implementasi SI220A
REKAYASA PERANGKAT LUNAK
Software Quality Assurance (SQA)
Strategi Pengujian Perangkat Lunak
TESTING DAN IMPLEMENTASI SISTEM (Pertemuan Ke-4)
Validasi dan Verifikasi Software
JAMINAN KUALITAS PERANGKAT LUNAK (SOFTWARE QUALITY ASSURANCE)
TEKNIK PENGUJIAN PERANGKAT LUNAK
TEKNIK PENGUJIAN PERANGKAT LUNAK
Pengujian Perangkat Lunak
Strategi Pengujian Perangkat Lunak
TESTING DAN QA SOFTWARE PERTEMUAN 9
TEKNIK PENGUJIAN PERANGKAT LUNAK
Tim RPL Teknik Informatika 2018
Strategi Pengujian Perangkat Lunak
Fathiah, S.T.,M.Eng Universitas Ubudiyah Indonesia
Transcript presentasi:

Fathiah, S.T.,M.Eng Universitas Ubudiyah Indonesia fathiah@uui.ac.id Strategi Integration & ValidationTesting Fathiah, S.T.,M.Eng Universitas Ubudiyah Indonesia fathiah@uui.ac.id 2015

Pengujian Perangkat Lunak Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas sebuah perangkat lunak. Akan dibahas mengenai dasar dan teknik pengujian perangkat lunak untuk desain test case perangkat lunak

Dasar Pengujian Perangkat Lunak Pada proses perangkat lunak perekayasa pertama-tama berusaha membangun perangkat lunak dari konsep abstraksi ke implementasi yang dapat dilihat kemudian dilakukan pengujian (testing) perangkat lunak tersebut Pada dasarnya testing merupakan satu langkah dalam proses rekayasa perangkat lunak yang dapat dianggap sebagai hal yang destruktif daripada konstruktif.

Dasar Pengujian Perangkat Lunak Ada 3 dasar testing : Sasaran-sasaran testing Glen Myers menyatakan sejumlah aturan yang berfungsi sebagai sasaran pengujian: Testing adalah proses eksekusi suatu program dengan maksud menemukan kesalahan Test case yang baik memiliki probabilitas tinggi untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya Testing yang sukses adalah yang mengungkap semua kesalahan yang belum pernah ditemukan

Dasar Pengujian Perangkat Lunak Dari sasaran-sasaran tersebut, dapat disimpulkan bahwa testing yang berhasil bukanlah testing yang tidak menghasilkan kesalahan, tetapi justru testing yang sukses adalah yang menemukan kesalahan di dalam perangkat lunak. Pengujian tidak dapat memperlihatkan tidak adanya cacat, pengujian hanya dapat memperlihatkan bahwa ada kesalahan perangkat lunak.

Dasar Pengujian Perangkat Lunak Prinsip Testing Sebelum mengaplikasikan metode desain test case yang efektif, harus dipahami prinsip dasar yang menuntun testing perangkat lunak: Semua testing harus dapat ditelusuri sampai ke persyaratan pelanggan Cacat yg paling fatal adalah yang menyebabkan program gagal memenuhi persyaratannya Testing harus direncanakan lama sebelum testing itu dimulai perencanaan dapat dimulai setelah model persyaratan dilengkapi Prinsip Pareto berlaku untuk testing perangkat lunak prinsip pareto mengimplikasikan bahwa 80% dari semua kesalahan yang ditemukan sepertinya akan dapat ditelusuri.

Dasar Pengujian Perangkat Lunak Testing dimulai “dari yang kecil” dan berkembang ke testing “yang besar” pengujian pertama biasanya berfokus pada modul program individual, kemudian pada modul terintegrasi, dan akhirnya pada sistem secara keseluruhan Tidak memungkinkan suatu testing yang mendalam Jalur untuk program sangatlah besar, sehingga tidak mungkin mengeksekusi semua jalur program. Testing yg efektif harus dilakukan oleh pihak ketiga yang independen perekayasa perangkat lunak yang membuat sistem tersebut bukanlah orang yang paling tepat untuk melakukan semua pengujian perangkat lunak

Dasar Pengujian Perangkat Lunak Testabilitas Menurut James Bach testabilitas perangkat lunak adalah seberapa mudah sebuah program komputer dapat diuji. Karena pengujian sangat sulit, perlu diketahui apa yang dapat dilakukan untuk membuatnya menjadi mudah.

Testabilitas Berikut serangkaian karakteristik yang membawa kepada perangkat lunak yang dapat diuji: Operability Semakin baik dia bekerja, semakin efisien dia dapat diuji Observability Apa yang Anda lihat adalah apa yang Anda uji Controllability Semakin baik kita dapat mengontrol perangkat lunak, semakin banyak pengujian yang dapat diotomatisasi dan dioptimalkan

Testabilitas Decomposability dengan mengontrol ruang lingkup pengujian, kira dapat lebih cepat mengisolasi masalah dan melakukan pengujian kembali Simplicity semakin sedikit yang diuji, semakin cepat kita dapat mengujinya Stability Semakin sedikit perubahan, semakin sedikit gangguan dalam pengujian Understandability semakin banyak informasi yang kita miliki, semakin halus pengujian yang akan dilakukan

Atribut-Atribut Pengujian yang Baik Pengujian yang baik memiliki probabilitas yang tinggi untuk menemukan kesalahan Pengujian yang baik tidak redundan Pengujian yang baik seharusnya “jenis terbaik” Pengujian yang baik tidak boleh terlalu sederhana atau terlalu kompleks

Rancangan Test Case Dengan melihat lagi sasaran pengujian, kita harus mendesain pengujian yang memiliki kemungkinan tertinggi utnuk mengungkap kesalahan pada perangkat lunak. Pengujian dapat dilakukan dengan 2 cara: Mengetahui bahwa fungsi yang ditentukan beroperasi sepenuhnya, pada waktu yang sama mencari kesalahan pada setiap fungsi (Blackbox) Mengetahui kerja internal produk, bahwa semua operasi internal bekerja sesuai dengan spesifikasi dan komponen internal telah diawasi dengan baik (White-box)

Test data dan kasus test Test data: Input yang yang direncankan digunakan oleh sistem. Test cases: Input yang digunakan untuk menguji sistem dan memprediksi output dari input jika sistem beroperasi sesuai dengan spesifikasi.

Verifikasi dan Validasi Terdapat 2 hal utama yang dilakukan dalam pengujian, yaitu: 1). Verifikasi (“Are we building the product right?”) adalah proses mengevaluasi suatu system/component untuk menentukan apakah suatu produk yang diselesaikan setelah fase pengembangan memenuhi kondisi seperti yang telah ditetapkan pada awal pengembangan (saat menentukan spesifikasi) perangkat lunak. 2). Validasi (“Are we building the right product?”) adalah proses mengevaluasi suatu system/komponen pada akhir atau selama masa pengembangan untuk menentukan apakah produk yang dihasilkan telah memenuhi kebutuhan-kebutuhan dan persyaratan tertentu yang diminta oleh user.

Verifikasi dan Validasi Kajian Teknik Formal Pengukuran Metode Rekayasa PL kualitas Standar dan prosedur Pengujian Software Quality Assurance

Verifikasi dan Validasi Metode rekayasa perangkat lunak: memberikan fondasi untuk kualitas Kajian teknis formal (walkthrough): memastikan kualitas produk. Pengukuran: diaplikasikan di setiap elemen konfigurasi perangkat lunak Standar dan prosedur: membantu memastikan ketidak-seragaman SQA: menyelenggarakan “filosofi kualitas total” Pengujian: benteng terakhir untuk menilai kualitas dan mengungkap kesalahan

Pengorganisasian Testing Komposisi Tim Penguji: 1. Internal Information Services Anggota : Tim Proyek Kelebihan : Meminimalkan biaya, terlatih, Memiliki pengetahuan tentang proyek, Memudahkan alokasi waktu Kekurangan : Tidak adanya independensi, Tidak objektif 2. External Information Services Anggota : Quality assurance, Penguji profesional Kelebihan : Pandangan yang independent, Merupakan professional di bidangnya, Terdapat berbagai orang yang berpengalaman Kekurangan : pembiayaan mahal, Terdapat kompetisi antara tim pengembang dan penguji, Ketidakpercayaan antara kedua tim

Pengorganisasian Testing Komposisi Tim Penguji: 3. Non - Information Services Anggota : User, Auditor, Konsultan Kelebihan : Pandangan yang independent, Penilaian yang independent, Kemampuan tim untuk mendeteksi kesalahan Kekurangan : Pembiayaan lebih mahal, Tidak memiliki pengetahuan tentang informatika, Tidak mengerti tentang proyek yang dikerjakan, Pandangan yang independent 4. Kombinasi Anggota : Semua pihak yang berkepentingan Kelebihan : Kemampuan yang beraneka ragam, Latar belakang pendidikan, Pengaruh sekelompok orang Kekurangan : Pembiayaan yang mahal, Penjadwalan untuk pertemuan, Perbedaan latarbelakang

Pendekatan Strategi Testing Dalam melakukan testing harus ditentukan suatu template (serangkaian langkah untuk menempatkan metode test case) Template testing perangkat lunak memiliki karakteristik: Dimulai pada tingkat modul dan kerja “keluar” ke arah integrasi dari sistem. Teknik pengujian sesuai dengan titik waktunya Dilakukan oleh pengembang perangkat lunak Pengujian dan debugging adalah aktivitas berbeda, tetapi debugging diakomodasi pada strategi pengujian

Strategi Testing Rekayasa Sistem Persyaratan Desain Kode Tes Unit C Tes Unit U Tes Integrasi I Tes Validasi V Tes sistem ST

Strategi Testing Testing secara aktual merupakan 4 langkah yang diimplementasi secara berurutan. Pada awalnya testing berfokus untuk memastikan modul secara tepat sebagai suatu unit (unit testing) Modul dirakit/diintegrasikan membentuk paket perangkat lunak yang lengkap High-order-test (analisis persyaratan) Pengujian Sistem membuktikan bahwa semua elemen saling bertautan dengan tepat dan keseluruhan fungsi/kinerja dapat dicapai.

Langkah-Langkah Testing Perangkat Lunak High-order tests Persyaratan Integration test Desain Kode Unit Test “arah” pengujian

Masalah-Masalah Strategis Masalah2 yg harus diselesaikan sebelum mengimplementasikan testing : Tentukan suatu persyaratan produk dalam suatu cara yg dapat diukur jauh sebelum pengujian dimulai Nyatakan sasaran pengujian secara eksplisit Pahami para pemakai perangkat lunak dan kembangkan profil bagi masing-masing kategori pemakai

Masalah-Masalah Strategis Kembangkan rencana pengujian yang menekankan “pengujian siklus cepat” Bangun perangkat lunak “robust” yang didesain untuk menguji dirinya sendiri Gunakan kajian teknis formal sebagai sebuah filter sebelum pengujian Lakukan kajian teknis formal untuk memperkirakan strategi pengujian dan melakukan test case terhadap dirinya sendiri Kembangkan pendekatan pengembangan yang kontinu untuk proses pengujian

Selesai