Clark Valberg On Interface Driven Architecture Methodology

Posted December 13, 2006 at 2:52 PM

Tags: ColdFusion, Work

At last night's New York ColdFusion User Group (NY-CFUG), Clark Valberg of Epicenter Consulting gave a most excellent presentation on what he refers to as the "Interface Driven Architecture Methodology." For a very brief summary, he basically breaks up the development life cycle into two different phases: Design and Fabrication. In this model, absolutely all interface design is prototyped and finalized by the client in the Design phase before any "coding" is done. Then, in the Fabrication phase, all prototypes are implemented including a functional code base.

I happen to think that this is a fantastic approach to software engineering. How nice would it be to know that when you start coding you don't have to do ANY interface design. Sure you have to build the views based on the prototype, but hey, you are no longer designing them, just implementing them. I look forward to trying this on small projects, so that I can prove to my company that this is a worth-while endeavour.

If you have a chance to catch any of Clark's presentations (I have seen several on usability and interface-design), you should check it out.

Post Comment  |  Ask Ben  |  Permalink  |  Print Page



Learning ColdFusion 9 - ColdFusion 9 tutorials, samples, examples, demos

Reader Comments

Dec 13, 2006 at 7:01 PM // reply »
109 Comments

This is actually what the Fusebox people have been evangelizing with the FLiP process for about 7 years. Glad to see others are recognizing the benefits as well, it is definitely a great approach!


Dec 13, 2006 at 7:17 PM // reply »
6,516 Comments

Brian,

While I don't know much about FuseBox, I do know that I listened to an MP3 about two years ago maybe of Hal Helms and Jeff Peters talking about the FLiP life cycle. This must have been about a year before Helms and Peters (Out Loud) was launched (and I think you can access this audio from that site). Anyway, that was my first introduction to the idea of up-front prototyping and the prototype freeze. I remember I copied it onto my iPod and was listening to it and got all Jazzed up and then went to work and try to sell my boss (at the time) about the idea.

It was kindly met with a "nice in theory, but that's not how the real world works". I look forward to proving that this CAN be the way the real world works on a project. Hopefully I can work on an internal project as a proof-of-concept.


Dec 17, 2006 at 3:48 AM // reply »
14 Comments

Like Brian we've been using FLiP for years and always build the front-end first as a prototype. The client can then literally see if it's what they want. They will almost always see things they hadn't thought of and want changes, but that's ok because it's only HTML. When there are no more changes you know you've got an accurate picture of what the client wants you to build. And as you say your html views/css are already done.

It's important to explain the process to clients though. Occasionally you get someone who doesn't realise that you also need to develop the back-end and thinks they can start using the app straight away.


Post Comment  |  Ask Ben

Recent Blog Comments
Nov 20, 2009 at 11:32 PM
Five Months Without Hungarian Notation And I'm Loving It
I've used headless camel case for years for not only ColdFusion variables, but also SQL tables and fields... pretty much everything involving code. I also subscribe to the "don't abbreviate and clea ... read »
Nov 20, 2009 at 11:00 PM
Five Months Without Hungarian Notation And I'm Loving It
@Marcel, Yeah, I always err on the side of longer but more readable variable names. As for the camel casing of CF methods and the headless camel casing of custom items, I get around this by always ... read »
Nov 20, 2009 at 10:56 PM
Five Months Without Hungarian Notation And I'm Loving It
I use the following and love it: my.namespace.MyComponents.functionMethodsOrUDF() CONSTANT_VALUES_OR_PROPERTIES One thing I always try is to CamelCaseBuiltInColdFusionFunctions() so others can tell ... read »
Nov 20, 2009 at 5:38 PM
Learning ColdFusion 8: CFImage Part I - Reading And Writing Images
Hi Ben, Great article. I've been looking around to see if ColdFusion image engine can programatically create the following "wrap around" effect: http://www.creativepro.com/article/photoshop-s-she ... read »
Nov 20, 2009 at 5:35 PM
Maintaining ColdFusion Sessions Across SMS Text Message Requests Without Cookies
@Dave: I talked to Gert he suggested: <cfhttp method="get" url="http://{some cf website}" result="stuff" addtoken="yes" /> Note the addition of cfhttp attribute addtoken. That should persist y ... read »
Nov 20, 2009 at 5:23 PM
Maintaining ColdFusion Sessions Across SMS Text Message Requests Without Cookies
@Todd, Ahh, gotcha, yeah that makes sense. ... read »
Nov 20, 2009 at 5:17 PM
Maintaining ColdFusion Sessions Across SMS Text Message Requests Without Cookies
Ben, sorry if I didn't make this clear. You can make it work like that if you want, just put <cfset session.foo = 1> (and <cfset application.foo = 1>) in your OnRequestStart() and it reve ... read »