[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fwd: Re: Programming?
Adam,
My sincere apologies - I usually drain personal e-mail late in the day
during the week, and, both preceding times I attempted to respond to
you while online, Netscape died in mid-composition. I was too annoyed
to try
again immediately.
awilliam@whitemice.org wrote:
> How prevelent is "prototyping" of an application?
Increasingly, but in general it depends on how well a shop has kept up
with and heeded developments in software engineering. Prototyping (for
all but the most trivial app.'s) SHOULD be a standard approach to
developing user
interfaces. In current practice, it happens but spottily at best at
most companies. I use it for everything except cycle, batch tasks.
> Isn't this a very expensive way of developing an application.
Yes, BUT... Not when compared to the (usual) cost of developing the
WRONG application. In most development projects there are missed
specifications (things known but not mentioned and things not known)
and mis-specified requirements - prototyping helps to reveal many of
these. The most costly part of the life-cycle for any significant app.
is its post-deployment, support phase. The retrofit of functionality
missed during development costs hundreds of times more than getting it
right "up front." As a rule, we used to see relatively low development
costs and astronomically high support costs. We also witnessed an
alarmingly high turnover in app. versions or replacements (or
perpetual dissatisfaction with existing app.'s). Prototyping is one
method which transfers costs to the development phase but results in
large factor, multiplicative reductions in
support-phase costs relative to those development increases.
Prototyping also reveals flaws in the ease of use and logical flow of
the app. in light of the actual business process which only the user
is likely to detect. If the interface ain't "ergonomically" well
organized, it will
not be as well received, maybe not even used. This translates to
app.'s that look good on paper, get built, and nobody will touch (cuz
they hate the front-end)...talk about expensive.
Finally(still "re" expense), I'm prototyping in APL. I can prototype a
front-end in hours that would takes days (maybe weeks, if I'm
comparing to a CICS/COBOL alternative) in most environments. If I
throw the whole thing
out, no big loss, especially in light of what we learn about WHY I
should chuck it.
"Software engineering" is finally becoming a meaningful phrase, and
that requires that we move beyond a reliance on the "gifted artisan"
programmer/analyst who's "know-how" is incredible but entirely
personal (and
God help us, if he slips in the bathtub!). It extends the capabilities
of each of us, when we have better tools - prototyping is one such
tool.
TTFN,
Richard