- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Tool support for understanding and diagnosing pointcut...
Open Collections
UBC Theses and Dissertations
UBC Theses and Dissertations
Tool support for understanding and diagnosing pointcut expressions Ye, Lingdong
Abstract
Writing correct AspectJ pointcuts is hard. This is partly because of the complexity of the pointcut language and partly because it requires understanding how a pointcut matches across the entire code base. In this thesis, we present algorithms that compute two kinds of useful information that can help AspectJ developers diagnose and fix potential problems with their pointcuts. First, we present an algorithm to compute almost matched join points. Second we present algorithms to compute explanations of why a pointcut does not match (or does match) a specific join point. We implemented two tools using these algorithms. The first is an offline tool that analyzes a code base and produces a comprehensive report. Using this tool, we were able to find several real problems in existing, medium-sized AspectJ code bases. The second tool is an Eclipse plugin called Pointcut-Doctor. Pointcut-Doctor is a natural extension of AJDT, the mainstream IDE for AspectJ. It provides developers easy access to the same information from within their already familiar development environment.
Item Metadata
Title |
Tool support for understanding and diagnosing pointcut expressions
|
Creator | |
Publisher |
University of British Columbia
|
Date Issued |
2007
|
Description |
Writing correct AspectJ pointcuts is hard. This is partly because of the complexity of the pointcut language and partly because it requires understanding how a pointcut matches across the entire code base. In this thesis, we present algorithms that compute two kinds of useful information that can help AspectJ developers diagnose and fix potential problems with their pointcuts. First, we present an algorithm to compute almost matched join points. Second we present algorithms to compute explanations of why a pointcut does not match (or does match) a specific join point. We implemented two tools using these algorithms. The first is an offline tool that analyzes a code base and produces a comprehensive report. Using this tool, we were able to find several real problems in existing, medium-sized AspectJ code bases. The second tool is an Eclipse plugin called Pointcut-Doctor. Pointcut-Doctor is a natural extension of AJDT, the mainstream IDE for AspectJ. It provides developers easy access to the same information from within their already familiar development environment.
|
Genre | |
Type | |
Language |
eng
|
Date Available |
2011-03-09
|
Provider |
Vancouver : University of British Columbia Library
|
Rights |
For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use.
|
DOI |
10.14288/1.0052055
|
URI | |
Degree | |
Program | |
Affiliation | |
Degree Grantor |
University of British Columbia
|
Campus | |
Scholarly Level |
Graduate
|
Aggregated Source Repository |
DSpace
|
Item Media
Item Citations and Data
Rights
For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use.