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