Voice application development requires specialized speech related skills besides the general programming ability. Encapsulating
the speech specific behavior and complexities in prepackaged, configurable User Interface (UI) components will ease and expedite
the voice application development. These components can be used across applications and are called as Reusable Dialog Components
(RDCs). In this paper we propose a programming model and the framework for developing reusable dialog components. Our framework
facilitates the development of voice applications via the encapsulation of interaction mechanisms, the encapsulation of best-of-breed
practices (ie. grammars, prompts, and configuration parameters), a modular design and through pluggable dialog management
strategies. The framework extends the standard J2EE/JSP based programming model to make it suitable for voice applications.