Ce livre a pour but d'étudier la représentation, la saisie, l'apprentissage, la réutilisation et la réingénierie des connaissances en matière de conception de logiciels spécifiques et d'analyse des besoins dans le domaine du génie logiciel. Il aborde l'importance de la préoccupation des trois domaines qui comprend la vue sur les systèmes, les composants des systèmes et le processus de développement, qui reflètent de nombreuses approches, modèles et techniques de spécification. L'auteur introduit à SE3 la liberté à trois degrés pour la gestion des exigences logicielles et la gestion des versions. Cela constituera la base de l'approche de réingénierie logicielle, des formalismes sous-jacents de la gestion des versions en utilisant une ingénierie des exigences efficace, en liant le tout, une application de l'approche de réingénierie logicielle, des résultats et suivis de conclusions.