Software Engineering Software Engineering: A Practitioner’s Approach 6th edition

Product Description
For over 20 years, “Software Engineering: A Practitioner’s Approach” has been the best selling guide to software engineering for students and industry professionals alike. The sixth edition continues to lead the way in software engineering. A new Part 4 on Web Engineering presents a complete engineering approach for the analysis, design, and testing of Web Applications, increasingly important for today’s students. Additionally, the UML coverage has been enhanced and… More >>

Software Engineering Software Engineering: A Practitioner’s Approach 6th edition

Tags: , , , , , , , , , ,

Related posts

3 comments

  1. G. Joshi says:

    Very good book. I am enjoying reading it (not complete yet, it is really very big book). The topics are covered at length. Very good coverage of important concepts with amazing knack of not making the subject boring or dull. Very nice suggestions / references / advices for further study. A A very good read for software engineering professionals.
    Rating: 4 / 5

  2. Cade Bryant says:

    This tome of Dr. Pressman’s was used as the primary text for several of my graduate-level software engineering classes. As such, it does its job quite well, providing a comprehensive overview of the SE process and its related practices and tools. Well-written (and at times humorous) fictional case studies make the book enjoyable to read. All phases of the software design lifecycle – requirements engineering, analysis modeling, design modeling, unit testing, regression testing, QA, SCM, V&V, etc. – are covered in sufficient depth. Modern SE methodologies, such as Agile, XP, and Scrum, are also introduced.

    One strength of this text is its detailed exposition of the usage of formal mathematical methods in the specification and verification of software (the section on “cleanroom” SE is especially thought-stimulating). However – to its discredit – the text gives a little too much credence to highly-questionable metrics-analysis methods such as LOC (lines-of-code) and FP (function point) metrics. As anyone who has spent a considerable portion of his/her career writing complex software can tell you, the LOC of a routine, or the number of inputs it accepts, often has little to do with the difficulty/complexity of the routine in question. For example, a 100-line, four-input routine that performs a complex mathematical calculation will be incomparably more work-intensive than, say, a 500-line, eight-input routine that displays database records on a user-interface window.

    Despite this small idiosyncrasy (keep in mind that no textbook is perfect), I wholeheartedly recommend this text to graduate CS/IT students as well as to working professionals who want to implement process-driven paradigms into their workplaces.
    Rating: 4 / 5

  3. When your interest fall in software engineering, there are *lots* of books on the subject but only a few of them cover the principles in an almost exhaustive way. One of the main errors that authors do is having the claim that all about software engineering can be covered in a single book. And this book is no exception. When you’re reading a textbook, this isn’t always bad: one of the main purposes of a textbook is introducing the concepts gradually, without much details and in the clearest way possible. A student doesn’t need to know all. He/she just need to understand the fundamentals of the discipline. So, while this book is intended for a professional audience, it is structured like a textbook. The problem here is that it gives probably too much informations for students and too few informations for professionals. It gives a nice introduction on the subject, explaining why the software is a product, its features, its lacks and its myths (very interesting). Problems start with chapter 2: the process. While something is covered about some development models like waterfall, win-win model, RAD, concurrent, etc., it lacks any detail needed to really understand these development models and bring them in practice. One of the things I hate the most about this book are repetitions: the author repeat the same concepts many times during the exposition and this can be irritating. It covers many subjects, like user interface construction, project planning, temporal planning, quality assurance in software development, software architectures, component based engineering, conceptual modeling, etc. Each chapter is a small introduction to these subjects but the book gives small or no details at all on how to use these concepts in practice. You won’t find code here. You won’t find design patterns, UML diagrams, state charts, refactoring methods. While this is not necessarily bad, it makes clear this book is better used as a textbook and not as a practical (for practitioners) manual to learn software engineering methodologies directly on the field. So, if you’re interested in software engineering and you want a solid introduction to it, buy this book. If you’re a professional who want a practical exposition of the discipline to apply concepts on real projects, skip this book. I give it 3 stars because explanations are good and the book is well written but the title is a bit misleading: professionals generally needs other kinds of books.
    Rating: 3 / 5


  • Categories
  • Archives