Introduction

    Tags:  books       ESP      

    Since I started writing software in the 1970s, software engineering has changed out of all recognition. In the early days of the discipline, all software was developed in software projects, mostly for governments and large companies. The client specified their requirements, which were often lacking in a number of ways, and the software was developed by a separate company or group. This project oriented approach dominated software engineering for more than 30 years.

    However, the world has changed. Large-scale complex systems are still developed using a project-based approach, we mostly use software products for work and leisure. These are not developed in the same way as projects so many project-based software techniques are inapplicable. Yet, most software engineering textbooks (including my own text, now in the 10th edition) still adopt a project-based approach.

    ‘Engineering Software Products’ has been designed to support a 1-semester introductory course in software engineering. The book focuses on modern software engineering, based around the kind of software that students can relate to. That software will be developed incrementally using agile methods, execute on the cloud, its security will be critical and it will be maintained and managed by a DevOps team. There are 10 chapters in the book each focusing on an aspect of software product engineering.

    I have completely rethought what should be covered in a modern software engineering course. Consequently, the book is NOT the 11th edition of my existing software engineering textbook and very little material from my existing text has been reused.

    Why software product engineering?

    I have written a short note for instructors on why I think we need a new approach to introductory software engineering and I’ve summarised my reasons for writing a completely different book in this short video.

     

    I’ve also written a couple of blog posts discussing the book and my motivation for writing it.

    Out with the UML (and other stuff too); reimagining introductory software engineering courses Engineering Software Products

    About me


    My professional career in software engineering

    My personal web site, where I write about my interests in photography, food and the outdoors.

    Version 2.0, 20th May 2020