Webbapplikationer har blivit en av de snabbast växande typerna av mjukvarusystem idag. Trots sin popularitet är förståelse för moderna webbapplikationer fortfarande en utmanande strävan för utvecklare under utvecklings- och underhållsuppgifter. Utmaningarna beror främst på JavaScript-språkets dynamiska, händelsedrivna och asynkrona karaktär. Vi föreslår en generisk teknik för att fånga upp händelser baserade på låg nivå i en webbapplikation och kartlägga dem till en beteendemodell på högre nivå. Denna modell omvandlas sedan till en interaktiv visualisering, som representerar episoder av utlösta kausala och tidsmässiga händelser, relaterade JavaScript-kodutföranden och deras inverkan på det dynamiska DOM-tillståndet. Vårt tillvägagångssätt, implementerat i ett verktyg som kallas Clematis, gör det möjligt för utvecklare att enkelt förstå det komplexa dynamiska beteendet hos deras tillämpning på tre olika semantiska nivåer av granularitet. Resultaten av vårt industrikontrollerade experiment visar att Clematis kan förbättra uppgiftens noggrannhet med 61%, samtidigt som arbetets slutförandetid minskas med 47%.
Clematis REF är en teknik för att hjälpa utvecklare att förstå komplexa händelsebaserade och asynkrona interaktioner i JavaScript-kod genom att fånga interaktioner på låg nivå och presentera dem som beteendemodeller på högre nivå.
Understanding JavaScript event-based interactions
{'venue': 'ICSE 2014', 'journal': None, 'mag_field_of_study': ['Computer Science']}