School of Computing, University of Utah
Welcome to my webpage.
I am currently pursuing a Masters degree in Computer Science.
Presently I am working with Professor John Regehr and Eric Eide.
In a software product line, the binding time of a feature is the time at which one decides to include or exclude a feature from a software product.
Typical implementation techniques for feature binding sites are intended to support a single binding time only, e.g., compile time or run time. In some cases, however, a product line must support features with variable binding times. For example, a middleware product line may need to include both embedded system configurations, in which features are selected and optimized early, and desktop configurations, in which client programs choose and activate features on demand.
In our work, we present a new technique for implementing the binding sites of features that must have flexible binding times. Our technique is based on a combination of design patterns and aspect-oriented programming: a pattern encapsulates the variation point, and targeted aspects--called edicts --set the binding times of the pattern participants.
We use Java and AspectJ to demonstrate the usefulness of edicts by creating a middleware product line using JacORB. The product line is capable of serving the desktop (J2SE) and embedded (J2ME-CDC-PP) domains. We show that our technique effectively modularizes binding-time concerns, supporting both compile-time optimization and run-time flexibility as needed.
Links:Embedded Systems (CS7962 - Spring 2005) TA Work :
1. JTAG Tool
| Mail me at : vchakra AT cs DOT utah DOT edu | Last modified: Tue Dec 05 13:45:31 MDT 2006 |