Object-Oriented Software Engineering: A Use Case Driven Approach
Clean Architecture: A Craftsman's Guide to Software Structure and Design (Robert C. Martin Series)
Design Patterns: Elements of Reusable Object-Oriented Software
Writing Effective Use Cases
The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine
The Clean Coder: A Code of Conduct for Professional Programmers
Working Effectively with Legacy Code
An Elegant Puzzle: Systems of Engineering Management
Refactoring: Improving the Design of Existing Code (2nd Edition) (Addison-Wesley Signature Series (Fowler))
Clean Code: A Handbook of Agile Software Craftsmanship
Test Driven Development: By Example