Ci sono interi corsi universitari dedicati all'ingegnerizzazione dei requisiti, quindi una discussione completa va oltre lo scopo di questa domanda. Tuttavia, posso indicarti alcune risorse che dovrebbero essere utili per iniziare. Ti suggerirei di attirare l'attenzione, sia in ciò che fornisco che in altre risorse, e cercare di concentrarti su aree più specifiche.
Il manuale utilizzato nel mio corso di ingegneria dei requisiti era Requisiti software . Ho anche acquistato un addendum al libro, Ulteriori informazioni sui requisiti software . Tendono ad essere più interessati ai requisiti in metodologie basate su pianificazione e documentazione, discutono storie di utenti e utilizzano casi in aggiunta ai documenti di specifica dei requisiti formali. Esaminano anche le tecniche di elicitazione dei requisiti e la visione e il campo di applicazione. L'autore di questi libri ha un sito Impatto sui processi , che include anche alcune risorse, inclusi vari modelli e guide.
Se stai cercando altri modelli da seguire, di solito raccomando Modelli ReadySet . Ci sono vari modelli da seguire per diverse attività e fasi del ciclo di vita. Assicurati di adattarli in base alle tue esigenze per adattarli al meglio al tuo processo di sviluppo.
Per quanto riguarda chi sviluppa le specifiche, dipende da come è strutturato il progetto, ma solitamente è una collaborazione. Ho visto dove il cliente sa quello che vuole e lavora con l'organizzazione di sviluppo per sviluppare una visione, uno scopo per il lavoro e le specifiche dei requisiti. Ho anche visto dove il cliente ha documenti che specificano il business e i requisiti operativi e le organizzazioni di sviluppo lavorano con questo per sviluppare i requisiti di sistema che possono essere utilizzati dai tecnici.