I think that the most common problem with software development is the lack of thought and rules. It can basically be summed up by one word: Definitions!
Definitions are basically the rules for the developer and aids everybody to run toward the same goal. And, most importantly, defines how a specific function works. It's easy to tell how it works the moment you work on it, but get back to me a few weeks from now and tell me exactly how the parsing routine for the xml class works. It also helps to determine the functionality and limitations of the routine. And a well-defined routine is much easier to continue develop.
This is one definition for one of our new routines: "A component shall never be started unless its parent is also started"
Easy enough, isn't it? Well, i didn't say it needed to be easily understandable. As a well-documented definition, you are of course able to find a descriptive text about it. What does it mean? What is the purpose of it? Why do i have to follow it?
But no matter how you document it, the definition remains the same: "A component shall never be started unless its parent is also started".
The major advantage of a simple definition is that it's easy to check, once the routine is implemented. If you ever end up at a situation where the routine contradicts the definition, you know the routine is flawed. And it's easy to tell.
"I just started this component. Is the parent started as well? No? D'oh!"
2009-01-29 - System log: Definitions
- Micael Belin
- CTO
- Posts: 169
- Joined: Thu Apr 03, 2008 9:39 am
- Location: Gothenburg, Sweden
- Contact:
2009-01-29 - System log: Definitions
micael.fredriksson@craftanimations.com
http://www.craftanimations.com
http://www.craftanimations.com
Who is online
Users browsing this forum: No registered users and 1 guest