Woke up early for a last minute preparation for the SCBCD exam scheduled at 11am. Attempted the mock exam questions found in the study book. Realised that I'll fail the exam...
What a way to begin the day. It wasn't so difficult to decide on the route to take, though others may think it illogical; I'll give the exam a pass. After 3 days of trying to cram as much information as I can based on the syllabus, a sad but true realisation set in: If I really study enough and passes the exam, it means that my grey cells are mutating to become silicon chips.
Software design requires more lateral thinking than software development. Spatial visualisation helps too. Why? Because one needs to be open to alterative ideas to solving unique design problems, infusing the design with flexibility to handle currently unknown features. There are design patterns to follow, and there's nothing very rocket-science about it; but it's a fallacy to think that one can just look into a patterns dictionary and be able to find and correctly use a pattern for any particular design problem.
Good software design is akin to a well composed and orchestrated piece of music. Every components performs its intended role, every layer handling the tasks assigned well. As much as we won't expect the violin to play the part of the tuba, we should also be clear on where the responsibilities of different software parts start and end. A well-designed software should have as few grey-areas as possible at these boundaries.
These are unspoken rules that govern software design. Every software is different, just as every symphony is unique. It is then expected that each software presents itself with a different set of challenges aka problems. Although the problem-domain may be similar (harmony between different instrumental sections -to- integration between components) and the solution applied seems like a template, the resulting outcome is likely starkly different. If one can see the differences in the similar problems and solutions, the applied solution will likely result in a more positive outcome.
Mahler followed that evening. Tragic was the symphony. Enlightening.
Morning had been tragic. Evening became light. Thought-provoking.
Silicon is not grey. Grey is both. Stimulated.
Sparkled.
Sparks.
I can already feel my grey cells contorting into unrecognisable forms after reading your entry. Whoa!
ReplyDelete