Software development processes include:
Design
Here's an activity diagram showing the relationships and products of these processes:

All stakeholders (customer, users, and developer) participate in the requirements gathering process, while only developers participate in the subsequent processes.
The following lectures focus on the design processes.
The input to the design process is the analysis model, which is the output of the Requirements Analysis Process and usually takes the form of a requirements analysis document or RAD:
Requirements Analysis Document
Functional Specification (from the Requirements Gathering Process)
Analysis Object Model (from the
Analysis Process)
Dynamic Model (also from the Analysis
Process)
The output of the design process is the design model, which consists of components and the collaborations that realize them:

The design model is manifested by the System Design Document (SDD).
Only the system developers participate in the design process, which consists of two sub-processes: system design and component design:

In the system design sub-process, the major system components are identified. This includes the services they will provide to other components as well as the services they will require from other components.
In the component design sub-process the internal structure of each component is specified. This takes the form of a collaboration of sub-components or a collaboration of objects.