Thursday, 8 January 2009

mechanism to express adaptation

How does one express adaptation in software architecture? What's the DNA? Do we use the component-connector-topology permutations? Or is there another mechanism possible?

Would add-C/C/T? and delete-C/C/T be enough?

The more that I think about it, the natural way of adaptation where multiple organisms evolve in different ways and the fittest survive doesn't seem feasible. No practical application will have the luxury of trying out multiple solutions till the best one emerges. Each particular adaptation that the application makes will have to be incrementally better or rolled back immediately.

What does this mean for the monitoring mechanism? Will it necessarily have to be like the one described in [1]? Without layers, would it be impossible to have something sensible and workable?

[1] @inproceedings{citeulike:1840134,
address = {Washington, DC, USA},
author = {Kramer, Jeff and Magee, Jeff },
booktitle = {FOSE '07: 2007 Future of Software Engineering},
doi = {},
isbn = {0769528295},
keywords = {architecture, self-organising},
pages = {259--268},
publisher = {IEEE Computer Society},
title = {Self-Managed Systems: an Architectural Challenge},
url = {},
year = {2007}

Wednesday, 7 January 2009

starting from scratch -- almost

The christmas hols (and the associated lack of work done) have put paid to any continuity of thought. The only thing I've done is track down three PhD theses that are pretty close to my idea of what I'm doing.

The first one is from CMU (I might even have had coffee with this guy once):
Rainbow: Cost-effective software architecture based adaptation by Shang-Wen Cheng, Ph.D, Carnegie Mellon University, 2008

Supporting architecture- and policy-based self-adaptive software systems
by Georgas, John C., Ph.D., University of California, Irvine, 2008

Service clouds: Overlay-based infrastructure for autonomic communication services
by Alam-Samimi, Farshad, Ph.D., Michigan State University, 2007

I've gotten in touch with Cheng and John Georgas, but I'm unable to get in touch with Farshad to get a copy of his PhD thesis.

Of course, getting a copy of the thesis isn't the same as reading, absorbing and understanding it. But it's a start.