Title
Precise Interface Identification to Improve Testing and Analysis of Web Application
Authors
William G.J. Halfond, SaswatAnand, and Alessandro Orso.
Abstract
Ada banyakpendekatanuntukmengidentifikasiantarmuka (Application Programming Interface) sebuahwebaplikasi.Akan tetapi, beberapapendekatan yang ada, memilikibanyakkekurangan, sehinggabisamembatasiefektifitasjaminankualitaswebtersebut, khususnyauntukaplikasiweb yang kompleks.
Makalahinimengenalkanpendekatanbaruuntukmengidentifikasiantarmukaberdasarkanpada proses eksekusisimbolik.
Introduction
Beberapapendekatanidentifikasiterhadapantarmuka yang berkembangadabermacam-macam. Ada pendekatan yang mengandalkanspesifikasiantarmuka yang dikembangkanolehpihakdeveloper[1,2,3]. Meskipunspesifikasi yang dikembangkanolehpihakdeveloperbisadenganakuratmengindikasikansifatdariaplikasi, namun, biasanya, proses tersebutmembutuhkanbanyakwaktu. Pendekatanlainnya, [4, 5] berinteraksidenganaplikasiwebpadasaatruntimedanmenggunakananalisadinamisuntukmengidentifikasiantarmuka yang munculsaatberinteraksi. Akan tetapi, kelemahandaripendekataniniadalahtidakadanyajaminanakankelengkapanantarmuka-nyadanmungkinuntuktidakdapatmengidentifikasiantarmuka yang tersembunyi (hidden). Bentukpendekatanlainnyaadalahdenganmetodeanalisastatis[6], yang kelemahannyaterdapatpadaketidaktepatannyadalam proses identifikasi, sehinggabisamenghasilkansuatuanalisa yang sifatnyafalse positivemaupunfalse negative.
Pendekatanbaru yang ditawarkanolehmakalahiniyaitupenggunaaneksekusisimbolikuntukmengidentifikasiantarmuka.
Methods and Materials
Dalameksekusisimbolik, sebuah program dieksekusidalamkeadaan normal sepertibiasa, hanyasaja program tersebutmenjalankansuatumasukansimbolik yang mewakilisuatunilaitertentu[7].
Untuklebihjelasnyamengenaieksekusisimbolik, dijelaskanmelaluicontohberikut :
Padapotongan program di atas, input a dan b
akanmewakilisuatunilaisimbolik. Baris 1, 2 dan 4 di dalamnyamengandungalur
program kondisional (PC, path condition). Jadi, eksekusisimbolikuntukmethod
fooakanmenghasilkan PC sebanyak 6 pathataujalur, daribaris 1
hingga 6, berupa :
Pendekataneksekusisimboliksendiriterdiridaritigalangkah,
yaitu :
- Symbolic Transformation
Ada
duatransformasi, yang pertamayaituuntukmengidentifikasinilai-nilaisimbolik,
dimananilai-nilaitersebutharusdiperkenalkandengantepatkedalam model aplikasi
IP.Yang keduaadalahuntukmenggantikan operator domain dengan symbol khusus yang
tepat, untukmemperbaharuikondisijalur (PC)
saataplikasitersebutdieksekusisecarasimbolis.
- Generating Path Conditions
Ada
empatlangkah, yaitupengaksesan IP, pengkonversiankedalamtipenumerik,
pembandinganstring, danpembatasanaritmatik.
- Interface Identification
Padalangkahini,
antarmukaakanditerimasetelah PC dianalisadanstatesimbolikdibangkitkanolehlangkahkedua.
Results
Dari
hasilevaluasimenunjukkanbahwaefisiensiteknik yang
diterapkanpadametodeinisebandingdengantekniklain, mampumeraihtingkatpresisi
yang
lebihtinggidanmeningkatkankinerjateknikpenjaminankualitasterhadapinformasiantarmuka.
Secarakhusus, denganmenggunakanpendekataniniakanmengarahpadaserangkaianpengetesan
yang lebihsedikitnamundengancakupan data yang lebihtinggi.
References