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