The Blog

Sep 22, 2007

MG:Flex or PureMVC? 

by Maxim Porges @ 12:47 AM | Link | Feedback (2)

We've got a major Flex app cooking at CFI right now, the largest one we've done to date. We're re-writing the front end (and some of the back end) for the sales application used by our call center agents. This app has high visibility, since it drives the sales and marketing department that produces over $200 million in annual timeshare revenue.

When we started off with Flex 1.5 a few years ago, we naturally used Cairngorm because... well, there wasn't really anything else. Since then PureMVC has popped up, as well as Model-Glue for Flex.

Overall, we found Cairngorm a little heavyweight and too web-centric to fit naturally with Flex. I don't mean to knock the framework, since it has its merits, but we're taking the approach of treating our Flex apps as desktop apps distributed over the web, with all the stateful goodness that an app of that nature enjoys. Using a framework based on Front Controller doesn't really jive with our philosophy.

So, what do we want? I'd say two things: minimal configuration and framework boilerplate, and something that leverages the built-in event model and bindings that make Flex so cool.

Overall, I think we're equally satisfied with the job that PureMVC and MG:Flex do, but we're nervous about MG:Flex's alpha status. That being said, if the code Joe has cooked up so far works, and does what we need it to, then I don't see why we wouldn't use it.

Anyway, we have a few POCs going for both frameworks as we try to solve a few challenges with our application. Outside of the call center sales flow, we have some enterprise-wide considerations to tackle, including role-based security and some other global application management concerns. As always, I'll be blogging the outcome with fervour.