Goal: Refine a design and/or implementation artifacts as specified by change request.
A change request is created to comission work to be done to achieve a specific measurable purpose. Typically a change request is owned by a single person, however it can have child requests and each of those reference different individuals. A change request specifies the end goal, and provides references to other change requests, and resources that will assist or guide the owner.
A change to a design resource implies that the resource itself is modified (not removed and a new one replacing it). Design resource are therefore versionable, and maintain 1) an identify, and 2) history.
The change is made using the tool(s) appropriate for the specific resource type. In the course of modifying the artifact, the developer may wish to reference the requirement, and view any of the references it includes. The developer may want or need to create new relationships to other artifacts of the same or different type. The developer searches entire repository looking for the resources to link to, or copy from.
The developer may check in intermediate changes to the resources. When the developer is finished with the changes (which satisfy the original requirement), the resources are checked in and delivered to the stream. The developer updates the change request indicating it is completed.