Classical and Object-Oriented Software Engineering, 5/e is designed for an introductory software engineering course. This book provides an excellent introduction to software engineering fundamentals, covering both traditional and object-oriented techniques. Schach's unique organization and style makes it excellent for use in a classroom setting. It presents the underlying software engineering theory in Part I and follows it up with the more practical life-cycle material in Part II. Many software engineering books are more like reference books, which do not provide the appropriate fundamentals before inundating students with implementation details. In this edition, more practical material has been added to help students understand how to use what they are learning. This has been done through the use of "How To" boxes and greater implementation detail in the case study. Additionally, the new edition contains the references to the most current literature and includes an overview of extreme programmming. The website in this edition will be more extensive. It will include Solutions, PowerPoints that incorporate lecture notes, newly developed self-quiz questions, and source code for the term project and case study.
3.0 out of 5 stars Pick a Methodology, Any Methodology June 18, 2008
Stephen R. Schach's "Object-Oriented & Classical Software Engineering" (7ed) is an OK book: it's not bad, but it could certainly be better.
First, some minor quibbles: even though the typography and editing is good, I'm not all that enamored with the color scheme: the orange and black theme is too much like a pumpkin. I know it's trivial, but I thought I'd just pass it along. A little more meaningful is that Schach seems to place too much emphasis on definitions. I don't need multiple reminders of the differences between things like corrective, perfective and adaptive maintenance. It would be better if he just focused on the function and not on the definition. For university use, I suppose this is OK. But, I found it a bit irritating.
The medium-level problem with the book is that there's a lot of temporal shift in the presentation: he would talk about some model or methodology in terms that implied it was the latest and greatest thing. Yet, it had been around for decades. This is probably a function of the overall age of the book: this is the 7th edition.
Most importantly, Schach needs to pick a methodology and stick with it: either talk about the classical methodology or the object-oriented one. Not both. Nowadays, most people probably work with, and are interested in, an object-oriented methodology. Having 1/3 of a book filled with the classical methodology is useless to them. Ditto for those people still working in a classical environment: they won't care about 2/3 of the book. And, for those people who are in a classical environment and want to move to an object-oriented one, there's really nothing in the book that will help them with the transition. If he removed the classical material from the book and published a "how to transition" book instead, that would be great.
Again, it's not a bad book. But, it's not that great. I rate it at an OK 3 stars out of 5.
It is one of the best book for understanding the organized and classical object oriented software engineering. Really enjoyed reading it, the book have some great examples and easy to undertand.