Cuál es el mejor libro para estudiar sobre ingeniería de software?

Esta es mi pregunta favorita. Sin saber su nivel de conocimiento son áreas de interés, aquí hay algunos buenos libros. Ten en cuenta que llevo más de 50 años en esto y aunque muchos de estos libros son antiguos, creo que tienen un valor perdurable.

Los elementos del estilo de programación de Kernighan y Plauger

La práctica de la programación de Kernighan y Pike

Programación a propósito de P.J. Plauger los 3 volúmenes

Code Complete de Steve McConnell

The Practical Guide To Structured Systems Design de Meilir Page-Jones

Object Oriented Design With Applications de Grady Booch

Refactoring - Improving the Design of Existing Code de Martin Fowler

Data Modeling Essentials de Simsion y Witt

Data Modeling Patterns de Dave Hay

The Design of Everyday Things de Donald Norman

Designing the User Interface de Ben Shneiderman

About Face - The Essentials of User Interface Design por Alan Cooper

Explorando los requisitos - La calidad antes que el diseño por Gause y Weinberg

Mastering the Requirements Process por Suzanne & James Robertson

Software Requirements por Karl Wiegers

Business Rules Applied por Barbara von Halle

Perfect Software and other illusions about testing por Gerald Weinberg

Lessons Learned in Software Testing por Kaner, Bach y Pettichord

Inspección de software por Gilb y Graham

Revisiones por pares en el software por Karl Wiegers

Retrospectivas de proyectos por Norman Kerth

El Modelo de Madurez de Capacidades - Directrices para mejorar el proceso de software por el Instituto de Ingeniería de Software de la Universidad Carnegie Mellon

Controlando proyectos de software por Tom DeMarco

El mítico hombre-Month de Fred Brooks

La psicología de la programación informática de Gerald Weinberg

Los secretos de la consultoría - Una guía para dar y recibir consejos con éxito de Gerald Weinberg

Equilibrar la agilidad y la disciplina - Una guía para los perplejos de Boehm & Turner

El modelo de espiral de compromiso incremental de Boehm, Lane, Koolmanojwong y Turner

La metodología de un minuto de E.Z. Systems contada a Ken Orr

Peopleware - Productive Projects and Teams de DeMarco y Lister

Waltzing With Bears: Managing Risk on Software Projects de DeMarco y Lister

Riesgos relacionados con la informática de Peter Neumann

Getting to Yes: Negotiating Agreement Without Giving In de Roger Fisher

El arte de hablar claro de Rudolf Flesch

La quinta disciplina de Peter Senge

Salir de la crisis de W. Edwards Deming

Los cuadernos de Lázaro Long de Robert Heinlein

Estos son algunos de los mejores libros de mis estanterías. Están en orden de relevancia directa para la codificación, pero no en orden de importancia. No estoy de acuerdo con todo lo que se dice en todos ellos, pero vale la pena pensar en todo ello y a menudo vale la pena discutir.