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