This research project is developing new software engineering principles, techniques, and programming technology based on an improved understanding of how crosscutting concerns, such as real-time behavior and memory constraints, interact and can be modularized within embedded middleware. This project investigates how a combined component-based and aspect-oriented software engineering approach can advance the development of embedded applications and middleware. Experience with existing middleware for distributed, real-time, and embedded (DRE) systems has illustrated both the benefits and the limits of implementing configurability through previous approaches to components and aspects. The research goal is to achieve expressive power through an integration of components and aspects. The new model supports aspect definition and application at the component level: aspects are constructed through new compositional forms, and conversely, aspects introduce functionality at the level of component definitions and interconnections. Real-time predictability constraints are addressed through the model's support for real-time Java: components and aspects adapt to real-time concerns according to their contexts. The model allows developers to manage complexity in new ways: by allowing flexible middleware configuration; by supporting both component-like encapsulation and controlled exposure to aspects; and by providing sound type checking of middleware configurations. The new techniques are being validated through the development of new, modular, and highly configurable DRE middleware for real-time Java.

The knowledge that comes from this research will drive progress in embedded systems development and enable more effective techniques for modularizing concerns across application and middleware boundaries. The project's technology is expected to be particularly useful for designing and building embedded and real-time software systems, as well as software systems in general. Both component systems and middleware have become popular commercially; this technology should enable and demonstrate the evolution of future component systems and middleware.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Application #
0410285
Program Officer
D. Helen Gill
Project Start
Project End
Budget Start
2004-09-01
Budget End
2008-08-31
Support Year
Fiscal Year
2004
Total Cost
$360,002
Indirect Cost
Name
University of Utah
Department
Type
DUNS #
City
Salt Lake City
State
UT
Country
United States
Zip Code
84112