20090113simmonds_devon0003

Devon M. Simmonds

Assistant Professor

 

Department of Computer Science

UNC Wilmington

CIS Building Room 2046

601 South College Road

Wilmington, NC 28403

Tel: 910-962-3819

Fax: 910-962-7457

simmondsd [at] uncw [dot] edu

 

-----------------

 

Visitors since 9/8/2006

free web counter

 

 

 

Research Areas & Projects  

                         

 

 

Aspect-Oriented Software Engineering

Aspect-oriented software development is concerned with the identification, representation, development and evolution of crosscutting software features. In addition to applications to model driven development (MDD), I have interest in several other aspect-oriented research avenues. These include:

 

*    Aspect-oriented Approaches to Model Driven Development

o   Model driven engineering (MDE) is concerned with the use of models rather than code as the primary artifacts in engineering software systems. MDE raises the level of abstraction at which software is developed and evolved. An aspect-oriented approach to MDE is required when the application to be developed includes crosscutting features. Crosscutting features are features that are tangled with other system features. Aspect-oriented model driven engineering (AOMDE) approaches seek to apply the aspect oriented technology to MDE with the goal of enhancing the management of crosscutting software features during the software lifecycle. My current MDE research seeks to (1) build on earlier work to develop an AOMDE framework, (2) identify AOMDE approaches and (3) develop and evaluate languages suitable for use in AOMDE.

 

*    Using aspect to support the migration of application across middleware.

o   The development and evolution of distributed systems are generally coupled to continuously changing middleware technologies. This coupling is undesirable because changes in the middleware necessitates changes in the application, resulting in unnecessary constraints on the portability, interoperability, reusability, and evolvability of distributed systems. It is imperative that mechanisms be found to make the development and evolution of distributed systems a middleware transparent software development (MTSD) process. MTSD is the development of software with minimal consideration for a specific middleware. Research is needed to explore MTSD using aspect-oriented software development (AOSD) techniques.

 

*    Aspect-based adaptation of software components.  In CBSE software systems are developed and deployed by assembling software components. I am interested in using aspects to adapt software components.

 

*   Aspect-oriented Testing, Monitoring & Policy Enforcement.

 

*    Verification of desirable and undesirable properties of aspect-oriented composed models. Important questions in this area include: How can properties in a composed model be guaranteed?  What kinds of emergent properties can be expected when two aspects are composed or when aspects are composed with primary models? How can emergent properties be predicted and detected? What software features cannot be isolated as aspects?

 

*    Aspect-oriented Design and Analysis: I am interested in the verification of desirable and undesirable properties of aspect-oriented composed models. Important questions in this area include: How can properties in a composed model be guaranteed?  What kinds of emergent properties can be expected when two aspects are composed or when aspects are composed with primary models? How can emergent properties be predicted and detected? What software features cannot be isolated as aspects?

 

Research Projects

 

1.     Design by contract

a.     Students:

b.     Results

§  Several publications

c.      Status: Research ongoing.

______________________________