This paper describes a generic process framework for developing software systems based on commercial off-the-shelf (COTS) products. The framework is based on Barry Boehm's familiar spiral development process. However, it is primarily intended for projects that make significant use of commercial components and other pre-existing software as elements of the system to be fielded. The aspects of the process that are most affected by this reliance on COTS components lie in the area of requirements, and the description of the process is most extensive in that area. The necessity of using system prototypes as the major vehicle for reducing risk is assumed, as are parallel and interleaved periods of gathering and refining knowledge about the system to be built. Each element of the process is first described and then depicted in several models, using Integrated Definition modeling technique (IDEF0). The paper describes how the interactions between the candidate COTS components, the stakeholders' implicit and explicit needs, and the context in which the system will operate all provide interacting constraints on both the process and the resulting system