Frequently Asked Questions
About this web site
Where can I find the solutions to the exercises?
For instructors, the
Instructor's Resource CD-ROM, 2/E includes sample solutions for all exercises in the book. This is (will always be) the only distribution medium for solutions.
Where can I find the ARENA work products?
The ARENA case study discussed in the book has its own web site:
http://sysiphus.in.tum.de/arena.
You seem to be using a Wiki for this website. How do I register to get an account to contribute material or take part in a discussion?
We use Wiki for serving structured content. You are welcome to contribute contents or feedback by sending us email (bruegge (at) in dot tum dot de or dutoit (at) in dot tum dot de).
About the book
I found a mistake in the book. Who do I contact?
Send us an e-mail (bruegge (at) in dot tum dot de or dutoit (at) in dot tum dot de). We collect all reported errors in an
errata. These will be fixed in the next printing of the book. If you have any other comment or suggestions about the book, please feel free to send us e-mail as well.
Which mountain is on the cover picture?
The K2 (8,611m) located in the Karakorum range in the Western Himalayas. This mountain is arguably the most difficult to conquer, in part because of the short climbing seaons and the often changing conditions on the mountain.
What changed since the first edition?
From the Preface
The second edition of this book started as a well-scoped project. Our goal was to add two new chapters and a case study to address the feedback we received from the first users of our book. The work was to last one year. Two years later, we found ourselves with four new chapters and a complete overhaul of many of the existing chapters. Between adding detailed examples, keeping up with the latest developments in software engineering, maintaining the coherence of the book, and meeting the schedule, we decided to compromise on the schedule. We hope that the quality of the final product reflects the delay. We thank Alan Apt, our publisher, for his infinite patience.
We made the following changes:
- Running case study. We received many requests for a single running example through the book, so that the relationships among chapters become visible. Consequently, we threaded a running case study of ARENA into the technical chapters of the book. The material associated with the study is also available online at http://oose.globalse.org.
- Expanded object design material. We expanded the coverage of design patterns and consolidated all material related to reuse into a new chapter, Chapter 8. Similarly, we expanded the coverage of OCL (Object Constraint Language), in terms of both concepts and examples, and included this material in a new chapter, Chapter 9. In both cases, we moved away from writing a reference manual and, instead, focused on providing knowledge about the application of these concepts.
- Extended scope to selected implementation activities. We found that many students initially have difficulty relating the new material (e.g., requirements engineering, UML modeling) to the concepts they already know (e.g., programming). To address this issue, we extended the scope of the book to include selected implementation topics. A new chapter, Chapter 10, describes how models are mapped into source code.
- Reorganized project management and software life cycle material. Software engineering courses often treat project management and software life cycle topics together and at the beginning of the course, leading to a top-down approach to teaching software engineering. In our experience, we found this material difficult to communicate to students if they have not yet been exposed to issues inherent in large projects. Consequently, we chose a bottom-up approach, revisiting this material incrementally and in broadening scopes. Chapter 3, in the early section of the course, focuses only on the basic concepts of project management from the developer?s point of view. Chapter 14 revisits and expands these concepts from the novice project manager?s point of view. Once project management issues are understood, Chapter 15 focuses on software life cycle issues and how to transfer process knowledge across projects. Both Chapter 14 and Chapter 15 take an ideal and academic perspective to the topic. To balance this ideal perspective and inject a dose of realism, we discuss methodological issues faced in real projects in Chapter 16.