Presentation is loading. Please wait.

Presentation is loading. Please wait.

BAB 7 PENGUJIAN PROGRAM.

Similar presentations


Presentation on theme: "BAB 7 PENGUJIAN PROGRAM."— Presentation transcript:

1 BAB 7 PENGUJIAN PROGRAM

2 MEMBINCANGKAN…. Ralat & Kegagalan Perisian Organisasi Pengujian
Pengujian unit Pengujian integrasi Perancangan pengujian Alatan Pengujian

3 Kegagalan & Ralat Perisian
Kegagalan perisian??? Perisian tidak melakukan apa yang telah diterangkan dalam keperluan Kegagalan mungkin disebabkan: Spesifikasi silap ATAU ada keperluan yang tertinggal Spesifikasi mungkin mengandungi keperluan yang sukar untuk diimplementasikan Ada ralat pada rekabentuk program & sistem Kod program mungkin silap

4 Tujuan pengujian adalah untuk mengesan ralat.
Sesuatu pengujian dianggap berjaya hanya apabila kita menemui ralat/kegagalan

5 Pengenalpastian ralat:
merupakan proses untuk menentukan apakah ralat yang menyebabkan kegagalan. Pembetulan ralat: proses membuat perubahan kepada sistem untuk membuang ralat tersebut

6 Jenis-jenis ralat (Fault)
Ralat algoritma (algorithmic faults) Berlaku bila algoritma komponen/logik tidak menghasilkan output yang sebenar bagi input yang diberi Disebabkan oleh kesilapan semasa langkah pemprosesan Computation & precision faults (pengiraan dan ketepatan) Berlaku bila implementasi formula adalah salah ataupun tidak tepat.

7 Ralat kapasiti/sempadan
Ralat dokumentasi Bila dokumentasi tidak sepadan dengan apa yang dilakukan oleh program Ralat kapasiti/sempadan Berlaku apabila prestasi sistem menjadi tidak boleh diterima apabila aktiviti sistem mencapai had yang telah dispesifikkan. Ralat koordinasi/’timing’ Berlaku bila kod yang mengkoordinasikan kejadian tidak mencukupi

8 Throughput/performance faults
Berlaku apabila sistem tidak menunjukkan prestasi pada tahap yang diterangkan dalam keperluan Recovery faults Bila kegagalan ditemui dan sistem tidak bertindak sebagaimana yang diingini oleh perekabentuk dan juga pelanggan Hardware & system software faults Berlaku apabila perkakasan dan perisian tidak berfungsi sebagaimana yang dikehendaki

9 Organisasi Pengujian C O M P N E T D Design Spec. System Functional
Unit test C O M P N E T D Design Spec. System Functional Req. Other Software Req. Customer Req. Spec. User Environment Unit test Integration test Function Performance Acceptance Installation Integrated modules Functioning system. Accepted system Verified, Validated software Unit test SYSTEM IN USE

10 Organisasi Pengujian Semasa pembangunan sistem yang besar, pengujian biasanya melibatkan beberapa peringkat. Setiap komponen diuji secara berasingan daripada komponen-komponen lain di dalam sistem Dikenali juga sebagai: pengujian modul, pengujian komponen atau pengujian unit yang akan mengesahkan setiap komponen berfungsi dengan betul

11 Bila komponen telah diuji, langkah seterusnya adalah memastikan antaramuka diantara komponen telah dinyatakan dan dilaksanakan dengan betul. Pengujian integrasi: proses yang mengesahkan komponen sistem bekerjasama sebagaimana yang telah dinyatakan di dalam sistem dan juga spesifikasi rekabentuk sistem

12 Function test (ujian fungsi):
Apabila maklumat yang dihantar pada komponen mengikut rekabentuk, kita akan uji sistem untuk memastikan ia mempunyai fungsi yang diingini. Function test (ujian fungsi): menilai sistem untuk menentukan samada fungsi yang telah dinyatakan dalam spesifikasi keperluan telah dilaksanakan di dalam sistem yang telah diintegrasikan tadi.

13 Performance test (pengujian prestasi:
membandingkan sistem dengan keperluan perisian dan perkakasan yang tinggal. Acceptance test (pengujian penerimaan): dilakukan dimana sistem akan disemak samada memenuhi penerangan keperluan pelanggan Installation test (pengujian pemasangan): Dilaksanakan untuk memastikan sistem masih berfungsi sebagaimana sepatutnya

14 Pengujian Unit Matlamat: Mencari ralat di dalam komponen Langkah:
Periksa kod Code walkthrough Pemeriksaan kod (code inspection) Membuktikan kod adalah betul Teknik pembuktian formal (formal proof) Automated theorem proving

15 Menguji komponen program
Pengujian vs Pembuktian Memilih kes-kes pengujian Pengujian kesempurnaan aturcara Teknik Perbandingan (Comparing Techniques)

16 Pengujian Integrasi Selepas uji komponen, kita gabungkan kepada sistem yang berfungsi Sistem dilihat sebagai hirarki komponen dimana setiap komponen dipunyai oleh lapisan-lapisan tertentu,

17 Pengujian boleh dibuat dengan menggunakan pendekatan:
Bawah Atas Atas Bawah Big Bang Sandwich

18 Integrasi Bawah Atas Setiap komponen pada bahagian bawah dalam hirarki sistem akan diuji secara individu. Kemudian komponen yang seterusnya diuji adalah komponen yang memanggil komponen yang diuji tadi. Pendekatan ini diulangi sehinggalah semua komponen telah dimasukkan dalam pengujian

19 Test E Test B,E,F Test A,B,C D,E,F Test F Test C Test G Test D,G

20 Integrasi Atas Bawah Popular Terbalik daripada bottom-up
Paras paling atas yang mengawal akan diuji terlebih dahulu Seterusnya semua komponen yang dipanggil oleh komponen yang telah diuji tadi akan diuji sebagai unit yang besar Test A Test A,B,C,D Test A,B,C,D E,F,G

21 Integrasi Big Bang Semua komponen diuji secara berasingan kemudian digabungkan sebagai satu sistem akhir Kelemahan: Memerlukan stub dan drivers untuk menguji komponen-komponen bebas Disebabkan semua komponen digabungkan serentak, maka adalah sukar untuk mengesan punca kegagalan Ralat antaramuka adalah sukar untuk dibezakan dengan jenis kesilapan yang lain

22 Stub dan driver Komponen "driver": satu "routine"(fungsi) yang memanggil satu komponen lain dan menghantar kes pengujian kepadanya. Stub: program istimewa untuk mensimulasikan aktiviti bagi komponen yang tidak ditunjukkan.

23 Test A Test B Test C Test A,B,C,D E,F,G Test D Test E Test F

24 Integrasi Sandwich Menggabungkan strategi atas bawah dengan bawah atas
Sistem dilihat mempunyai TIGA lapisan: Lapisan sasaran : TENGAH Lapisan di atas sasaran Lapisan di bawah sasaran

25 Pendekatan Atas-Bawah: Pendekatan Bawah-Atas:
Digunakan pada lapisan atas Pendekatan Bawah-Atas: Digunakan pada lapisan bawah Membenarkan pengujian integrasi dijalankan pada awal proses pengujian Gabungkan kelebihan pengujian bawah-atas dan atas-bawah.

26 Test E Test B,E,F Test F Test A,B.C,D E,F,G Test D,G Test G Test A

27 Perancangan Pengujian
Setiap langkah proses pengujian mesti dirancang Langkah-langkah yang perlu dirancang: Menubuhkan objektif pengujian Merekabentuk kes pengujian Menulis kes pengujian Menguji kes pengujian Melarikan kes pengujian Menilai kes pengujian

28 Tujuan perancangan: Pelan pengujian: untuk menyusun aktiviti pengujian
Mengambil kira objektif ujian dan memasukkan sebarang skedul yang dinyatakan dalam project deadline. Kitar hayat pembangunan sistem menyatakan ada beberapa peringkat pengujian untuk menunjukkan kebolehfungsian sistem Pelan pengujian akan menerangkan bagaimana kita akan menunjukkan kepada pelanggan bahawa perisian tersebut berfungsi dengan betul

29 Kandungan Pelan: Bermula dengan objektif pengujian : Menakrif serta kenalpasti objektif pengujian. Barulah kita tentukan bagaimana untuk integrasikan komponen-komponen kepada sistem yang berfungsi Melihat bagaimana pengujian dijalankan dan apa ciri-ciri yang digunakan untuk menentukan pengujian selesai Kes pengujian yang lengkap juga akan terdapat pada setiap kaedah dan teknik yang akan digunakan

30 Peralatan pengujian Terdapat banyak alatan automasi yang membantu kita untuk menguji komponen-komponen kod Peralatan Analisis Kod (Code Analysis Tools) Terdapat dua kategori iaitu: Static analysis Dynamic analysis

31 Static analysis Dilaksanakan bila program tidak dilarikan.
Beberapa alat boleh digunakan untuk menganalisa sumber program sebelum ia dilarikan. Boleh dikelaskan kepada empat jenis: Code analyzer Structure checker Data analyzer Sequence checker

32 Dynamic analysis Dilakukan semasa program sedang dilarikan
Sistem adalah sukar untuk diuji kerana beberapa operasi yang selari sedang dilarikan secara serentak (real time systems) Automated tools yang dikenali sebagai program monitors yang akan sentiasa memerhati dan melaporkan kelakuan program

33 Test Execution Tools Berguna untuk menangani bilangan kes pengujian yang banyak yang mesti dilarikan untuk menguji sistem: Capture and replay Stub and drivers Automated Testing environments


Download ppt "BAB 7 PENGUJIAN PROGRAM."

Similar presentations


Ads by Google