|

Kai Xu
Ph.D. Student
Department of Computer
Science and Engineering
Institute of Technology
University of Minnesota
Research Interests:
My research is carried out within the
Programming Productivity and Software Quality Research Group.
- Execution Monitoring of Object Oriented Programs
In Object Oriented programs, a functionality of an application is usually
implemented as the interactions among different components (objects) of
the application.
Sometimes, such interaction scenarios can be very complicated.
During testing or debugging, developers often need to perform
execution monitoring to ensure that each important object interaction
is implemented correctly.
Execution monitoring means monitor the software interactions and checking
(1) the sequencing constraints are enforced, and (2) each important
interaction affects the program state as intended.
To perform execution monitoring, extra programs will be constructed
to observe the software interaction and checking if the design decisions
are enforced.
Manually writing such programs can be tedious and error prone.
Thus, my advisor, Donglin Liang
, and I proposed behavior view diagrams (BVD), a monitoring
specification language that extends the
UML
2 sequence
diagrams.
A BVD specification describes
- How to identify involved objects in a particular interactio scenario
- What's the sequencing constraints among different interactions
- What action should be performed when a particular interaction is
detected (e.g. checking the states of local variables)
Monitoring and trace-visualization programs can be generated automatically
from BVD specifications.
By default, the execution trace is visualized in the same BVDs as the
monitoring specification.
When an interaction occurs in a wrong order, or the target program is
in a wrong state, an error will be reported to facilitate the debugging.
The information given by the execution monitoring allows bugs be narrowed
and identified much faster.
I am currently formalizing the semantics of BVDs and writing tools to support
code generation from BVD specifications.
Papers:
Donglin Liang and Kai Xu. Testing
Scenario Implementation with Behavior Contracts. 30th Annual International
Computer Software and Applications Conference (COMPSAC 06),
[Full text in
PDF]
Kai Xu and Donglin Liang, A Monitoring Profile for UML Sequence
Diagrams. Technical Report 06-024, Dept. of CSE, Univ. of
Minnesota, Jul. 2006.
[Full text in PDF]
Kai Xu and Donglin Liang, Supporting scenario-driven debugging with
behavior view diagrams. Technical Report 06-002, Dept. of
CSE, Univ. of Minnesota, Jan. 2006.
[Full text in
PDF]
Donglin Liang and Kai Xu,
Monitoring with Behavior View Diagrams for Scenario-Driven
Debugging, 12thASIA-PACIFIC Software Engineering
Conference (APSEC 2005), Dec 2005. ( Also see Tech
Report 05-025) [Full
text in PDF]
Donglin Liang and Kai Xu,Debugging Object-Oriented Programs with
Behavior Views, Sixth International Symposium on
Automated and Analysis-Driven Debugging (AADEBUG), Sept.
2005 (Also see Tech
report 05-013) [Full
text in PDF]
Donglin Liang and Kai Xu, Program Execution Monitoring with Scenario
Implementation Models, Tech report 04-034, Dept. of CSE, Univ. of Minnesota, Nov 2004. [Full text in PDF]
TA Courses:
Dept. of CSE, University of Minnesota, Twin Cities
- Spring 2007 - CSci5802: Software Engineering II
- Fall 2006 - CSci5801: Software Engineering I
- Spring 2006 - CSci5802: Software Engineering II
- Fall 2005 - CSci2011: Discrete Structures of Computer Science
- Spring 2004 - CSci 2011: Discrete Structures of Computer Science,
CSci5802: Software Engineering II
Education:
-
Ph.D.,
Computer Science at
The University of Minnestoa, Twin
Cities,
(Expected Jan. 2009);
-
M.S., Computer Science,
University of Minnesota, Duluth, 2006;
-
M.S., Applied Mathematics and
Statistics, University of Minnesota,
Duluth, 2003;
-
B.A.. Computer Science & Networking, Shanghai Tiedao University, China
(merged
with Tongji University, Shanghai,
China in 2000),1996.
Contact Information:
Email:
kai@cs.umn.edu
Office/Lab:
6-204 EE/CSci Building (map to
EE/CSci)
Postal Address:
Kai Xu
Dept. of Computer Science and Engineering
4-192 EE/CSci Bldg
University of Minnesota
200 SE Union Street
Minneapolis, MN 55455
USA
Phone Numbers:
+1 612 616 1732 - cell phone
+1 612 625 4002 - department office
|