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