Mark, well said....
Communication Ever since the Tower of Babel incident it has been communication that has separated man and antagonized his relationships. It is not even a matter of language. How many times do we hear two people arguing only to find they are both in agreement! "We are two people separated by a common language" my old friend John Goularas often says.
I believe communication is a critical skill for any software developer involved in design work. A heads-down coder may be able to get away with lesser communication skills, but not somebody that needs to convey an understanding of a problem, and its potential solutions to both clients and to developers. A key skill I look for, and expect, from a software analyst/designer is the ability to separate the What from the How. That is, clearly specifying what the business problem is independent of how the problem will be solved. It is a simple notion and one that is so fundamental to the design process that many of us have simply forgotten about it.
One guideline that can help with this separation is to always be thinking "if somebody else were to pick up this project tomorrow, will they be able to understand the problem to be solved based on my analysis?" or "does my design accurately seperate the approach (call it a design philosophy or design solution) from the implementation details?" If we do these tasks well as designers, we reap many benefits:
- We gain our client's trust by demonstrating a clear understanding of their needs
- We improve our ability to design multiple solutions for our clients
- We leave a legacy of solid materials enabling our successors to understand what we did and why
- We empower developers (coders) by communicating both the problem to be solved and the plan for solving it - allowing them to improve on the solution or the details as their skills and experience allow.
Sheesh! I feel like I just wrote a Joel on Software piece, although nobody in their right mind would ever mistake me for him. [On The Mark]
9:25:44 AM
|
|