Applikationer som bearbetar komplexa indata reagerar ofta på olika sätt på förändringar i olika regioner av inputen. Små förändringar till förlåtande regioner framkallar motsvarande små förändringar i beteendet och produktionen. Små förändringar i kritiska regioner, å andra sidan, kan framkalla oproportionerligt stora förändringar i beteendet eller produktionen. Att identifiera kritiska och förlåtande regioner i indata- och motsvarande kritiska och förlåtande kodregioner är direkt relevant för många programvarutekniska uppgifter. Vi presenterar ett system, Snap, för att automatiskt gruppera relaterade inmatningsbyte i fält och klassificera varje fält och motsvarande kodregioner som kritiska eller förlåtande. Med tanke på ett program och en eller flera ingångar, använder Snap riktad inmatning fuzzing i kombination med dynamisk körning och påverka spårning för att klassificera regioner av inmatningsfält och kod som kritiska eller förlåtande. Vår experimentella utvärdering visar att Snap gör klassificeringar med nära till perfekt precision (99%) och mycket bra minne (mellan 99% och 73%, beroende på ansökan).
Snap kombinerar input fuzzing med dynamisk körning och påverka spårning för att kvantitativt karakterisera känsligheten i beräkningen till ändringar i input REF.
Automatically identifying critical input regions and code in applications
{'venue': "ISSTA '10", 'journal': None, 'mag_field_of_study': ['Computer Science']}