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.  
Les mer
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
Les mer
An introductory text focusing on modern software engineering, based around the kind of software that students can relate to. Covers methods and techniques that are used in the development of off-the-shelf, software products. Current topics—Cloud computing, microservices, security and privacy, and DevOps — are covered that are not covered in other software engineering texts. The book is written in an informal style with many illustrative examples, diagrams and tables, key points and exercises for each chapter. Recommended Reading and Exercises section 20 diagrams and tables for each chapter Instructor resources and supporting material can be found at http://iansommerville.com/engineering-software-products/: Instructor’s Manual Solutions to exercises and quiz questions for all chapters Suggestions how you can use the book in a one-semester software engineering course Links to relevant videos and presentations for each chapter Python programs from the book Check out the preface for a complete list of features.
Les mer

Produktdetaljer

ISBN
9780135210642
Publisert
2019-05-09
Utgiver
Vendor
Pearson
Vekt
477 gr
Høyde
234 mm
Bredde
190 mm
Dybde
10 mm
Aldersnivå
U, 05
Språk
Product language
Engelsk
Format
Product format
Heftet
Antall sider
352

Forfatter

Om bidragsyterne

Ian Sommerville is Emeritus Professor of Computer Science at St Andrews University, Scotland. He has a BSc in Physics from Strathclyde University and MSc and PhD degrees in Computer Science from St Andrews University. He has been a full Professor of Computer Science since 1986 firstly, at Lancaster University, and, subsequently, at St Andrews University. He has written several software engineering textbooks, including 'Software Engineering', now in its 10th edition, which has been in print since 1982. In 2011, he was awarded both the IEEE TCSE Distinguished Educator award and the ACM SIGSOFT Influential Educator award. He wrote his first computer program in 1970 and, almost 50 years later, still enjoys programming.