Fundamentals of Software Engineering, 2nd edition
Published by Pearson (September 19, 2002) © 2003
- Carlo Ghezzi
- Mehdi Jazayeri
- Dino Mandrioli
- Hardcover, paperback or looseleaf edition
- Affordable rental option for select titles
Appropriate for both undergraduate and graduate introductory software engineering courses found in Computer Science and Computer Engineering departments.
This text provides selective, in-depth coverage of the fundamentals of software engineering by stressing principles and methods through rigorous formal and informal approaches. The authors emphasize, identify, and apply fundamental principles that are applicable throughout the software lifecycle, in contrast to other texts which are based in the lifecycle model of software development. This emphasis enables students to respond to the rapid changes in technology that are common today.
- NEW - Deeper analysis and explanation of object-oriented techniques.
-
Teaches students about this established and widely adopted methodology.
-
- NEW - Use of Unified Modeling Language (UML).
-
Encourages students to learn about graphical method of description that is widely used for requirements descriptions.
-
- NEW - Coverage of requirements analysis and software architecture.
-
Teaches students about these two areas that have become better understood and more standard.
-
- NEW - Revised and updated case studies.
-
Better demonstrate the principles discussed in the text.
-
- NEW - Model checking—A technique that provides automatic support to the human activity of software verification.
-
Exposes students to this powerful new verification technique.
-
- NEW - GQM—Used to evaluate software quality and help improve the software process.
-
Enables students to learn about this up-to-date and widely known technique.
-
- NEW - Coverage of Z.
-
Exposes students to this fairly well-known and established formal specification language.
-
- Principles and techniques are emphasized rather than specific tools.
-
Students learn why particular techniques should or should not be used. Understanding the principles and techniques on which tools are based makes mastering a variety of specific tools easier for students.
-
- Case studies—Including several studies of real-life software engineering projects and their analyses.
-
Demonstrates the integration of different concepts, contrasts different approaches in realistic situations, and exposes students to the diversity of problems faced in industrial practice.
-
- A variety of exercises—Short exercises interspersed throughout the chapters help students to extend or apply their knowledge; longer end-of-chapter exercises help students integrate the material in each chapter; term-projects provide team exercises for developing a software system.
-
Enables students to apply the principles presented in the text.
-
- Deeper analysis and explanation of object-oriented techniques.
-
Teaches students about this established and widely adopted methodology.
-
- Use of Unified Modeling Language (UML).
-
Encourages students to learn about graphical method of description that is widely used for requirements descriptions.
-
- Coverage of requirements analysis and software architecture.
-
Teaches students about these two areas that have become better understood and more standard.
-
- Revised and updated case studies.
-
Better demonstrate the principles discussed in the text.
-
- Model checking—A technique that provides automatic support to the human activity of software verification.
-
Exposes students to this powerful new verification technique.
-
- GQM—Used to evaluate software quality and help improve the software process.
-
Enables students to learn about this up-to-date and widely known technique.
-
- Coverage of Z.
-
Exposes students to this fairly well-known and established formal specification language.
-
1. Software Engineering: A Preview.
2. Software: Its Nature and Qualities.
3. Software Engineering Principles.
4. Software Design.
5. Software Specification.
6. Software Verification.
7. The Software Production Process.
8. Management of Software Engineering.
9. Software Engineering Tools and Environments.
10. Epilogue.
Case Studies.
References.
Index.
Carlo Ghezzi is a professor of computer science at the Politecnico di Milano, where he holds the chair of software engineering. He was named a Fellow of the Association for Computing Machinery in 2000 for his contributions to software engineering research.
Mehdi Jazayeri is a professor of computer science at the Technische Universität Wien, where he holds the chair of distributed systems. He spent many years in software development at several Silicon Valley companies, including 10 years at Hewlett-Packard Laboratories, Palo Alto, CA.
Dino Mandrioli is a professor of computer science at the Politecnico di Milano, where he holds the chair of theoretical computer science. His research interests are centered on the application of formal methods in the practice of software engineering.
Need help? Get in touch
![Video](https://img.youtube.com/vi/TCIok0KnHDc/hqdefault.jpg)
Pearson eTextbook: What’s on the inside just might surprise you
They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â
![](https://www.pearson.com/content/dam/global-store/global/plp-pdp/1600x800-GettyImages-1172587378.jpg)
Digital Learning NOW
Extend your professional development and meet your students where they are with free weekly Digital Learning NOW webinars. Attend live, watch on-demand, or listen at your leisure to expand your teaching strategies. Earn digital professional development badges for attending a live session.