Ifølge Ian Sommerville, "Kravstyring er at håndtere skiftende krav under kravkonstruktionsprocessen og systemudviklingen." Kravstyring er med andre ord at indsamle, analysere, forfine og prioritere alle produkter eller krav i udviklingsfasen. Krav Engineering er defineret som processen med at definere, dokumentere og vedligeholde krav. Disciplinen omfatter alle teknikker, metoder og procedurer relateret til definition og styring af brugernes behov relateret til det system, der undersøges. Alt i alt er Requirements Engineering et sæt aktiviteter, der er beskæftiget med at identificere og kommunikere formålet med et system eller software og den kontekst, hvori det vil blive brugt. Derfor fungerer Requirements Management som en bro mellem de virkelige behov hos brugere, kunder og andre kredse, der er påvirket af software eller system, og de muligheder og muligheder, som softwareintensive teknologier giver.