The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Tools for high-level application design?

What tools are you using for high-level software application design (interactions and screen content, but not the actual look and feel)? 

I'm thinking of something that would let me take a concept from a customer, like "I need an application for managing lab rats", and turn it into a basic interactive model that let you explore the basic functions, with textual descriptions of what might be on the screen, and maybe even a high-level representation of screen elements, like "A list of rats goes here".  Something that could be navigated, like maybe a list of functions you could invoke from that aprt of the application, and a navigation list to other screens or areas.

I know this is a little abstract, but I don't want the level of detail that a Dreamweaver or VB gives you, but something that's clearly NOT an application, and doesn't impose too much visual design.  Something you could use to talk to a client about requirements without getting caught up in the "Oh, that doesn't look very good, will the real application be green?"

I think people used to call these "wireframes" back in the dot-com days for web site design.

I've used things like Visio, paper and pencil, and whiteboards, but I'd really like something more interactive, easy to put something together quickly, and maybe even that could be updated or annotated by customers.

Any thoughts out there?  Does such a tool exist?  Am I alone in wanting this kind of thing?
Lo-tech App Designer Send private email
Wednesday, May 18, 2005
Once upon a time (1978) a guy named Tom Demarco, working for Mr. Yourdon, developed a system called "Systems Analysis".  It used Data Flow Diagrams (DFD) to analyze data flow through a system.

It was mostly a 'system' level view of the system -- you didn't have to break the system up into the "automated" (computer) and "manual" (what people did) parts until late in the process.

I was exposed to this around 1991, and one of my goals ever since has been to program some automated version of this.  There once WERE automated versions of this, but they all cost $5,000 per seat.  And now even those are no longer made.

Visio supports the visual elements very well, but does not support the "Data Dictionary" nor automated structure chart development at all.

So in short -- yes, I wish something like that existed, and no I don't think any current tool works that well.  Oh, having said all that, there once was a tool by a graphics company that did this -- the name escapes me at the moment, I'll try to look it up.

Wednesday, May 18, 2005
A notebook, a pencil with erase, and ruler. A scanner around and Photoshop Elements so you can scan it in and turn it into a two color bitmap after tightening up the levels.
Li-fan Send private email
Wednesday, May 18, 2005
In this case, the sketch often becomes the bottom layer of a Windows form (use a picture component) or the first layer of a Photoshop layer (for web design). In photoshop, I annotate and color the zones with a semi-transparent layer. And with that we are off to design.
Li-fan Send private email
Wednesday, May 18, 2005
You can use Visio for this, if you have different pages for the various areas, then you can link them up, so that clicking on an item will navigat for you.

I've done this when mocking up UIs for Windows apps and it works really well. Sadly, if you use the Windows widgets stencil that comes with Visio it works too well. It looks so realistic that certain Users can fool themselves into thinking that this Visio document is the system, as it looks and feels just right.

This can lead to frustration, although I guess this wuld be alleviated by handing them the invoice for the job, with the mock-up. Some would pay, I swear ;-)

On a more serious note, I think that this is one of the last frontiers in IT. If someone could address this in a way that worked for technical staff and business staff equally well, they'd become very rich. There have been various attempts over the years, but they all seem to concentrate on one set of Users, and neglect the others.

Thursday, May 19, 2005
I think your best bet is to use something along the lines of Visio and then export it as a jpeg/png.

Then your clients can open it with Paint and draw on it to their hearts' content.

It's not elegant, but it should work.

When I did something like this about 4 years ago, we had a huge whiteboard that we drew the schema on.  We spent a couple hours discussing the schema over a few days, attacked and defended it, and revised from there.

Was it portable?  No.  Was it editable?  Yes.
KC Send private email
Thursday, May 19, 2005
"It used Data Flow Diagrams (DFD) to analyze data flow through a system."

I worked with one of those tools back then, there's a good reason they have disappeared. It forces you into a pure waterfall design; you spend endless hours fussing with the diagrams getting the flows to validate. We could've written the code twice in the time it took to make the diagrams. Then, when we finished the diagrams we closed the tool and wrote the code without ever looking at the DFDs again anyway. But the PHBs liked it because we had a "design".
Anony Coward
Thursday, May 19, 2005
You could try AutoPlay Media Studio.  I have used it for this kind of thing in the past.

It makes it pretty easy to even mock things up in Photoshop and then bring the graphics in and make them interactive.

Thursday, May 19, 2005
Simple and free:  HTML, image files, and any browser. 

Try using the free MS HTML Help SDK and POV image generator.  The final document can be presented as an interactive Windows Help file and will run on any Windows 2000/XP box or MAC with Virtual PC installed.

The approach is flexable and absorbs creativity almost without limit.  The only problem is the endless "one more thing" thing can quickly get out of control.

An interesting payoff for this aproach is the Help File can be transformed into the Help File needed for the ultimate program.

Gasp!  Actually writing the program help BEFORE writing the program?  That's almost like creating a program specification before starting to code rather than just hacking until the customer is willing to pay the bill.
Lionell Griffith Send private email
Thursday, May 19, 2005
I have used "Axure Ubiquity" or similar for wireframing / prototyping of a website, and if you're into that sort of thing (application blueprints, flow charts, state diagrams), I think it should work equally well for win apps. Not the diagrams part---use Visio or competitors for that---but the semi-interactive, annotated, wireframes.

I just found I'm not into the whole business of "lofty diagrams", but then I also do not need to _communicate_ an app design to anyone else currently. is the product website.
mokka'logic Send private email
Thursday, May 19, 2005
Ah, "Anony", I completely agree with you.  I see this as a problem with the tool, not the DFD concept itself, but as the tools were so bad, AND so expensive, it kind of killed the concept too.

Then Ada came along, with its design methodology, then C++ and Java came along, with OOA/OOD/UML/RUP.  These have locked us into the place where "the tools are not SUPPOSED to generate code, nor is it possible for them to do so".

UML also provided yet another (actually, a few) incompatible diagramming objects.  That wasn't the goal, but that was the result.

I still think the DFD concept and diagramming could be pretty neat -- but I'm in the minority there, I'm sure.
Thursday, May 19, 2005
For a discipline aspiring to be considered "engineering", software application design is analogous to using sticks, stone axes, and pagan rituals compared to other engineering fields. After thirty years of software development we should be ashamed that the state of the art in application design are the drawing tools.

On a constructive note, take a look at the iRise application simulator: ( This might be closer to what you're looking for.
Skip Send private email
Thursday, May 19, 2005
Yes, the iRise thing is close to what I'm talking about.  It does look a little hi-fidelity, but it's the right idea.
Lo-tech App Designer Send private email
Thursday, May 19, 2005
I think this is *exactly* what you need/want: . I’ve been using it for a couple of years. They emphasize its utility for website design but in reality it’s very effective for almost any kind of UI design.

Let me know what you think,

Rod Send private email
Thursday, May 19, 2005
+1 to Denim. Makes me wish I had a tablet PC to use it with ... it's definitely a scribble-and-erase interface.
Thursday, May 19, 2005
... plus, I like the fact that it -looks- low-fi, which gets you away from the "well, it looks finished, so it must be almost complete" demo trap.
Thursday, May 19, 2005
Yes, Denim also looks pretty good (if a little clunky without the tablet and pen, though).

I agree that this is exactly the kind of tool I want, though, thanks for the link.

Are many people using this kind of thing, or is it fairly obscure?
Lo-tech App Designer Send private email
Thursday, May 19, 2005
It seems to be fairly obscure. I found it serendipitously a couple of years ago just because I have a habit of perusing the research section of university and corporate sites.
Rod Send private email
Thursday, May 19, 2005
Just went to the iRise site.

I think there should be a special level in Hell designated for the owners of companies that have a really cool product, but refuse on their web-sites to indicate in any way how expensive that product is.

"Contact Us", they say.  Navigate all over the site -- no prices.  Merely to find out that I can't afford it, REALLY can't afford it, or will NEVER be able to afford it, I have to give them all my contact info.  Then, once I've found out how much I can't afford it, put up with a call every three months from some happy salesman who wants to know if I want to order it now?

I would curse, but that has no information content other than that I find this intensely -- and I mean intensely -- irritating.

One other thing I find intensely irritating is that the best graphics tools cost an arm and a leg merely to find out that good as they are, they still suck.  Maybe they don't, but so far the score sheet is not good.

Rational Rose -- $5,000 per seat
System Architect -- $5,000 per seat
Visual Modeler -- comes with the no-longer-available Visual Studio 6 enterprise for around $1500.  Does VB okay, but won't round-trip engineer C++
MicroGraphix Packages -- another $3,000 for a full suite.  Still available?
iRise -- I have to suspend judgement here, their level of Hell isn't full yet.
Thursday, May 19, 2005
iRise is priced at $250,000 for one server license,1759,1554976,00.asp
Matt D.
Friday, May 20, 2005
Visio is good for this job,
Tien on Software Send private email
Tuesday, May 24, 2005

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz