Start With a Prototype

When you're creating an application, such as a client's database, or complex workbook, do you start with a prototype, or do you dive right in?

At the Unstructured Ventures blog there's an article entitled How To Fail, which lists 25 business guidelines, and alternative idea for each guideline. Number 7 discusses prototypes, mockups and samples.

"7. Build prototypes, mockups and samples.
Instead: Start building in a format and medium as close to the finished product as possible, and iterate, iterate, iterate."

I've read numerous books and articles that list the merits of prototypes and mockups, but I've never created one. I always start working in the actual application, where I can test as I go. I've got notes from my client meetings, or their list of specifications, and maybe a rough sketch of where I'm headed, but that's it.

This approach works well for me, especially in a database, where I can build a little, then test it with sample data, before building the next piece.

What's Your Approach?

Do you create prototypes? Always? Sometimes? Never?

What benefits do you get from your approach?

You may also like...

10 Responses

  1. Jon Peltier says:

    Most of my projects are small enough to be prototypes in their own right. But I usually start with a dummy user form on which I lay out the first draft of the interface. No code, just pictures, but it gives the client ideas, and helps them think of what else would be nice.

    Any new thing I’m trying, I’ll dummy up in a temporary project, so I don’t ruin what I’m working on (oh yeah, I make backups too). After it works, I drop it in. By this accretion process, I build up my program.

    BTW, I like rule 25:
    Know all the rules completely so you can break them perfectly.

  2. I don’t build prototypes. Whatever I build would be the foundation for the end product.

    In other words, I just get started and show my customer where I’m heading as soon as I possibly can. Even if the app is still (very) buggy I send a “pre-alpha” to them so they can have a go at it,see what they like and what they want me to improve.

  3. JP says:

    Thanks for the link Debra! Very useful reading.

    I do some pre-planning in terms of how the code should operate to create the end product, but prototypes, mockups and sample userforms are a waste of development time — sounds like something you’d encounter in some bureaucratic, semi-socialist corporation where everything needs a triple signoff. Invariably, those are the places where slow development gets punished :)

    I basically do the same thing Jan Karel does; start out with a userform, add some elements, and that will be the basis for the end result. It’s relatively simple to rearrange the UI, if that is needed.


    ps- does every commenter here have the same initials?

  4. Jon and Jan Karel, good point on showing a draft to the client, early in the process. I’ve learned to be very clear that it’s non-functioning, and only to give them a glimpse at what will come.
    And I save numerous dated/numbered versions as I go along, so I can always go back a step, if something goes horribly wrong.
    JP, glad you liked the link! You’re right about those bureaucracies. That’s why some clients like working with me when possible, instead of their IT departments. I don’t have committees!
    The floor is now open for comments from people whose initials are not JP. ;-)

  5. AlexJ says:

    My initials are “APJ” – does that disqualify my comments? Moderation here, please, Debra!

    BTW, I have a good cream for that nasty iteration, oops, irritation.

    – Many iterated working models – Check
    – Numbered and dated versions – Check
    – UI Mockups – Check
    … maybe I’m on the right track after all?

    I keep a running to-do list in each app for design requirements, enhancements, and bugs, and I keep track of the open, closed and in-progress items, as well as the fixes. I also track version and release numbers to keep it all straight.

    How do y’all track revisions ? I use Category and Keywords in File Properties

    I would really like to find a code library manager for VBA – I tried stuff from web posts, no luck so far.

    I had a colleague who sold a million line application family starting from 4 mocked-up operator screens (PowerPoint, I think) – the picture sure sells the concept.

  6. Alex, it’s the weekend, so I’ll relax the JP rules. ;-)
    It sounds like you have a pretty good system in place. My code library consists of trying to remember where I used a bit of code, then opening that file and copying it. Works about 93% of the time.

  7. Hey, you stole my code lib system!

  8. Jan Karel, too bad you didn’t patent it. ;-)

  9. JP says:

    I just plaster all my reusable code in personal.xls, a project-wide keyword search usually turns up the relevant section.


  10. JP, I keep a bunch of generic code in my personal.xls file too, so it’s pretty easy to find. It’s that client specific stuff that’s a bit trickier. The hard part is finding the latest version of code I’ve used in multiple projects.

Leave a Reply

Your email address will not be published. Required fields are marked *