An Excellent Article on MVC
Joe Berkovitz had an article published on DevNet some months ago, but I just tripped over it now. It has a stunningly good description of MVC (and MVCS) along with a succinct diagram that is the best I’ve seen for the concept.
I’ve been using Cairngorm, but seeing another Flex-based MVC architecture is always good for the mental toolbox. His arch is lighter-weight than Cairngorm, but I don’t see it handling remote (asynchronous) messaging anytime soon. Of course, if you don’t expect to need remote asynchronous messaging for a project…

Thanks for pointing that out, Daryl. I also like the point made on the Cairngorm site itself (http://labs.adobe.com/wiki/index.php/Cairngorm), where it not only explains that Cairngorm is itself a framework, but it goes on to offer the following interesting thought on helping folks decide whether and when they should use it, which I think is worth considering in debating use of most any framework:
"The benefits of the Cairngorm architecture are realized when developing complex RIA applications with multiple use-cases and views, with a team of developers, and with a multi-disciplinary development team that includes designers as well as creative and technical developers. "
Comment by charlie arehart — April 6, 2007 @ 12:00 am
I’m not sure I see the benefit of having a Service layer. The Model and Views are obvious, the Controller is a little less obvious but more so with the simple idea that model and view should not talk directly to each other. But… a Service layer. I’m just not sold on it. How it really any different from a Controller?
Comment by Steve Nelson — April 8, 2007 @ 12:00 am
The Service layer abstracts out services. Thus making a change to the type of service used easy. Consider a change placing your CFC in a different place, or your POJO needs refactored, or you need to switch to using a remote object instead of a webservice. Only one place to do this. The Controller is only a traffic cop really.
DK
Comment by Douglas Knudsen — April 9, 2007 @ 12:00 am