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