02 tis creating an environmentsupportive of software testing

41
LOGO Creating an Environment Supportive of Software Testing Rini Astuti / ITHB 2014

Upload: rin14s

Post on 20-Jun-2015

135 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: 02 tis Creating an EnvironmentSupportive of Software Testing

LOGO

Creating an EnvironmentSupportive of

Software Testing

Rini Astuti / ITHB 2014

Page 2: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 2

Topics

management’s role in creating an environment conducive to software testing by addressing the following topics : Management’s risk appetite for ineffective software The role management assigns to testing The policy for testing The type of support management provides for

software testing The resources allocated for testing The processes and tools that will be used for

testing

Page 3: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 3

Closing the customer dissatisfaction gap

Page 4: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 4

Risks Associated with Implementing Specifications

Banyak risiko yang, jika tidak dikontrol dengan baik, akan mengakibatkan kekurangan, tidak lengkap, spesifikasi tdk akurat. Faktor risiko yang dapat menyebabkan spesifikasi tidak diterapkan sebagaimana ditentukan meliputi: Inadequate schedule and budget. If the testers do not have

adequate time or resources, they will not be able to test all the implemented specifications.

Inadequate test processes. If the test processes are defective, the testers will create defects as they conduct testing. Thus, even though they have performed the process as specified, they will not be able to accomplish the tasks those test processes were designed to achieve.

Inadequate competency. Testers who do not know the basics of testing, who do not know how to use the test processes provided them, and who are inade- quately trained in the use of testing tools and techniques will not be able to accomplish test objectives.

Page 5: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 5

Faulty Software Design

Designing software with incomplete or erroneous decision-making criteria.

Failing to program the software as intended by the customer (user) or designer.

Omitting needed edit checks for determining completeness of output data

Page 6: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 6

Data Problems

Incomplete data.Incorrect dataObsolete data

Page 7: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 7

Risks Associated with Not Meeting Customer Needs

Memenuhi kebutuhan pelanggan harus dibedakan dari didokumentasikannya spesifikasi perangkat lunak.

Faktor uji/test factors menjadi salah satu cara untuk menilai spesifikasi kebutuhan sistem.

Page 8: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 8

test factors-1-2

disebut juga sebagai faktor kualitas atau atribut kualitas perangkat lunak/PL.

faktor uji dapat menjadi risiko PL.Jenis faktor uji :

1. Correctness. Assurance that the data entered, processed, and outputted by the application system is accurate and complete

2. File integrity. Assurance that the data entered into the application system will be returned unaltered. The file integrity procedures ensure that the right file is used and that the data on the file and the sequence in which the data is stored and retrieved is correct.

Page 9: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 9

test factors-3-4

3. Authorization. Assurance that data is processed in accordance with the intents of management.

4. Audit trail. Proses menyimpan materi bukti pendukung sering disebut audit trail. Kemampuan untuk mendukung pengolahan yang telah terjadi. Pengolahan data juga dapat didukung melalui retensi materi bukti yang cukup untuk membuktikan akurasi, kelengkapan, ketepatan waktu, dan otorisasi data.

Page 10: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 10

test factors-5

5. Kontinuitas proses . Kemampuan untuk mempertahankan pengolahan ketika terjadi peristiwa bermasalah . Kontinuitas proses memastikan bahwa

prosedur yang diperlukan dan informasi cadangan tersedia untuk memulihkan kesalahan operasi yang harus integritas.

Kontinuitas proses meliputi ketepatan waktu operasi pemulihan dan kemampuan untuk mempertahankan periode pengolahan saat komputer bisa dioperasi .

Page 11: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 11

test factors-6

6. Tingkat layanan . Jaminan bahwa hasil yang diinginkan akan tersedia dalam waktu yang dapat diterima bagi pengguna. Untuk mencapai tingkat layanan yang

diinginkan , maka perlu untuk menyesuaikan kebutuhan pengguna dengan sumber daya yang tersedia . Sumber daya, mencakupkemampuan input / output , fasilitas komunikasi , pengolahan , dan sistemkapabilitas perangkat lunak .

Page 12: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 12

test factors-7-8

7. Kontrol akses . Jaminan bahwa sumber daya sistem aplikasi akan dilindungi terhadap modifikasi yang disengaja dan tidak disengaja , perusakan , penyalahgunaan, danpengungkapan.

8. Compliance/Kepatuhan. Jaminan bahwa sistem ini dirancang sesuai dengan strategi organisasi , kebijakan , prosedur , dan standar .

Page 13: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 13

test factors-9-10-11

9. Reliability. Assurance that the application will perform its intended function with the required precision over an extended period of time.

10.Ease of use. Tingkat usaha yang dibutuhkan untuk mempelajari , mengoperasikan, menyiapkan masukan , dan menginterpretasikan output dari sistem.

11.Maintainability. Upaya yang diperlukan untuk menemukan dan memperbaiki kesalahan dalam operasionalsistem .

Page 14: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 14

test factors-12 s.d15

12. Portability. Upaya yang diperlukan untuk mentransfer program dari satu konfigurasi hardware dan / atau lingkungan sistem perangkat lunak yang lain . Upaya ini mencakup konversi data , perubahan program , sistem operasi , dan dokumentasi perubahan .

13. Coupling. Upaya yang diperlukan untuk interkoneksi komponen dalam aplikasi sistem dan dengan semua sistem aplikasi lain dalam lingkungan pengolahannya

14. Performance. Jumlah sumber daya komputasi dan kebutuhan kode sistem untuk melakukan fungsi yang ditetapkan. Meliputi manual dansegmen otomatis yang terlibat dalam pemenuhan fungsi-fungsi sistem

15. Ease of operation. The amount of effort required to integrate the system into the operating environment and then to operate the application system. The procedures can be both manual and automated.

Page 15: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 15

Developing a Role for Software Testers

Peran tambahan yang diberikan untuk penguji perangkat lunak adalah sebagai berikut:

1. Testing for all or part of the test factors

2. Ensuring that the documented specifications meet the true needs of the customer

3. Improving the software testing process

4. Improving the developmental test process

5. Participating in acceptance testing

6. Recommending changes to the software system

7. Evaluating the adequacy of the system of controls within the software system.

Page 16: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 16

Writing a Policy for Software Testing

TujuanKebijakan pengujian perangkat :

1. Pertama, Sebagai dasar untuk mendefinisikan apa cakupan penguji perangkat lunak dalam proses pengujian.

2. Kedua, menjelaskan kepada pihak luar, seperti manajemen organisasi, pelanggan dan pengguna TI, serta personil proyek, peran dan tanggung jawab pengujian perangkat lunak.

Page 17: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 17

Criteria for a Testing Policy

1. Definition of testing. A brief but clear definition of testing.

2. Testing system. The method through which testing will be achieved and enforced.

3. Evaluation. How information services management will measure and evaluate testing.

4. Standards. The standards against which testing will be measured.

Page 18: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 18

Contoh

Page 19: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 19

Methods for Establishing a Testing Policy

1. Management directive

2. Information services consensus policy

3. Users’ meeting

Page 20: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 20

Testing process

Page 21: 02 tis Creating an EnvironmentSupportive of Software Testing

04/13/2023 01:56 PM 21

SEJARAH SOFTWARE TESTING

Page 22: 02 tis Creating an EnvironmentSupportive of Software Testing

Bug

Istilah bug pertama kali digunakan tahun 1947 saat komputer Mark II milik Harvard University mengalami masalah.

Penyebabnya adalah seekor kutu yang mati di antara relay komputer.

Software bugs = hal – hal yang menyebabkan suatu software tidak berjalan dengan baik, yang tidak/belum diketahui sebelumnya.

Jika sudah diketahui penyebabnya disebut error.

Page 23: 02 tis Creating an EnvironmentSupportive of Software Testing

Software Bug vs Software Error

Klasifikasi Error : Syntax error : kesalahan penulisan perintah Logical error : kesalahan logika Runtime error : kesalahan saat program dijalankan

SW Error lebih mudah ditelusuri. Umumnya development tools sudah menyediakan alat deteksi

syntax error.

Bug tidak dapat dideteksi oleh development tools. Umumnya bug berupa gabungan dari logical error dan

runtime error

Page 24: 02 tis Creating an EnvironmentSupportive of Software Testing

Kasus SW error yang terkenal (1)

Disney's Lion King (1994-1995)Tepat pada hari Natal, Disney

mengeluarkan CDROM game pertamanya “The Lion King Animated Storybook” yang laku keras dipasar.

Tgl 26 Desember, pembeli protes karena game tersebut tidak bisa dijalankan.

Ternyata programmer Disney hanya melakukan testing pada komputer perusahaan dengan spesifikasi khusus yang tidak dimiliki oleh masyarakat umum.

Page 25: 02 tis Creating an EnvironmentSupportive of Software Testing

Kasus SW error yang terkenal (2)

Intel Pentium Floating-Point Division Bug (1994) Berapa hasil perhitungan

(4195835 / 3145727) * 3145727 - 4195835 ? Harus tepat nol !! Hasil perhitungan menggunakan prosesor Intel Pentium tidak

menghasilkan nol. Ditemukan oleh Dr. Thomas R. Nicely Argumentasi Intel:

Tester Intel sudah mengetahui sebelum diproduksi Tidak dipublikasikan/diperbaiki karena user tidak akan pernah melakukan perhitungan seperti itu.

28 Agustus 2000, Intel menarik kembali seluruh prosesor Pentium III - 1.13MHz

Page 26: 02 tis Creating an EnvironmentSupportive of Software Testing

Kasus SW error yang terkenal (3)

The Y2K (Year 2000) Bug (1974) Software yang dibuat sejak tahun 1974 menggunakan 2 digit

untuk menyimpan tahun. Tujuan :

Menghemat memori & harddisk Meningkatkan kecepatan proses

Asumsi: suatu SW tidak mungkin dipakai sampai 25 tahun. Ternyata masalah ini terlupakan dan menjadi kasus besar pada

tahun 2000. Diperkirakan perusahaan di dunia menghabiskan ratusan milyar

dolar untuk memperbaiki programnya.

Page 27: 02 tis Creating an EnvironmentSupportive of Software Testing

Biaya memperbaiki bug

Page 28: 02 tis Creating an EnvironmentSupportive of Software Testing

Penting !

Memperbaiki bug tidak selalu identik dengan memperbaiki software/program.

Memperbaiki bug dapat juga dilakukan dengan memberikan catatan pada user manual atau memberikan pelatihan pada user.

Memperbaiki bug bukan bertujuan untuk menghasilkan software yang sempurna

Page 29: 02 tis Creating an EnvironmentSupportive of Software Testing

What is defect?

29

Defect is a variance from a undesired product attribute Defect from product specification Variance from customer/user expectation

Categories of defects Wrong - The specification have been implemented

incorrectly (variance from user) Missing - A specified requirement is not built into product

(variance from product specification) Extra - A requirement incorporated into the product that

was not specified (variance from product specification) Defect vs Failure

Defect is incorporated in software system (it can be found within the SW, manuals or documentation) and a flaw

Defect that causes an error in operation is called a failure Defect will turn into failure, the failure will damage the

organization

Page 30: 02 tis Creating an EnvironmentSupportive of Software Testing

What is Errors, Mistake,...

30

Some terms Mistake : a human action that produces an

incorrect result Fault: An incorrect step, process, or data

definition in a computer program. The outgrowth of the mistake (potentially leads to failure)

Failure: An incorrect result. The result (manifestation) of the fault (e.g., a crash)

Error: The amount by which the result is incorrect

Mistakes are what people makeFailure are the manifestation of these fault

Page 31: 02 tis Creating an EnvironmentSupportive of Software Testing

The Six Essential of Software Testing

31

1. The quality of the test process determine the success of the test effort

2. Prevent defect migration by using early life cycle technique

3. The time for SW testing tools is now4. A real person must take responsibility for

improving the testing process5. Testing is a professional discipline requiring

trained, skilled people6. Cultivate a positive team attitude of creative

destruction

Page 32: 02 tis Creating an EnvironmentSupportive of Software Testing

Development and Testing Evolution

32

Page 33: 02 tis Creating an EnvironmentSupportive of Software Testing

Common Computer Problem

33

Software Problem Incomplete Design or Erroneous decision-

making criteriaactions have been incorrectinappropriate decision making criteria

Fail to meet customer requirement logic error or programming error

Ommitting needed edit checks for completeness of output data

Page 34: 02 tis Creating an EnvironmentSupportive of Software Testing

Data Problems

Incomplete Data Incorrect Data Obsolete Data

34

Page 35: 02 tis Creating an EnvironmentSupportive of Software Testing

The Structured Approach To Testing

35

Page 36: 02 tis Creating an EnvironmentSupportive of Software Testing

Testing in Life Cycle

36

Page 37: 02 tis Creating an EnvironmentSupportive of Software Testing

Verification and Validation

37

Verification is the process of evaluating a system/component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase (IEEE/ANSI)

Validation is the process of evaluating a system/component during or at the end of the development process to determine whether it satisfies specified requirements (IEEE/ANSI)

Page 38: 02 tis Creating an EnvironmentSupportive of Software Testing

Basic Forms of Testing

38

Full Testing starts no later than the requirement phase and continues

through acceptance testing Partial Testing

begins any time after functional design has been completed, with less than optimal influence on requirements and functional design

Endgame Testing is highly validation oriented, with no influence on requirements or

functional design Audit-Level Testing

is a barebones audit plans, procedures, and products for adequacy, correctness, and compliance to standards.

Page 39: 02 tis Creating an EnvironmentSupportive of Software Testing

Diagrams

39

Page 40: 02 tis Creating an EnvironmentSupportive of Software Testing

Computer System Strategic Risk

40

A risk is a condition that can result in a loss A risk is related to the probability of a loss The risk is always exists, although the loss may not occur Risk can not be eliminated, but the impact of the loss can be

reduced The most effective methods to reduce the impact of the loss is

testing Types of strategic risk

Incorrect result, unauthorized transaction, lost of integrity of file, processing can not be reconstructed, lost of continuity of processing, degradation of services for user, security, unreliable result, difficulties to use and operate, unmaintainable program, not portable, not be able to interconnect, unacceptable performance level

Page 41: 02 tis Creating an EnvironmentSupportive of Software Testing

Computer System Risk

yg dikumpulkan selama pengembangan &

penginstalan sebuah sistem komputer : Sistem yg sulit digunakan Hasil-hasil sistem tidak dapat dipercaya. Hilangnya integritas file. Sistem tidak dapat melakukan

interkoneksi dengan sistem lainnya.