piclist 2009\02\16\083530a >
Thread: Agile programming
face picon face BY : email (remove spam text)(Olin Lathrop)

Vitaliy wrote:
> Olin, I don't know how you do your planning, but there is a big
> difference between upfront planning, and "just enough" planning.
> We do just enough planning for one iteration. There's nothing
> ambiguous about it.

"Just enough" sounds suspiciously like a judgement call to me.  I think it's
impossible to discuss what just enough is in the general case since every
case is so different.  Without a specific project, we're all just making hot

> We don't write specifications for features that
> will not be implemented in this iteration.
> Does this make sense?

No.  I keep saying this and you keep not addressing it, so I'll try one last

In system design you need a good idea what the whole system needs to do
before you can start designing the first piece.  This is because there are
many ways the first piece could be designed, but some ways allow that piece
to fit into the larger system nicely while others proclude it.  Without the
larger context you run the risk of painting yourself into a corner during
early development.

For example, suppose I told you that I needed a PIC system to be a accurate
clock based on WWVB.  You build the receiver, do the WWVB synching.  Now I
tell you I want to see the time displayed.  You go back and lay out the
board again, this time with a bigger PIC and add 7 segment multiplexing.
They I tell you I want the date and 24 hour format.  You have to go back and
redesign the first digit because you simplified it thinking it only ever
needed to be "1" or blank since that's all 12 hour format requires.  That
means you have to juggle pins, change the multiplexing scheme, or possibly
use a bigger PIC.  Geesh, if I'd only told you that at first!  Then I tell
you I really want this clock for network synchronization and it has to be a
NTP server.  Now you have to chuck out the PIC 16 that so nicely did just
the necessary job for the lowest cost...   etc.

> This is similar to the YAGNI (You Ain't Gonna Need It) principle: you
> don't program features that you think you may use, you only code the
> ones that you know you're going to use.

Code yes, but you do have to architect the system for the full feature set.

Embed Inc, Littleton Massachusetts, http://www.embedinc.com/products
(978) 742-9014.  Gold level PIC consultants since 2000.
<026601c9903b$685a7a40$0300a8c0@main> 7bit

See also: www.piclist.com/techref/microchip/devprogs.htm?key=programming
Reply You must be a member of the piclist mailing list (not only a www.piclist.com member) to post to the piclist. This form requires JavaScript and a browser/email client that can handle form mailto: posts.
Subject (change) Agile programming

month overview.

new search...