A data warehouse is constructed by integrating data from multiple heterogeneous sources that support analytical reporting, structured and/or ad hoc queries, and decision making.
Extreme programming (XP) is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. It is a type of agile software development process. Extreme Programming is useful when the requirements change frequently.
Waterfall model is a sequential design process which start the progress from conception, initiation, analysis, design, construction, testing and maintenance. The waterfall model is useful when the requirement finalized properly.
The Iterative development is a development process which split the big tasks to deliverable small tasks. Each task completed and moved to system iteratively. It contains Inception, Elaboration, Construction and Transition phases.
The RAD Model is an incremental model which develop the modules parallel. RAD is especially well suited developing software that is driven by user interface requirements.
Agile software development is a group of software development methods in which requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. Agile Programming is to construct software in a series of short (typically two to four weeks) iterations.