Jump to ratings and reviews
Rate this book

Software Engineering

Rate this book
Software Engineering presents a broad perspective on software systems engineering, concentrating on widely used techniques for developing large-scale systems. The objectives of this seventh edition are to include new material on iterative software development, component-based software engineering and system architectures, to emphasize that system dependability is not an add-on but should be considered at all stages of the software process, and not to increase the size of the book significantly. To this end the book has been restructured into 6 parts, removing the separate section on evolution as the distinction between development and evolution can be seen as artificial. New chapters have been added Socio-technical Systems ¿ discussing the context of software in a broader system composed of other hardware and software, people, organisations, policies, procedures and laws. Application System Architectures ¿ to teach students the general structure of application systems such as transaction systems, information systems and embedded control systems. The chapter covers 6 common system architectures with an architectural overview and discussion of the characteristics of these types of system. Iterative Software Development ¿ looking at prototyping and adding new material on agile methods and extreme programming. Component-based Software Engineering ¿ introducing the notion of a component, component composition and component frameworks and covering design with reuse.
Software Evolution ¿ revising the presentation of the 6th edition to cover re-engineering and software change in a single chapter. The book supports students taking undergraduate or graduate courses in software engineering, and software engineers in industry needing to update their knowledge.

784 pages, Hardcover

First published January 1, 1982

139 people are currently reading
1506 people want to read

About the author

Ian Sommerville

51 books22 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
295 (31%)
4 stars
294 (31%)
3 stars
222 (23%)
2 stars
89 (9%)
1 star
36 (3%)
Displaying 1 - 30 of 44 reviews
Profile Image for Barbara Krein.
12 reviews
October 19, 2019
Read this with a book club at work. It's a great book filled with lots of arcihtecture and best design concepts. It's defiintely a book I'll need to go back and reread a couple times.
Profile Image for Lukasz Pruski.
970 reviews135 followers
December 31, 2014
Well, I know this borders on cheating, but I hope you will forgive me. It is 6 p.m. Eastern Time (3 p.m. here, in California) on 12/31/2014. I have read 99 books in 2014 and I pledged to read 100. I hate breaking pledges, so I will briefly review the textbook I have been teaching from all year. I had to read over 50 pages of the textbook today while grading the final exam, so I hope this justifies the inclusion of this review here.

I had taught Software Engineering, since mid-1990s, from various textbooks before I found Sommerville, Edition 6. Now I teach from the most current Edition 9, which is a truly mature textbook. It is divided, quite logically, into four main parts: Introduction to Software Engineering, Dependability and Security, Advanced Software Engineering, and Software Management. These parts comprise 26 content-packed chapters that I all manage to cover in the Software Engineering course. Sommerville is by far the best textbook on the subject I have ever read. The best feature of the text is that it is comprehensive, deep enough, and readable, if a bit boring (simply because the subject is quite boring).

Of course, I have minor qualms as to the allocation of space for individual topics. I would use more space for the Web-based programming and portable-device programming and less on obsolete concepts such as, say, the spiral model. I would expand space dedicated to agile methods. I am sure this will all come in the next edition.

My students programmatically do not like textbooks from which they are learning, yet they tolerate this one, and they do read all 716 pages (and are quizzed on all the material). This is another indication that it is quite a good textbook.

To lighten this overly serious review, let me quote a funny bit from Edition 8 of this textbook. Sommerville listed factors that influence programmers' productivity. One of these factors was termed "Outside awareness". The explanation made it clear that "outside awareness" meant "a window". Don't you love euphemisms?

Four and a quarter stars.
Profile Image for Fay Wu.
103 reviews5 followers
June 5, 2016
I think this book is more useful for managers than programmers and Code Complete, the other textbook for my software engineering class, is much better for developers (as such, me right now). However, if you're interested in learning about different software engineering methods and styles of work / management / planning / cycles then this is pretty good. It goes into more detail than Code Complete on different styles of collective coding.
32 reviews6 followers
April 6, 2012
A seminal volume in the software engineering world. If you are serious about improving your credentials as a true software engineer, you simply must read this text.
17 reviews6 followers
Read
May 26, 2011
Has good research material in it. Using it for my 260 assignment.
Profile Image for Ibrahim Radi.
34 reviews3 followers
February 6, 2022
An awful lot of the ideas in this book have been embedded into the requirement definition in my employer, and I would suspect throughout large portions of the industry. As a result, the book now reads like a long list of blindingly obvious points.
I've been reading First 6th Chapters of this book in a Software Engineering course at the university.
Profile Image for Katherine.
22 reviews1 follower
June 24, 2023
Easy to understand for those learning about the foundations of software engineering. I found the writing to be a bit opinionated at times, for example the author’s opinion on Model Based SE. Overall, thorough book that ties in Software Systems Engineering well.
Profile Image for zahra.
227 reviews77 followers
Read
July 9, 2021
ودي أقول إني استفدت بس والله مش فاهم
Profile Image for Husain Haider.
6 reviews1 follower
August 3, 2013
This book is very good for any one in software field. Some times I lost in the examples. But overall, you can depend on it. I studied it in 2003, but I use it again in 2012 and 2013 and I think I will use it again.
Profile Image for Christian Oleson.
15 reviews2 followers
March 3, 2023
It's a textbook. I would have given it 3.5 stars, but I cannot give it a half-star, and I don't think it deserves a 3-star rating.

The book covers a lot of ground, from an intro to processes, engineering, refinement, improvement, modeling, architecture, and more to advanced concepts such as security, SOA, and different system types. The book is highly academic and was used in my master's course at TESU (SWT-571) alongside Code Complete as a companion book. Overall, the content needs to be updated as some of these concepts have not aged well. Likewise, a lot of the content is not overly practical, but instead, the academic theoretical knowledge may struggle to be applied by new software engineers in the business. As someone who works as a Senior Software Engineer at a mid-sized SaaS firm, I can say that I would not expect folks reading this to know some of the concepts, nor would I feel like someone working through the content would be adequately prepared for a job.

A lot more needs to be said these days surrounding CI/CD, cloud computing, Infrastructure as Code, elasticity, reliability, and scalability. Some of the practices in this book use terminology and references to software and tooling over a decade old. The industry moves fast. Books like these don't remain on par for long.

While the book is academic, it is at least logically written and somewhat consumable as a textbook for a student, which remains tolerable. Software engineers looking for a management track may find this textbook more valuable. Still, it does leave a lot to be desired, which remains a shortcoming of the author and academia geared toward the software industry.
Profile Image for Iurii Mednikov.
18 reviews
May 9, 2025
The book covers all the essential topics that you have to master to move from "software developer" to "software engineer". In particular, I liked how it covers the software engineering from a theoretical point of view, trying to provide useful guidelines and a systematic approach to the discipline. Sure, as I say in CS textbooks' reviews - if you expect to read 1 book on the topic, it is better for you to change profession. In addition, some topics may not be understandable immediately, without practical experience. I refer to problems of enterprise software engineering and other domains with strict, established processes, like aeronautics or healthcare domain. But, in the general, the manual does a fantastic job of highlighting different topics that are important to learn as a software engineer. Just, consider it as the starting point, not "all-in-one".
Profile Image for Adam Hansen.
48 reviews1 follower
November 18, 2017
I read this book as part of a software methodology course on my computer science education. Where the book truly shines is at its thorough core of process and methodology explanations. For this reason alone I would recommend reading the book, but as a modern approach to learn about the processes the book is unfortunately quite heavy and self repeating. I will most likely use this book as a glossary, in case I forget the name of a concept in the future.
Profile Image for Roy Folkker.
6 reviews
Read
January 4, 2022
Heady technical book for class. Not much else to say, class didn't follow the book, but it is insightful and helped with many core concepts. The topic is so fluid that any one perspective (or book) is just good as a resource for critical thought, this book is no different. If you are into concrete concepts to abstract applications (as in uses not programs) this book will help. If you prefer open-ended abstract principals in software engineering, I would not choose this one.
Profile Image for Linh Vu.
13 reviews9 followers
March 29, 2023
The book itself is easy to understand and covers the surface quite well. However, it is not really helpful for developers to achieve better and smoother workflow. Would recommend it to people such as business managers to grab some basic idea of how an SWE project works.
Profile Image for Narin.
171 reviews8 followers
Read
May 19, 2023
İçinde süreçler, yönetim, test, mimari, sistemler ve temel yazılımla alakalı akla gelebilecek her konuya değinen bir kaynak. Teoriden ziyade iş hayatında zamanla edinilen pratik bilgiyle de harmanlandığında mükemmel bir başvuru, pekiştirme kitabı oluyor.
Profile Image for Aya Khaled.
145 reviews10 followers
May 20, 2019
I am not interested in this field but when i read it, i found it simple and easy to study ..
it is well-written book ..
Profile Image for Hamza Mohammad  Khan.
9 reviews2 followers
October 24, 2019
It is good book that software engineers can take help, in professional or even a beginner can take. But some topics are not in it
Profile Image for Anjar Priandoyo.
309 reviews14 followers
February 13, 2021
Sommerville is another text book of sofware engineering, a must read book for those on the big sofware development project
42 reviews1 follower
October 25, 2022
One of the best literature out there to keep up with the industry practices. Jargon at places
Profile Image for Heba.
52 reviews
June 2, 2024
Started it as a beginner in the field, long but never boring and has a lot of helpful tips and exercises.
Profile Image for LaanSiBB.
305 reviews18 followers
Read
April 3, 2020
Good theories only hold themselves if you are using them constantly. This is a good textbook with a readable level, will be a good foundation for people who want to understand the basics
Displaying 1 - 30 of 44 reviews

Can't find what you're looking for?

Get help and learn more about the design.