7

Click here to load reader

Software Testing for SDLC Evolution Modeling

Embed Size (px)

DESCRIPTION

Tahapan software testing adalah tahapan akhir dari tahapan pengembangan software ( SDLC ). Beragam metode SDLC yang tersedia, pada pelaksanaannya dipilih dengan mempertimbangkan kerumitan yang akan ditempuh termasuk mempertimbangkan kerumitan dalam metode STLC. Pada journal IT ilmiah ini akan dijelaskan bagaimana metode STLC konvensional ( secara manual maupun otomatis ) menyesuaikan terhadap metode SDLC yang sudah ditentukan, dalam hal ini metode SDLC dipilih adalah metode SDLC model evolusi ( SDLC evolution modeling ). - Author : Herwin Anggeriana, S.Kom, M.Kom

Citation preview

Page 1: Software Testing for SDLC Evolution Modeling

Software Testing Life Cycle for SDLC evolution modeling Tahapan software testing adalah tahapan akhir dari tahapan pengembangan software ( SDLC ). Beragam metode SDLC yang tersedia, pada pelaksanaannya dipilih dengan mempertimbangkan kerumitan yang akan ditempuh termasuk mempertimbangkan kerumitan dalam metode STLC. Pada journal IT ilmiah ini akan dijelaskan bagaimana metode STLC konvensional ( secara manual maupun otomatis ) menyesuaikan terhadap metode SDLC yang sudah ditentukan, dalam hal ini metode SDLC dipilih adalah metode SDLC model evolusi ( SDLC evolution modeling ).

Follow Twitter | @aherwin Fan Page | http://www.facebook.com/ITlinks.co.id

2012

Herwin Anggeriana, S.Kom, M.Kom

Page 2: Software Testing for SDLC Evolution Modeling

Pendahuluan

Tahapan ( Phase ) testing software

merupakan tahap akhir dari keseluruhan

pengembangan software. Tahapan dimana

tingginya aktifitas team pengembangan

software, membutuhkan konsentrasi serta

akurasi karena tahapan ini meminimalkan

tingkat resiko dari kesalahan dan menuntut

kualitas software seperti yang diharapkan

dan kelengkapan software yang dibangun.

Sepanjang sejarah, fungsional dari

tahapan software testing menjadi tantangan

tersendiri bagi organisasi atau perusahaan

dalam memenuhi kompleksitas fungsional,

mencapai maksimum fungsional source

code software, serta tingginya biaya yang

harus dikeluarkan organisasi atau

perusahaan untuk mensimulasikan fungsi

software dan keamanan dari software.

Seiring berjalan waktu dengan makin

tingginya tingkat kompleksitas aplikasi yang

dibangun serta kompleksitas teknologi yang

dipergunakan, menjadikan suatu kesulitan

tersendiri. Terkadang dalam metode

pengembangan software terpilih dengan

mempertimbangkan sulitnya tahapan

software testing yang akan dihadapinya.

Pada dasarnya, tahapan software

testing memiliki metode tersendiri yang

bertujuan untuk melengkapi metode

pengembangan software ( SDLC ) yang akan

berjalan. Jadi apapun metode SDLC yang

terpilih nantinya akan menempuh tahapan

akhir yaitu software testing.

Dalam journal IT ilmiah ini,

membahas bagaimana metode SDLC model

evolution dibangun dan metode software

testing menyesuaikan dengan metode

tersebut sehingga menghasilkan kualitas

software seperti yang diharapkan.

SDLC Model Evolution

Metode software development life

cycle ( SDLC ) model evolution merupakan

metode gabungan antara SDLC model

waterfall dengan SDLC model spiral.

Pada Fig.1 merupakan metode

software development life cycle ( SDLC )

model evolusi ( Scach and Tomer, 2000 ).

Fig.1. Metode software development life

cycle ( SDLC ) model evolusi.

Tahapan requirement, tahapan

desain serta tahapan spesifikasi dilakukan

simultant tahap demi tahap seperti yang

dilakukan dalam metode SDLC waterfall.

Page 3: Software Testing for SDLC Evolution Modeling

Ketika tahapan requirement sudah selesai

dan berlanjut ke tahapan desain ternyata

terdapat kebutuhan baru ( new

requirements ) yang dibutuhkan dalam

pengembangan sistem. Maka tahapan

desain tidak bisa kembali ke tahapan awal

yaitu tahapan requirements tetapi tahapan

requirements yang akan mencari dan

menghasilkan kembali kebutuhan ( Fig.2 ).

Fig.2. Tahapan implementasi dari metode

SDLC model evolusi.

Pada Fig.2 terdapat node – node yang

menjadi simbolisasi dari setiap tahapan.

Node R merupakan tahapan requirements,

node S merupakan tahapan spesifikasi

requirements, node D merupakan tahapan

desain dari spesifikasi, node C merupakan

tahapan coding ( programming ).

Sedangkan penomoran yang terdapat

pada masing – masing node merupakan

penomoran yang dilakukan, sebagai contoh ;

node R1 merupakan tahapan requirements

ke 1, dan seterusnya.

Pada Fig.2 ketika langkah awal

pengembangan software ( node start )

dimulai, maka dikumpulkan beberapa

variabel kebutuhan ( requirements ).

Ketika memasuki tahapan

requirements dan variabel sedang

diformulasikan ternyata berjalannya waktu

dibutuhkan variabel baru ( new

requirements ), maka variabel baru tersebut

tidak dapat ditambahkan ke dalam variabel

yang sedang diformulasikan karena variabel

sebelumnya memiliki dimensi kebutuhan

tersendiri.

Oleh karena itu, dari node start dapat

bercabang dan menghasilkan requirement

baru ( new requirements R2 ) ketika node

start sedang berlanjut ke tahapan

requirement ( node R1 ).

Variabel requirement baru ( new

requirements R2 ) tersebut akan

diformulasikan kembali setelah variabel

requirement berlanjut ke tahapan spesifikasi

dan tahapan desain. Secara proses

implementasinya, tahapan ini dilakukan

secara paralel ( Fig.2 ).

Dengan metode SDLC model evolusi

maka perubahan atas kebutuhan sistem

akan mudah untuk mencari dan

menemukan arsitektur yang berubah karena

perubahan tersebut.

Page 4: Software Testing for SDLC Evolution Modeling

Metode SDLC model evolusi

mengharapkan modifikasi terjadi hanya

pada arsitektur sistem yang berhubungan

dengan perubahan kebutuhan (

requirements ), arsitektur sistem yang lain

yang tidak berhubungan dengan perubahan

kebutuhan dapat dibiarkan dan tidak

mengalami modifikasi.

Software Testing Life

Cycle

Metode SDLC model evolusi

termasuk metode pengembangan software

kategori rumit, dan berulang. Tahapan

software testing life cycle ( STLC ) harus

dapat menyesuaikan dengan metode SDLC

tersebut.

Secara konvensional, teknik software

testing dilakukan secara dua konsep yaitu

(1) manual testing, (2) automatic testing

menggunakan tools.

Fig.3. Metode software testing life cycle (

STLC ).

Pada fig.3 dalam metode software

testing life cycle ( STLC ) terdapat beberapa

tahapan dalam pelaksanaannya yaitu

tahapan requirements, tahapan analysis,

tahapan test planning and scenario design,

tahapan test development, tahapan test

execution, tahapan detect fixing cycle,

tahapan test cycle closure, dan tahapan test

result analysis.

Ketika metode SDLC model evolusi

diimplementasikan dan source code

program sudah selesai dibangun, maka

dilanjutkan ke metode software testing

terhadap kinerja source code dan fungsional

( functional ) dari program tersebut.

Penyesuaian metode software testing

life cycle ( STLC ) terhadap SDLC model

evolusi berdasarkan fig.2, maka

penyesuaiannya seperti pada ( Fig.4 ).

Fig.4. Penyesuaian metode software testing

life cycle ( STLC ) terhadap SDLC model

evolusi.

Page 5: Software Testing for SDLC Evolution Modeling

Ketika satu tahap metode SDLC

model evolusi sudah menyelesaikan

tahapan pemograman ( coding node C1 )

maka hasil source code ( node C1 ) akan

berlanjut ke metode penyesuaian software

testing life cycle.

Pada fig.4, node C1 source code dari

hasil pengembangan sistem dilakukan

tahapan software testing. Sebelumnya

metode software testing dimulai dari

requirements ( node R1 ) yang akan

dijadikan acuan. Hal ini dilakukan karena

requirements untuk pengetestan software

harus disesuaikan dengan keadaan dan

tujuan dari software tersebut didevelop.

Dari tahapan requirements

dilanjutkan ke tahapan analysis dan

selanjutnya ke tahapan test planning &

skenario design.

Pada tahapan test case development,

node S1 dan D1 akan dijadikan acuan dalam

menjalankan tahapan test case

development, hal ini dilakukan karena

disesuaikan dengan desain dan spesifikasi

ketika software tersebut didevelop.

Tahapan test execution akan

dijalankan ketika semua tahapan sudah

diselesaikan. Tahapan test execution akan

memproses pengetestan software, dalam

hal ini pengetestan software dilakukan dari

sisi manual maupun sisi automatic testing

tergantung pada keadaan dan kebutuhan

saat itu terjadi.

Jika tahapan test execution

menghasilkan masalah teknis secara

fungsional maupun ketidak sesuaian

software seperti yang diharapkan oleh

requirements ( node R1 ), maka metode

software testing ( STLC ) akan berlanjut ke

tahapan detect fixing cycle.

Pada tahapan detect fixing cycle,

semua error maupun masalah teknis akan

dikumpulkan dan di-recek kembali

kesesuaian tahapan test case development.

Secara paralel terlepas dari

ditemukan masalah teknis secara fungsional

maupun ketidak sesuaian tujuan serta

harapan dari software yang dibangun.

Tahapan akan berlanjut ke test case closure.

Tahapan test case closure akan

berlanjut ke tahapan test case analysis.

Pada tahapan test case analysis akan

menghasilkan laporan hasil pengetestan

kualitas software serta rekomendasi yang

dapat dilakukan ( node R2 ).

Pada nantinya node R2 ini akan

menjadi bahan masukan untuk melengkapi

proses pengembangan software tahapan

selanjutnya.

Pada fig.4 terdapat beberapa node

dengan penomoran. Penomoran node

tersebut dapat diganti dengan node

selanjutnya.

Page 6: Software Testing for SDLC Evolution Modeling

Kesimpulan

Metode SDLC model evolusi

merupakan gabungan dari SDLC model

waterfall dan SDLC model spiral. Perpaduan

dari dua metode ini memiliki keunikan

dalam implementasinya sehingga dalam

melakukan tahapan software testing

diperlukan modifikasi sesuai dengan kondisi

SDLC model evolusi yang sedang berjalan.

Dalam beberapa studi kasus yang

terjadi, metode SDLC model evolusi memiliki

dimensi yang berbeda – beda tergantung

pada tingkat kompleksitas sistem yang

dibangun. Dalam journal ini metode SDLC

model evolusi menggunakan dua dimensi

dalam proses pengembangan software.

Ketika proses pengembangan

software sudah menyelesaikan pada

tahapan pemograman ( coding ) maka

tahapan akan berlanjut ke metode software

testing life cycle ( STLC ).

Dalam journal ini metode SDLC model

evolusi menggunakan dua dimensi, dan

proses pengembangan software yang

berulang – ulang, hal ini dikarenakan untuk

memenuhi kebutuhan sistem yang terus

menerus terjadi seiring perkembangan

bisnis dan waktu. Metode STLC harus

menyesuaikan dan beradaptasi terhadap

SDLC model evolusi yang dijalankannya.

Metode STLC dimulai dari tahapan

requirements, analysis, test planning &

skenario design, test case development, test

execution, test cycle closure, dan test result

analysis.

Ketika coding sudah selesai

melakukan tahapan testing dan

menghasilkan kualitas coding yang

diharapkan, maka coding berikutnya dari

hasil SDLC model evolusi akan dilakukan dari

tahapan awal STLC ( tahapan requirements )

yang ditentukan SDLC model evolusi

termasuk tahapan test case development.

Daftar Pustaka

Boehm, B. (1988). Spiral Model of Evolution.

In A Spiral Model of Software Development

and Enhancement (pp. 61 - 72). CA: IEEE

Computer Society.

David, B., William, D., Leonard, G., Charles,

H., Raghu, K., & Lynne, R. (1998).

Preliminary Success Estimates for

Approaches based on Binomial Models,

Coverage Designs, Mutation Testing, and

Usage Models. Software Testing by

Statistical Methods , 31.

Jitendra S, K., & Mahendra S, Y. (n.d.).

TESTING FOR OBJECT ORIENTED SOFTWARE.

Indian Journal of Computer Science and

Engineering , 4.

Schach, S. R., & Tomer, A. (2002). evolution.

Development/Maintenance/Reuse :

Software Evolution in Product Lines , 11.

Page 7: Software Testing for SDLC Evolution Modeling

Tomer, A., & Schach, S. (2000). The

Evolution Tree: A Maintenance-Oriented

Software Development Model. Zurich:

McGrawHill.

Vanitha, K., & Dr. K, A. (2012). Conventional

Software Testing Vs Cloud Testing.

International Journal Of Scientific &

Engineering Research, Volume 3, Issue 9 , 5.

Web Application Testing Checklist. (n.d.).

Retrieved from Guru99:

http://www.guru99.com/web-application-

testing.html

Author : Herwin Anggeriana, S.Kom,

M.Kom

Twitter : @aherwin

http://www.facebook.com/ITlinks.co.id