Jump to ratings and reviews
Rate this book

Engineering Software Products: An Introduction to Modern Software Engineering

Rate this book
For one-semester courses in software engineering. Introduces software engineering techniques for developing software products and apps With Engineering Software Products , author Ian Sommerville takes a unique approach to teaching software engineering and focuses on the type of software products and apps that are familiar to students, rather than focusing on project-based techniques. Written in an informal style, this book focuses on software engineering techniques that are relevant for software product engineering. Topics covered include personas and scenarios, cloud-based software, microservices, security and privacy and DevOps. The text is designed for students taking their first course in software engineering with experience in programming using a modern programming language such as Java, Python or Ruby.

352 pages, Paperback

First published January 1, 2020

7 people are currently reading
74 people want to read

About the author

Ian Sommerville

52 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
11 (40%)
4 stars
14 (51%)
3 stars
2 (7%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 2 of 2 reviews
Profile Image for Elena A.
6 reviews
April 8, 2024
Bought this book because it was part of our curriculum - never have I ever actually read a school related book from start to finish until now! It’s so well written, and Ian Sommerville even explains the most complex subjects simple and easy to understand. I started reading this book when I was non-techy and the book was even then still enjoyable .. I learnt soo much, big and personal thank you to Sommerville!!
Profile Image for Alejandro Teruel.
1,342 reviews255 followers
October 26, 2022
Ian Sommerville has written an outstanding, brilliantly pared-down, up-to-date and to the point textbook for an introductory software engineering course which is especially useful for computer related programs which do not need a bare bones coverage of useful and current software engineering.

Sommerville and Pressman have written at least ten weighty editions of reference-level textbooks on Software Engineering each. In 2008, Roger Pressman took time out to write an excellent and very timely book on web engineering and now Sommerville has taken the time and care to provide an essential, somewhat personal guide to common-sense, tried and tested agile software engineering techniques for software product development. By software products he means such as stand-alone programs, web apps and services, and mobile apps that are not tailored to a specific client and thus require a more detailed project-oriented approach in which there is a great deal of stakeholder involvement and which great care must be exercised in mediating between them. In my opinion, the distinction between product-oriented and project-oriented software engineering is not at all as clearcut as Sommeville makes out, but it is certainly an interesting and moot one.

Key aspects of the book include the more successful and commonly used features of agile methods (in this sense Sommerville cleaves close to Scrum), basic software architectures and design principles covered in three of the nine chapters -two of these well integrated chapters, one on cloud-based software and the other on microservices architectures stand out-, a chapter on the more practical and basic techniques to include security and privacy considerations, and a basic and very down to earth chapter on reliability, emphasizing fault avoidance, input validation, and failure management, a key chapter on testing emphasizing unit testing, testing automation balanced by code reviews (inspections), wrapping it all up in a chapter on DevOps which also briefly covers GitHub. In my opinion code management in GitHub would be better covered at most after the three chapters on software architecture. Each chapter includes key points, a pithy and valuable recommended readings sections and six to ten exercises which help drive home the key points of the chapter.

Tony Hoare once told me that a true expert could sum up the key aspects of his subject in ten minutes or delve for days into its details. In his books on Software Engineering, Ian Sommerville elegantly details the state of Software Engineering; in this highly recommended book, he shows his enviable flair for succint, fascinating, and practical summing up.
Displaying 1 - 2 of 2 reviews

Can't find what you're looking for?

Get help and learn more about the design.