11
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka Univ Repeatedly-Executed-Method Viewer for Efficient Visualization of Execution Paths and States in Java Graduate School of Information Science and Technology Osaka University, Japan 1 Toshinori Matsumura , Takashi Ishio Yu Kashima, Katsuro Inoue

Graduate School of Information Science and Technology Osaka University, Japan

  • 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

Page 1: Graduate School of  Information Science and Technology Osaka University, Japan

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

Page 2: Graduate School of  Information Science and Technology Osaka University, Japan

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

Page 3: Graduate School of  Information Science and Technology Osaka University, Japan

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.

Page 4: Graduate School of  Information Science and Technology Osaka University, Japan

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.

Page 5: Graduate School of  Information Science and Technology Osaka University, Japan

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

Page 6: Graduate School of  Information Science and Technology Osaka University, Japan

6Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

View

Line coverageExecution path

Page 7: Graduate School of  Information Science and Technology Osaka University, Japan

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

Page 8: Graduate School of  Information Science and Technology Osaka University, Japan

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

Page 9: Graduate School of  Information Science and Technology Osaka University, Japan

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;}

Page 10: Graduate School of  Information Science and Technology Osaka University, Japan

10Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Tool demonstration

Page 11: Graduate School of  Information Science and Technology Osaka University, Japan

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