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