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