Why is software design so hard?
I've been busy finalising the specifications for
the first of the Symcar products, Workflow, and it occurred to me how much
effort I'd expended purely on the
design.
Pretty much everyone in the
development game agrees that good, comprehensive design is the key to producing
good software. Likewise, pretty much everyone agrees that software design is
hard to do well. I find it interesting that this disparity exists - where are
the tools to help make software design
easier?
Such tools do exist, but most
of them have taken on lives of their own and migrated into the enterprise arena
(think Rational Rose) and have left behind the mundane world of pure software
design. The other tools, that do still exist to help with pure design, are
general purpose diagramming tools like Visio or OmniGraffle (which I use). Take
a look around and you'll see that this is the case pretty much industry-wide,
there are general-purpose diagramming tools that help to
diagram
software design; then, there are the big, expensive tools that exist to help
with the design and
production
of enterprise-level software.
Where are
the tools for the likes of me? I'm a small business developer and can't afford
Rational Rose or its ilk, but I am looking for something that helps me more than
OmniGraffle*. Anyone know of anything that fills this
role?
* I'm not insinuating that
OmniGraffle isn't a good tool, it's excellent - in many ways better than Visio
(much faster, for instance). Also it's a Mac application, which is ideal since
I do all my design and documentation work on the Mac. The problem is that
OmniGraffle is just a diagramming tool, not a software design tool.
Posted: Thu - January 29, 2004 at 02:04 PM