The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition
by Frederick P. Brooks Jr. · Addison-Wesley Professional
Brooks's essays on why software schedules slip, why adding people to a late project makes it later, and how conceptual integrity, team structure, and maintenance costs shape outcomes. The anniversary edition adds the 1986 paper "No Silver Bullet".
This link may earn us a small commission at no extra cost to you. Affiliate disclosure
More resources on Software Development Lifecycle
Atlassian Agile Coach
Atlassian Agile is a resource hub offering practical guides, tutorials, and templates for agile software development, including Scrum, Kanban, and scalable Agile practices. It features guidance on implementing agile with Atlassian tools like Jira to help teams plan, track, and deliver software efficiently.
Guide to the Software Engineering Body of Knowledge (SWEBOK) v4.0
The IEEE Computer Society's reference guide defining software engineering knowledge areas: lifecycle processes, requirements, design, construction, testing, maintenance, and configuration management, plus new chapters on architecture, security, and operations that integrate Agile and DevOps practice.
The New Methodology
Fowler's essay contrasting predictive, plan-driven process with adaptive, iterative process, arguing that unstable requirements and the unpredictability of software design broke the waterfall model. Surveys Extreme Programming, Scrum, Crystal, and Lean, and when each fits.
DORA Capabilities Catalog
Thirty-five technical, process, and cultural capabilities, each documented with the research evidence linking it to software delivery and operational performance, plus implementation guidance and common obstacles. Drawn from over a decade of survey data across thousands of organizations.
CMU 17-313: Foundations of Software Engineering
Carnegie Mellon's undergraduate software engineering course, with public slides, readings, and assignments covering project planning, team dynamics, architecture, code review, testing, static and dynamic analysis, continuous integration, deployment, and technical debt.
Software Engineering: A Practitioner’s Approach
Widely used software engineering textbook, third edition, covering process models, project planning and estimation, metrics, requirements analysis, structured and object-oriented design, testing, and maintenance. Readers gain a structured map of the full development lifecycle and its classic methods.