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