Engineering software products : an introduction to modern software engineering
Author(s)
Bibliographic Information
Engineering software products : an introduction to modern software engineering
Pearson, c2020
Available at 2 libraries
  Aomori
  Iwate
  Miyagi
  Akita
  Yamagata
  Fukushima
  Ibaraki
  Tochigi
  Gunma
  Saitama
  Chiba
  Tokyo
  Kanagawa
  Niigata
  Toyama
  Ishikawa
  Fukui
  Yamanashi
  Nagano
  Gifu
  Shizuoka
  Aichi
  Mie
  Shiga
  Kyoto
  Osaka
  Hyogo
  Nara
  Wakayama
  Tottori
  Shimane
  Okayama
  Hiroshima
  Yamaguchi
  Tokushima
  Kagawa
  Ehime
  Kochi
  Fukuoka
  Saga
  Nagasaki
  Kumamoto
  Oita
  Miyazaki
  Kagoshima
  Okinawa
  Korea
  China
  Thailand
  United Kingdom
  Germany
  Switzerland
  France
  Belgium
  Netherlands
  Sweden
  Norway
  United States of America
Note
Includes bibliographical references and indexes
"Software engineering"--On back cover
Description and Table of Contents
Description
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.
Table of Contents
1. Software Products
1.1 The product vision
1.2 Software product management
1.3 Product prototyping
Key points
Recommended reading
Website
Exercises
2. Agile Software Engineering
2.1 Agile methods
2.2 Extreme programming
2.3 Scrum
Key points
Recommended reading
Website
Exercises
3. Features, Scenarios and Stories
3.1 Personas
3.2 Scenarios
3.3 User stories
3.4 Feature identification
Key points
Recommended reading
Website
Exercises
4. Software Architecture
4.1 Why is architecture important?
4.2 Architectural design
4.3 System decomposition
4.4 Distribution architecture
4.5 Technology issues
Key points
Recommended reading
Website
Exercises
5. Cloud-based Software
5.1 Virtualisation and containers
5.2 Everything as a service
5.3 Software as a service
5.4 Multitenant and multi-instance systems
5.5 Cloud software architecture
Key points
Recommended reading
Website
Exercises
6. Microservices Architecture
6.1 Microservices
6.2 Microservices architecture
6.3 RESTful services
6.4 Microservice deployment
Key points
Recommended reading
Website
Exercises
7. Security and Privacy
7.1 Attacks and defences
7.2 Authentication
7.3 Authorization
7.4 Encryption
7.5 Privacy
Key points
Recommended reading
Website
Exercises
8. Reliable Programming
8.1 Fault avoidance
8.2 Input validation
8.3 Failure management
Key points
Recommended reading
Website
Exercises
9. Testing
9.1 Functional testing
9.2 Test automation
9.3 Test-driven development
9.4 Security testing
9.5 Code reviews
Key points
Recommended reading
Website
Exercises
10. DevOps and Code Management
10.1 Source code management
10.2 DevOps automation
10.3 DevOps measurement
Key points
Recommended reading
Website
Exercises
by "Nielsen BookData"