[aosd-discuss] user interfaces
hridesh at cs.iastate.edu
Thu Sep 20 12:11:01 EDT 2007
We have done a case study that involved coupling a user interface with
its model. The user interface in this case was NUnit: a unit testing
framework for .NET and the application (model) was a code coverage
application that allowed user-defined coverage criteria to be
specified and measured. The idea was to integrate these two tools in a
way that enables information generated by the coverage application to
be displayed in NUnit and UI widgets in NUnit to control the
functionality of the coverage application.
In a nutshell, we found that AOP enabled a cleaner separation of these
two concerns, which turned out to be specially beneficial when either
of these components evolved. Clean separation allowed existing
functionality (in our case coverage analysis tool) to be composed
relatively easily with the newer version of the evolving component (in
our case NUnit).
In terms of enabling language constructs, we discovered that
observer-like functionality alone is not sufficient. In our case
study, static crosscutting (inter-type declarations) played a major
role. In particular, it was helpful in separating UI elements relevant
to a specific concern into its own module. We were able to more or
less transparently add the UI widgets relevant to the code coverage
concern into NUnit, while keeping these two implementations separate
so that they can evolve independently.
Hope that helps. I have a preliminary version of the findings
available as a technical report from the URL:
and I will be happy to provide revised versions, if you would like.
Assistant Professor of Computer Science
Iowa State University
On 9/20/07, Sofie Goderis <sgoderis at vub.ac.be> wrote:
> I've been looking for information on the use of AOP for coupling a
> user interface with its model (or application). So far I haven't
> found anything beyond the observer pattern implementation with
> aspects. Therefore I am addressing this question to this list, and
> its many experts in AOSD. Has anyone of you encountered anything with
> respect to user interfaces and aosd?
> discuss mailing list - discuss at aosd.net
> To unsubscribe and change options, go to:
> Check out the AOSD.net Wiki: http://aosd.net/wiki
More information about the discuss