Masters Thesis
Aspect Oriented Programming

Based on .Net Interception

Revised: 6/12/2010
Home  Courses  SWTrack  Code  Handouts  StudCult  CoreTech  Books  Articles  Math  Research  TechnicalLinks  Student Projects  CASE Projects  Project Topics  SWDev  WebDev  News  OtherLinks  SiteDesign  Graduates  AllPages  Office Hours  Seminars  Notices  contents 


Project Topics Master's Projects Master's Theses Research References Cloner Software Foundry

Advisor Fawcett and Candidate Krishnan-Chittur


Ramaswamy successfully defended this work on April 29, 2005, before his committee: Drs. Kamal Jabbour, Can Isik (chair), Daniel Pease, and Jim Fawcett (advisor), all from the department of Electrical Engineering and Computer Science.

Thesis Documents and Code

Defense Presentation
Thesis Document
Aspect Oriented Code


  1. Aspect Oriented Programming (AOP) attempts to separate application code from the services on which it depends. Usually the services provide system level support for transactions, security, threading, messaging, and others that are needed by the application but not central to its mission.
  2. Traditional programming provides these services through libraries and modules developed as part of the application's code. AOP provides these services using intercepted calls to specific functions. The interception processing provides the services in a way that is nearly transparent to the using application, leading to simpler, cleaner code. Often interception is defined using code attributes in a declarative style, so instead of calls to library functions to support thread synchronization, for example, we simply decorate the method with a synchronizing attribute.
  3. In this work, Ramaswamy investigated AOP, using .Net interception, to provide method synchronization, debugging, code coverage, temporal profiling, and message prioritization. He has shown that these services, some of which would be very hard to provide without interception, can be implemented with the .Net interception mechanism, and that the application part of the code is significantly simpler and easier to understand.
Defense Committee with Candidate