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