How to design?

When writing my SoC Application, I simply planned that first I’ll do the design, and then implement. However, problems with the JEP (which take some time to resolve, because I need to consult with the authors, who need to consult with someone, etc, etc) made it impossible (I cannot do the design if requirements are still to be determined). So I had to change my strategy.

After doing something that seemed to be more-or-less chaotic, I noticed recently that this really is Incremental development.

It’s not so hard to notice that my project is really a set of several smaller projects. I did initial draft design while writing my application. It has no details, of course.
And now, I simply take each of components, one after another, and do small desing + implement cycle. Moreover, implementation/testing phase of one component usually overlaps with research/design of next one. Why? Maybe I like jumping between different things.

I started with Psi patch: I was already familiar with Psi source code and the task I needed to accomplish in Psi, so research and design were really quick. And I started coding. In the meanwhile, I installed PyXMPP (for XMPP Component) and went through component examples.
Now, while working on the XMPP Component, I’m already checking Apache docs.

And that’s the way I work :)

Leave a Reply