system business product application developers people provides clients services functionality language developing integration other driver systems client layer staff which macroview allows framework access developed manual their source these domain design where windows products software approach applications tasks example information interface server process based using needs standard collection automated development JoelLipman.Com