Re: Full life cycle development



Responding to Phlip...

However, in real life, developers who are not as smart as you or I tend
to re-invent Waterfall naturally. They code-and-fix, discover new
requirements, and discover their code is now brittle. So they say, "The
next time, we will gather all the requirements first, before we start."

I have heard them say exactly that, with my own ears.

A shop that naive about software development has a lot more and bigger problems than waterfalls. B-)


...The fallacy is that the maintenance cycle
tends to be much longer than the original development cycle so the
superstars are stuck doing the boring stuff too long and they go away
anyway...


This superstar often gets stuck not being allowed to automate the
boring stuff, and not allowed to collaborate in a way that would
sustain the automation of the boring stuff. Not everyone likes to learn
Lex & Yacc just to avoid tweaking the same dumb C# file every other
day.

Remember that I'm a translationist. I /know/ large scale automation isn't that easy. B-) I've seen shops spend more time tinkering with their rat's nest of perl scripts than they would have spent just writing the code directly.


But automation isn't the issue here. At some level the developer has to express the requirements changes in software terms. Whether that is in 3GL code directly, massive parametric data files, or a translation OOA model, getting this quarter's FASB or IRS changes into a General Ledger application gets stale fast.

There is also the psychology of closure in the sense of being Finished when developers release a large application. That's why test-first and, to some extent, unit testing was introduced in the '70s. If writing the tests is deferred until all the software is done, it is not in the developer's interest to find defects that will delay being Finished (consciously or unconsciously). So one gets lousy test suites. And as-you-go unit testing reduces the number of defect fixes in acceptance that prolong the agony of Not Being Finished.

If lack of closure on Finishing can cause quality problems like that, imagine what the effect is on original developers who are Never Finished because they also own the post-release maintenance.


************* There is nothing wrong with me that could not be cured by a capful of Drano.

H. S. Lahman
hsl@xxxxxxxxxxxxxxxxx
Pathfinder Solutions  -- Put MDA to Work
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
(888)OOA-PATH



.