This essential textbook presents a concise introduction to the fundamental principles of software engineering, together with practical guidance on how to apply the theory in a real-world, industrial environment. The wide-ranging coverage encompasses all areas of software design, management, and quality. Topics and presents a broad overview of software engineering, including software lifecycles and phases in software development, and project management for software engineering; examines the areas of requirements engineering, software configuration management, software inspections, software testing, software quality assurance, and process quality; covers topics on software metrics and problem solving, software reliability and dependability, and software design and development, including Agile approaches; explains formal methods, a set of mathematical techniques to specify and derive a program from its specification, introducing the Z specification language; discusses software process improvement, describing the CMMI model, and introduces UML, a visual modelling language for software systems; reviews a range of tools to support various activities in software engineering, and offers advice on the selection and management of a software supplier; describes such innovations in the field of software as distributed systems, service-oriented architecture, software as a service, cloud computing, and embedded systems; includes key learning topics, summaries and review questions in each chapter, together with a useful glossary. This practical and easy-to-follow textbook/reference is ideal for computer science students seeking to learn how to build high quality and reliable software on time and on budget. The text also serves as a self-study primer for software engineers, quality professionals, and software managers.
I read this book because I want to know how does the veteran Software Developers do their work. So I grabbed this book. It has a lot of direct to the point explanation about how to build software. Things like Software Management, Requierements, Software Designs and Development, Configurations, Testing, Quality Assurance, Methods and many more. Its not a bit of an easy read, but when you are somebody who wants to dig more on Software Engineering, this book can be of good help.
Used this book to find out more about this field before diving into it, as a mechanical engineer with informal experience in software development. Although it is impossible to summarise the whole field of Software Engineering in a book, this work gives a pretty complete overview. Would have liked to see more about software development principles.
El libro aporta poco desde lo técnico desde el área del management tiene poco caso de uso y muchos diagramas que detallan momentos pero no implementaciones.