Object-Oriented Reengineering
Stéphane Ducasse, Oscar Nierstrasz, Serge Demeyer
Résumé
The documentation is missing or obsolete, and the
original developers have departed. Your team has limited
understanding of the system, and unit tests are missing for
many, if not all, of the components. When you fix a bug in
one place, another bug pops up somewhere else in the
system. Long rebuild times make any change difficult. All
of these are signs of software that is close to the
breaking point.
Many systems can be upgraded or simply thrown away if they
no longer serve their purpose. Legacy software, however, is
crucial for operations and needs to be continually
available and upgraded. How can you reduce the complexity
of a legacy system sufficiently so that it can continue to
be used and adapted at acceptable cost?
Based on the authors' industrial experiences, this book is
a guide on how to reverse engineer legacy systems to
understand their problems, and then reengineer those
systems to meet new demands. Patterns are used to clarify
and explain the process of understanding large code bases,
hence transforming them to meet new requirements. The key
insight is that the right design and organization of your
system is not something that can be evident from the
initial requirements alone, but rather as a consequence of
understanding how these requirements evolve.
- Forword
- Preface
- Reengineering Patterns
- Setting Direction
- First Contact
- Initial Understanding
- Detailed Model Capture
- Tests: Your Life Insurance!
- Migration Strategies
- Detecting Duplicated Code
- Redistribute Responsibilities
- Transform Conditionals to Polymorphism
- Appendix Thumbnail Patterns
- Index
L'auteur - Stéphane Ducasse
Stéphane Ducasse enseigne la programmation objet à l'Institut de mathématiques et d'informatique de l'université de Berne et effectue des recherches sur la programmation objet et la réingénierie. Co-auteur de Object-Oriented Rengineering Patterns chez Morgan Kaufman Publisher, il collabore en tant que relecteur technique avec de nombreux éditeurs américains
Stéphane Ducasse obtained his Ph.D. at the University of Nice-Sophia Antipolis and his habilitation at the University of Paris 6. He was recipient of the SNF 2002 Professeur Boursier Award. He is now a professor at the Université de Savoie. Ducasse has written several books in French and English.
Ducasse's fields of interests include reflective systems design, object-oriented language design, software component composition, application implementation and design, and object-oriented application reengineering. He is the main developer of the Moose reengineering environment. Ducasse also loves programming in Smalltalk and serves as president of the European Smalltalk User Group. He is committed to the Squeak community.
Autres livres de Stéphane Ducasse
L'auteur - Oscar Nierstrasz
Oscar Nierstrasz, University of Bern, Switzerland.
L'auteur - Serge Demeyer
University of Antwerp, Belgium.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | Morgan Kaufmann |
Auteur(s) | Stéphane Ducasse, Oscar Nierstrasz, Serge Demeyer |
Parution | 12/03/2003 |
Nb. de pages | 282 |
Format | 19 x 24 |
Couverture | Relié |
Poids | 825g |
Intérieur | Noir et Blanc |
EAN13 | 9781558606395 |
ISBN13 | 978-1-55860-639-5 |
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse
- Informatique Développement d'applications Technologies objet Programmation objet
- Informatique Développement d'applications Langages C #
- Informatique Développement d'applications Langages C++
- Informatique Développement d'applications Langages Eiffel
- Informatique Développement d'applications Langages Java - J2EE
- Informatique Développement d'applications Langages Objective-C
- Informatique Développement d'applications Langages Ada
- Informatique Développement d'applications Langages Python
- Informatique Développement d'applications Langages Ruby
- Informatique Développement d'applications Langages Smalltalk