Changes from the 9th edition

In summary, the major updates and additions in this book from the 9th edition are:

  • I have extensively updated the chapter on agile software engineering, with new material on Scrum. I have updated other chapters as required to reflect the increasing use of agile methods of software engineering.
  • I have added new chapters on resilience engineering, systems engineering and systems of systems.
  • I have completely reorganized three chapters covering reliability, safety and security.
  • I have added new material on RESTful services to the chapter covering service-oriented software engineering.
  • I have revised and updated the chapter on configuration management with new material on distributed version control systems.
  • I have moved chapters on aspect-oriented software engineering and process improvement from the print version of the book to the web site.
  • New supplementary material has been added to the web site, including a set of supporting videos. I have explained key topics on video and recommended related YouTube videos.

The 4-part structure of the book, introduced in earlier editions, has been retained but I have made significant changes in each part of the book.

  1. In Part 1, Introduction to software engineering, I have completely rewritten Chapter 3 (agile methods) and updated this to reflect the increasing use of Scrum. A new case study on a digital learning environment has been added to Chapter 1 and is used in a number of chapters. Legacy systems are covered in more detail in Chapter 9. Minor changes and updates have been made to all other chapters.
  2. Part 2, which covers dependable systems, has been revised and restructured. Rather than an activity oriented approach where information on safety, security and reliability is spread over several chapters, I have reorganized this so that each topic has a chapter in its own right. This makes it easier to cover a single topic, such as security, as part of a more general course. I have added a completely new chapter on resilience engineering which covers cybersecurity, organizational resilience and resilient systems design.
  3. In Part 3, which covers a number of advanced software engineering topics, I have added two new chapters on systems engineering and have extensively revised the material on service-oriented systems to reflect the increasing use of RESTful services. The chapter on aspect-oriented software engineering has been deleted from the print version but remains available as a web chapter.
  4. In Part 4, I have updated the material on configuration management to reflect the increasing use of distributed version control tools such as Git. The chapter on process improvement has been deleted from the print version but remains available as a web chapter.

An important change in the supplementary material for the book is the addition of video recommendations in all chapters. I have made over 40 videos on a range of topics that are available on my YouTube channel and linked from the book’s web pages. In cases where I have not made videos, I have recommended YouTube videos that may be useful.