Doing ''any'' design up front, as opposed to beginning coding first. ---- Does writing tests count as design in this respect? '''Yes.''' And it goes to show that you generally should do some DesignUpFront. Just IMHO, YMMV, IANAL, and so on. ''So do Whiteboard sessions and CRC card sessions.'' Does design include projecting "scoping?" That is, determining things like man loading, memory size requirements, transactions per second, etc. ''Aren't those requirements?'' Not necessarily. In many cases, we as developers need to specify a target platform for a proposed system. Here I am assuming specification flowing from the developers to the customer are not 'requirements.' Is that a valid assumption?