|
|
M.S. Thesis Defense - Rakesh Setty
Date: 31 Jul, 2008
Time: 11:00 AM
Location: 223 Atanasoff Hall
Topic: On the Test-driven Development of Emerging Modularization Mechanisms
Major Professor(s): Hridesh Rajan
Abstract: Emerging modularization techniques such as aspects and their precursors such as events in implicit invocation languages aim to provide a software engineer with better facilities to separate conceptual
concerns in software systems. To facilitate adoption of these techniques in real world software projects, seamless integration into well-accepted practices such as a test-driven development process is essential.
To that end, the main contribution of this thesis is an analysis (both pragmatic and theoretical) of the impact of a class of such techniques on the efficiency of a test-driven development process, which
involves frequently compiling and testing programs in a process commonly known as the edit-compiletest cycle. I study two variants: the popular model of aspects as in the AspectJ-like languages, and
a recently suggested alternative based on quantified, typed events embodied in the Ptolemy language. I present a case study analyzing two variants of the aspect-based model on two open source projects
and a theoretical analysis of the quantified, typed event-based model. My results show that a seamless adoption of the aspect-based model requires careful balancing of competing parameters to ensure efficiency
of a test-driven development process, whereas a quantified, typed event-based model naturally supports separate compilation thus decreasing the time spent in the edit-compile-test cycle.
|
|