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