Anda di halaman 1dari 35

Silabus dan Pendahuluan

Pertemuan 1
Matakuliah : M0232/Testing dan Implementasi Sistem
Tahun : 2008


Bina Nusantara
Tujuan Instruksional Umum
Mahasiswa akan dapat menerangkan peranan tahap
pengujian dan tahap implementasi pada rangkaian
siklus hidup pengembangan sistem perangkat lunak.
(C2)
Mahasiswa akan dapat menghasilkan perencanaan
pengujian (test plan) suatu proyek pengujian perangkat
lunak. (C3)
Mahasiswa akan dapat menyimpulkan hasil proses
pengujian yang dilakukan. (C6)
Mahasiswa akan dapat mendesain laboratorium
pengujian. (C6)
Mahasiswa akan dapat menciptakan tim pengujian
berdasarkan kualifikasi yang dibutuhkan. (C5)

Bina Nusantara
BUKU WAJIB
Black, Rex. (2002). Managing The Testing Process. 2
st
Ed.,
Microsoft Press, Redmond, Washington 98052-6399
ISBN 0-7356-0584-X


Bina Nusantara
Referensi Lainnya
www.rexblackconsulting.com
(lihat SAP)
Bina Nusantara
Topik Bahasan
1. Pendahuluan & Dasar2 Pengujian Software (Introduction & Ch. 1)
Pert. 1
2. Kualitas Perangkat Lunak (Ch. 1) Pert. 2 & 3
3. Test Plan (Ch. 2) Pert. 4
4. Test System Architecture, Cases, & Coverage (Ch. 3) Pert. 5
5. The Bug Tracking Databases (Ch. 4) Pertemuan 6 & 7
6. Test Tracking Spreadsheet (Ch. 5) Pert. 8
7. Managing the Dynamic (Ch. 6) - Pert. 9
8. Stocking & Managing a Test Lab. (Ch.7) Pert. 10
8. Staffing & Managing Test Team (Ch. 8) Pert. 11
9. Organizational Challenges for Test Manager (Ch. 9) Pert. 12
10. Distributing a Test Project (Ch. 10) Pert. 13
Bina Nusantara
PENDAHULUAN
Bina Nusantara
TIK
Mahasiswa akan dapat mendefinisikan pengertian pengujian dan
implementasi perangkat lunak. (C1) TIK-1
Mahasiswa akan dapat menerangkan peranan tahap pengujian dan
implementasi dalam siklus hidup pengembangan sistem perangkat
lunak. (C2) TIK-2
Mahasiswa akan dapat menjelaskan pentingnya pengelolaan proses
pengujian. (C2) TIK-3
Mahasiswa akan dapat menyebutkan sumber daya dan alat-alat
bantu yang diperlukan untuk mengelola dan melaksanakan proses
pengujian. (C1) TIK-4
Mahasiswa akan dapat menjelaskan strategi pengujian (test
granularity) yang akan menentukan kedalaman tingkat fokus
pengujian. (C2) TIK-5
Mahasiswa akan dapat menguraikan fase tingkatan pengujian. (C2)
TIK-6
Bina Nusantara
Pengujian Perangkat Lunak
(Software Testing)
Bina Nusantara
Pengujian (Testing)
Pengujian perangkat lunak (Software testing) adalah
proses untuk mengukur kualitas dari perangkat lunak
yang dikembangkan.
Kualitas perangkat lunak (software quality) mengukur
seberapa baik sistem perangkat lunak dirancang (quality
of design), dan tingkat kesesuaian perangkat lunak
dengan rancangan yang telah dibuat (quality of
conformance).
Standar internasional yang digunakan untuk
mengevaluasi kualitas perangkat lunak adalah ISO 9126
yang mendefinisikan karakteristik perangkat lunak yang
berkualitas.
Bina Nusantara
Why test software?
Software bugs, or errors... ...cost the
U.S. economy an estimated $59.5
billion annually...more than a third of
these costs, or an estimated $22.2
billion ... could be eliminated by an
improved testing ...
NIST (National Institute of Standards and Technology), 2002
Bina Nusantara
Why find bugs in software early?
A software defect left unfixed until
late in the development cycle
costs 80 to 1000 times more to fix
than it would if it was dealt with
earlier
Gartner Inc.
Bina Nusantara
Purpose of software testing
Software Testing is the process of executing a program
or system with the intent of finding errors *
or
Any activity aimed at evaluating an attribute or
capability of a program or system and determining that it
meets its required results **

* Glenford Myers, The art of software testing
** William Hetzel, The Complete Guide to Software Testing
Bina Nusantara
When to stop testing?
Complete testing of a system is generally unfeasible (too
expensive)
Testing normally stops:
when resources are exhausted or
when the software meets the requirements or
when the benefit of continued testing cannot justify
the added testing costs

So, how do we know this?

Bina Nusantara
Implementasi Perangkat Lunak
(System Implementation)
Bina Nusantara
System Implementation
System Implementation or Adoption deals with the
transfer (conversion) between an old system to a target
system in an organization. So if a company works with
an old software system, it may want to use a new system
which is more efficient, has more work capacity etc. So
then a new system needs to be adopted, where after it
can be used.


Bina Nusantara
Tahap Pengujian & Implementasi dalam
Siklus Hidup Pengembangan Sistem
(Testing & Implementation Phases in SDLC)
Bina Nusantara
Traditional SDLC
17
(1) Systems Investigation
(2) Systems Analysis
(3) Systems Design
(4) Programming
(5) Testing
(6) Implementation
(7) Operation
(8) Maintenance
Go Back to a previous Stage or Stop
An eight-stage systems
development life cycle
(SDLC)
Bina Nusantara
Testing & Implementation Phases in SDLC
Testing (Pengujian)
Checks to see if the information system will produce the expected and
desired results under certain conditions
Implementation (Implementasi)
The process of converting from the old system to the new system
Four major conversion strategies
Parallel conversion: the old and new systems operate
simultaneously for a period of time
Direct conversion: the old system is cut off and the new systems is
turned on at a certain point in time
Pilot conversion: introduces the new system in one part of the
organization
Phased conversion: introduces components of the new system in
stages
Bina Nusantara
Purpose of test management
To devise and apply an effective and economic test
strategy

Key elements:
Test planning
Test specifications
Test execution
Test monitoring and reporting
System evaluation


Bina Nusantara
The Tools You Need
A thorough test plan: meramalkan dan menghindari masalah yg
potensial.
A well-engineered test system
A state-based bug tracking database
A comprehensive test tracking spreadsheet
A simple change management database

Diperlukan untuk pengelolaan proses pengujian.
Bina Nusantara
The Resources You Need
A practical test lab
Test Engineers and Technician
Contractors and Consultants
External test Labs and Vendors

Diperlukan untuk menjalankan proses pengujian.
Bina Nusantara
Dasar Sistem Pengujian
Suatu pengujian yang akan dilakukan harus mempunyai
fokus yang jelas.
Ada 3 pertanyaan yang harus dijawab sebelum
melakukan suatu pengujian:
What you might test ?
What you should test ?
What you can test ?
Jawaban -> membantu menentukan fokus pengujian
yang dilakukan.
Fokus pengujian yang jelas akan menentukan kualitas
dari sistem yang diuji.
Bina Nusantara
1. What you might test?
Usaha Pengujian yang Diperluas
(The Extended Test Effort)
Bina Nusantara
Usaha Pengujian yang Diperluas
Dalam suatu proyek pengembangan perangkat keras
maupun perangkat lunak, sudah banyak proses
pengujian yang dilakukan di luar organisasi.
Ada 2 pandangan yang digunakan untuk menilai
bagaimana kelompok diluar organisasi pengujian formal
berkontribusi pada suatu proses pengujian:
1. Test Granularity : level of focus of a test
2. Test Phases : Jenis pengujian yg dilakukan dalam
berbagai macam tahapan pengujian.
Bina Nusantara
Test Granularity
Refers to the fineness or coarseness of a tests focus
Can be thought of as running along a spectrum ranging from
structural to behavioural test
Bina Nusantara
Structural Test
Structural test find bugs in low level operations such as
those that occur down at the levels of lines of code,
database schemas, chips, subassemblies, and
interfaces.
Structural tests are based on how a system operates
Bina Nusantara
Who did the structural test?
Expert Programmers can be good structural testing
Testers develop most structural test by looking at the
code and data structures
Bina Nusantara
Behavioural Test
Behavioural tests are often used to find bugs in high-level
operations, at the level of features, operational profiles, and
customer scenarios
They are functional tests based on what a system should do
Behavioral testing involves a detailed understanding of the
application domain, the business problem being solved, and the
mission the system serves
Bina Nusantara
Who did the behavioral test?
Testers who understand the design of the system, at least at a high
level, so that they can effectively find bugs common to that type of
design.
In addition to understand some of the technological issues
surrounding the system under test, behavioral testers must
understand the special behavioral test techniques that are most
effective at finding such bugs
Bina Nusantara
What is Good Behavioral Test?
Structured
Methodical
Often repeatable sequences of tester-created conditions
Behavioral testing is the primary test technique for
most independent test organizations
Bina Nusantara
Live Testing
Live Test involve putting customers, content experts,
early adopters and other end users in front of the system
In some cases, we encourage the testers to try to break
the system
Well-known form: Beta Testing

Bina Nusantara
Test Phases
Unit Testing
Component or Subsystem Testing
Integration or Product Testing
String Testing
System Testing
Acceptance or User Acceptance Testing
Pilot Testing
Bina Nusantara
Benefit of Phased Test Approach
Structural Testing can build product stability
Structural testing using scaffolding or stubs can start early
You can detect bugs earlier and more efficiently
You can gather better metrics and use best-practice techniques in
your testing effort
Phases provide real and psychological milestones against which
you can gauge the "doneness" of testing and thus the project
Bina Nusantara
Test Phase Sequencing