Linked by Yamin on Wed 9th Sep 2009 16:17 UTC
General Development I've been developing software for quite a few years. One of the issues that seems to come up again and again in my work is this concept of design and implementation. I recall it being a significant part of my education at the University of Waterloo's Computer Engineering program as well. The message was always the same. Never write code first. First you must design software by writing a design document, flow charts, pseudo-code, timing charts... then it's merely a trivial matter of implementing it. Make note of the attitude here given towards implementing. The real work is in the design, and it's just a trivial matter of implementing it. It sounds so simple doesn't it? Now, how often does this work out in real life?
Permalink for comment 383669
To read all comments associated with this story, please click here.
RE: Great article!
by TemporalBeing on Sat 12th Sep 2009 11:28 UTC in reply to "Great article!"
TemporalBeing
Member since:
2007-08-22

But then why write a specification?

The problem is thus - where to draw the line between lack of specification and over specification.

If you do not specify enough, things go awry because there is not enough clarity.

But if you over specify, then you leave no room for error in the design and flexibility in resolving problems - you essentially micromanage, and write the code yourself.

There is a balance that must be found between the two, but that balance can only be properly struck once there is a true discipline to the software field, and coders lose their arrogance. Sadly, it will probably be a long time till that happens.

Reply Parent Bookmark Score: 2