[TriLUG] Looking for Software Process Clue Stick

Scott Chilcote scottchilcote at ncrrbiz.com
Fri Jul 11 14:51:35 EDT 2014


Hello LUGers,

I'm associated with a small software company that tends to follow this
general philosophy:

1. Analyze the problem.
2. Propose a solution.
3. Build a functioning prototype.
4. Demonstrate it to the customer.
5. Add features.
6. Deliver.

Notice that the prototype transitions into becoming the product. 

This process has worked reasonably well so far, due to the fact that
they build small, simple components that are individually testable. 
Then they combine them one at a time and wring out the interfaces.  It
resembles Test Driven Development, but the tests are not especially
rigorous due to the aggressive schedule.  The approach has a lot in
common with unit testing, but in a RAD context.

My concern is that the customer's requirements are growing more
complicated as we proceed.  This approach does not appear to scale
well.  The customer expects a robust, modular, and extensible product at
the outcome.

Past experience tells me that it will require more work to retool a
prototype as the basis for the product, than it would to take what we
have learned and make a clean start.  I have faced this problem over
many years as a software engineer.  I can't think of a time that I've
won the debate.  How do you answer "Can you guarantee that it will get
done faster?" 

That should not be the question, but it always is.  In the short term,
building on the prototype gets results.  In the long term, it becomes
the growing snowball of kludge.  We can break off pieces and clean them
up, but only to a point.  It was not designed to be a structural foundation.

If anyone has a good source of wisdom on this topic I'd be very
interested.  I already have Yourdon's "Death March", which seems premature.

Thanks,

   Scott C.

-- 
Scott Chilcote
scottchilcote at ncrrbiz.com
Cary, NC USA



More information about the TriLUG mailing list