Introduction to the computing surveys' electronic symposium on object-oriented application frameworks
ACM Computing Surveys
Frameworks are specialized for a narrow range of applications; each model of interaction is domain-specific, e.g., designed to solve a narrow set of problems. Frameworks evolve over long periods of time. A framework is more than a class hierarchy. It is a miniature application complete with a dynamic as well as a static structure. It is a generic application and can be reused as the basis for many other applications. This topic has captured a great deal of attention in recent years, since
... orks leverage, in practical terms, capital-intensive software investment through reuse, and higher-level application programming interfaces, so that applications can be developed many times faster. Despite dramatic increases in computing power, the design and implementation of complex software remains hard. Moreover, the growing heterogeneity of hardware/ software architectures and diversity of operating system and communication platforms make it difficult to reuse existing algorithms, detailed designs, interfaces, or implementations directly. The emerging focus on object-oriented enterprise and application frameworks (OOAFs) in the OO community offers software developers both a new vehicle for reuse and a way of capturing the essence of successful architectures, components, policies, services, and programming mechanisms. By providing reusable skeletons on which to build new applications, frameworks can save countless hours and thousands (even millions) of dollars in development costs. Currently, OOAFs are a very important issue for the software industry and academia because software systems are becoming increasingly complex. I believe that OOAFs will be at the core of the technology of the twenty-first century.