soma

an entry from
Piotr's R&D blog

CME demo @ ICSE

Thursday, May 19, 2005, 12:14PM - category Software Engineering

I stopped by for an informal demo of Ossher's Concern Manipulation Environment. Ossher started off the whole aspect movement before he got eclipsed by AspectJ. He's still working on HyperJ and CME. I think his ideas are more general and powerful than those of AspectJ, but he hasn't been successful about implementing and popularizing them so far.

Anyway, on to CME. It's yet another Eclipse plugin. It slurps in info from many sources (main Java code for now, but extensible) into a neutral model. You can then query over the model and materialize queries into "concerns". You can also do some kind of composition between concerns, but that wasn't available in the demo yet. The tool seems quite similar to Robillard's FEAT; the main difference is that FEAT targets Java exclusively (I think), while CME is meant to be generic.

The critical bit (and the one I wasn't able to get much detail on, though CME is open source so I could dig into it myself) is the quality and expressibility of the model and query language. The model is, of course, graph-based, but it's not clear how it handles collections, identity, etc. The query language can do basic structure and pattern matching, and should handle transitive closures in principle. It's all starting to sound a lot like my own Braque -- I wonder if I could bring my code up-to-date and compete favourably with these "new" tools. If I only had time...




Comments

No comments yet
This item is closed, it's not possible to add new comments to it or to vote on it