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