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