Upload
walker
View
26
Download
0
Embed Size (px)
DESCRIPTION
Repeatedly-Executed-Method Viewer for Efficient Visualization of Execution Paths and States in Java. Toshinori Matsumura , Takashi Ishio Yu Kashima, Katsuro Inoue. Graduate School of Information Science and Technology Osaka University, Japan. Tool overview. - PowerPoint PPT Presentation
Citation preview
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Repeatedly-Executed-Method Viewer for Efficient
Visualization of Execution Paths and States in Java
Graduate School of Information Science and TechnologyOsaka University, Japan
1
Toshinori Matsumura, Takashi IshioYu Kashima, Katsuro Inoue
2Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Tool overview
REMViewer is a kind of Capture and Replay tool
Record an execution of a Java programVisualize multiple executions of a selected Java method
3Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Usual debuggerA usual debugger shows only a single point of execution at a time.
4Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
REMViewerREMViewer shows each execution path of a method in a separated view.
Developers can compare executions and states of local variables.
5Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Usage
Executiontrace
program P Bytecode InstrumentationTool
program P’
REMViewer
Execute P’on a JVM
Select a method
6Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
View
Line coverageExecution path
7Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
View
State of local variables at the cursor
Cursor
8Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
View
Select a line All the states of local variables at the selected line
9Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Example method (GCD)
Test casesgcd(3,3)gcd(6,-2)gcd(5,5)gcd(2,6)gcd(10,7)
public static int gcd(int a,int b){ if(a < 1 || b < 1){ return 0; }
int d = b; int r = a % b;
while(r > 0){ int n = d; d = r; r = n % d; } return d;}
10Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
Tool demonstration
11Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
ConclusionFeatures of the tool
Views for multiple executionsClassification of executionsStep next/back in a viewStep next/back in all views
ApplicationDebuggingUnderstanding existing test cases