Software Engineering: A Practitioner's Approach (4th Edition): English

Author: (USA) Roger S. Pressman
Publisher:
Publish Date: 1999-03-01
Features: As software engineering moves into its fourth decade of existence, it suffers from many of the strengths and some of the frailties that are experienced by humans of the same age. The innocence and enthusiasm of its early years have been replaced by more reasonable expectations (and even a healthy cynicism) fostered by years of experience. Software engineering approaches its mid-life with many accomplishments, but with significant work yet to do. Today, it is recognized as a legitimate discipline, worthy of serious research, conscientious study, and tumultuous debate. Throughout the industry, "software engineer" has replaced "programmer" as the job title of preference. Software process models, software engineering methods, and software tools have been adopted successfully across a broad spectrum of industry applications. Managers and practitioners alike recognize the need for a more disciplined approach to software. But many of the problems discussed in earlier editions of this book remain with us. Many individuals and companies still develop software haphazardly. Many professionals and students are unaware of modern methods. And as a result, the quality of the software that we produce suffers. In addition, debate and controversy about the true nature of the software engineering approach continue. The status of software engineering is a study in contrasts. Attitudes have changed, progress has been made, but much remains to be done before the discipline reaches full maturity. The fourth edition of Software Engineering: A Practitioner's Approach is intended to serve as a guide to a maturing engineering discipline. The fourth edition, like the three editions that have preceded it, is intended for both students and practitioners, and maintains the same format and style of its predecessors. The book retains its appeal as a guide to the industry professional and a comprehensive introduction to the student at the upper level undergraduate or first-year graduate level. The fourth edition is considerably more than a simple update. The book has been completely restructured to accommodate the dramatic growth in the field and to emphasize new and important software engineering methods. Chapters that have been retained from earlier editions have been revised and updated. Twelve new chapters have been added to provide more complete treatment of contemporary trends and techniques. Many new examples, problems, and points to ponder have been included. The Further Readings and Other Information Sources sections (one of the more popular tidbits in earlier editions) have been expanded for every chapter. Hundreds of new published sources and over 160 sources from the World Wide Web have been included. The 30 chapters of the fourth edition have been organized into five parts. This has been done to compartmentalize topics and assist instructors who may not have the time to complete the entire book in one term. Part One, The Product and the Process, presents an introduction to the software engineering milieu. It is intended to introduce the subject matter and, more importantly, to present concepts that will be necessary for later chapters. Part Two, Managing Software Projects, presents topics that are relevant to those who plan, manage, and control as software development project. Part Three, Conventional Methods for Software Engineering, presents the analysis, design, and testing methods that some view as the "conventional" school of software engineering. Part Four, Object-Oriented Software Engineering, presents object-oriented methods across the entire software engineering process, including analysis, design, and testing. Part Five, Advanced Software Engineering Topics, presents dedicated chapters that address formal methods, cleanroom software engineering, reuse, reengineering, client/server software engineering, and CASE. It is important to note that the fourth edition has a much greater emphasis on metrics and measurement than earlier editions. Three separate chapters on software metrics address measurement of the software process, technical metrics for analysis, design, and testing using conventional methods, and technical metrics for object-oriented software engineering. The five-part organization of the fourth edition enables an instructor to cluster topics based on available time and student need. An entire one-term course can be built around one or more of the five parts. For example, a "design course" might emphasize only Part II or Part IV; a "methods course" might present selected chapters in Parts III, IV, and V. A "management course" would stress Parts I and II. By organizing the fourth edition in this way, I have attempted to provide an instructor with a number of teaching options. Like the first three editions, an Instructor's Guide for Software Engineering: A Practitioner's Approach is available from McGraw-Hill. The Instructor's Guide presents suggestions for conducting various types of software engineering courses, recommendations for a variety of software projects to be conducted in conjunction with a course, solutions to selected problems, and transparency masters to aid in teaching selected topics. In addition, a comprehensive video curriculum, Essential Software Engineering, is available to complement this book. The video curriculum has been designed for industry training and has been modularized to enable individual software engineering topics to be presented on a as-needed, when-needed basis. Further information on the video can be obtained by mailing the request card at the back of this book. My work on the fourth editions of Software Engineering: A Practitioner's Approach has been the longest continuing technical project of my life. Even when the writing stops, information extracted from the technical literature continues to be assimilated and organized. For this reason, my thanks to the many authors of books, papers, and articles as well as a new generation of contributors to electronic media (newsgroups and the World Wide Web) who have provided me with additional insight, ideas, and commentary over the past 15 years. Many have been referenced within the pages of each chapter. All deserve credit for their contribution to this rapidly evolving field. I also wish to thank the reviewers of the fourth edition: Frank H. Westervelt, Wayne State University; Steven A. Demurjian, The University of Connecticut; Chung Lee, California State Polytechnic University; Alan Davis, University of Colorado; Michael C. Mah, QSMAssociates; Richard N. Taylor, University of California-Irvine; Osman Balci, Virginia Tech; James H. Cross, Auburn University; Warren H. Harrison, Portland State University; Mieczyslaw M. Kokar, Northeastern University. Their comments and criticism have been invaluable. The content of the fourth edition of Software Engineering: A Practitioner's Approach has been shaped by industry professionals, university professors, and students who have used earlier editions of the book and have taken the time to communicate their suggestions, criticisms, and ideas. My thanks to each of you. In addition, my personal thanks go to our many industry clients throughout North America and Europe, who certainly teach me as much as or more than I can teach them. As the editions of this book have evolved, my sons, Matthew and Michael, have grown from boys to men. Their maturity and character have been an inspiration to me. Nothing has filled me with more pride. And finally, to Barbara, my love and thanks for tolerating my travel schedule, understanding the evenings at the office, and encouraging still another edition of "the book." Roger S. Pressman

📌 Related Posts