Per avviare la richiesta, il cointeressato completa un modulo e lo inoltra come un record. Questa richiesta di modifica passa attraverso una serie di stati e azioni. Lo stato di una richiesta di modifica è il suo stato corrente. Gli stati tipici includono inoltrato, assegnato, duplicato o chiuso. Un'azione è un'attività che fa circolare una richiesta di modifica. Le azioni tipiche includono assegnare, respingere, convalidare, risolvere e chiudere.
Nella figura viene mostrato come un difetto passi attraverso il processo di richiesta di modifica. Un utente finale inoltra la richiesta di modifica. Un gestore dello sviluppo la assegna ad uno sviluppatore e il suo stato rimane aperto finché lo sviluppatore non prende una decisione in merito al difetto. Se lo sviluppatore sceglie di correggere il difetto, a quest'ultimo verrà assegnato lo stato risolto. A questo punto, un tecnico di qualità convalida che il difetto sia stato corretto. Quindi, il tecnico di qualità modifica lo stato da risolto in chiuso.
Le informazioni relative alle richieste di modifica vengono registrate e memorizzate come un record in un database utente. Un database utente contiene diversi tipi di record per diversi progetti e scopi. Ciascun tipo di record presenta requisiti di dati e campi univoci. Ad esempio, un progetto potrebbe avere un tipo di record per i difetti e un altro tipo per le richieste di nuove funzioni. Se molti record con input simili vengono utilizzati in un ambiente di sviluppo, spesso è utile creare un modello di record per ciascun tipo di record. Quando questo modello viene utilizzato per creare un nuovo record, i campi comuni vengono riempiti automaticamente in base al tipo di record.