Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Object Oriented Reengineering Patterns (The Morgan Kaufmann Series in Software Engineering and Programming)

Buy
"This book speaks with experience. It gives you the building blocks for a plan to tackle a difficult code base and the context for techniques like refactoring. It is a sad fact that there are too few of these kinds of books out there, when reengineering is such a common event. But I'm at least glad to see that while there aren't many books in this vein, this book is an example of how good they are."
From the foreword by Martin Fowler

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.

Features:
* Describes how to reverse engineer a monolithic system to understand how it really works and how to identify potential problems.
* Includes reengineering patterns that tackle well-known reengineering techniques often encountered in object-oriented programming, such as introducing polymorphism, factoring out common behavior, detecting duplicated code, and understanding design.
* Shows how to build a culture of continuous reengineering for achieving flexible and maintainable object-oriented systems.

About the Author

Serge Demeyer is a Professor in the Department of Mathematics and Computer Science at the University of Antwerp in Belgium. He also serves as a technical leader of the FAMOOS esprit project; a project whose goal is to come up with a set of reengineering techniques and tools to support the development of object-oriented frameworks. He has been involved in the organization of several workshops (at ECOOP and ESEC) and one tutorial concerning object-oriented reengineering. Stéphane Ducasse is a post doctoral researcher in the Software Composition Group in Berne, serving as technical leaders of the FAMOOS esprit project; a project whose goal it is to come up with a set of reengineering techniques and tools to support the development of object-oriented frameworks. He has been involved in the organization of several workshops (at ECOOP and ESEC) and one tutorial concerning object-oriented reengineering. Oscar Nierstrasz is a Professor of Computer Science at the University of Berne, where he leads the Software Composition Group. He has been active in the object-oriented research community for many years, serving on program committees of among others, ECOOP, OOPSLA and ESEC. He gave several tutorials and invited talks on object-oriented technology at various international conferences and workshops.
(HTML tags aren't allowed.)

Modern Algebra: An Introduction
Modern Algebra: An Introduction

Engineers and computer scientists who need a basic understanding of algebra will benefit from this accessible book. The sixth edition includes many carefully worked examples and proofs to guide them through abstract algebra successfully. It introduces the most important kinds of algebraic structures, and helps them improve their ability to...

Beginning JavaScript, 3rd Edition (Programmer to Programmer)
Beginning JavaScript, 3rd Edition (Programmer to Programmer)

Do you want to create more exciting web applications that will increase visits to your site? With this up-to-date guide, you'll find everything you'll need to know to develop interactive, robust, and personalized pages using JavaScript. It takes you step by step through this powerful scripting language so you can begin enhancing your site right...

Creating a Data-Driven Organization
Creating a Data-Driven Organization

What do you need to become a data-driven organization? Far more than having big data or a crack team of unicorn data scientists, it requires establishing an effective, deeply-ingrained data culture. This practical book shows you how true data-drivenness involves processes that require genuine buy-in across your company, from analysts...


Deterministic and Statistical Methods in Machine Learning: First International Workshop, Sheffield, UK, September 7-10, 2004. Revised Lectures
Deterministic and Statistical Methods in Machine Learning: First International Workshop, Sheffield, UK, September 7-10, 2004. Revised Lectures
Machine learning is a rapidly maturing field that aims to provide practical methods for data discovery, categorization and modelling. The Sheffield Machine Learning Workshop, which was held 7–10 September 2004, brought together some of the leading international researchers in the field for a series of talks and posters that represented new...
Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software

An Integrated Technology for Delivering Better Software—Cheaper and Faster!

 

This book presents an integrated technology, Design for Trustworthy Software (DFTS), to address software quality issues upstream such that the goal of software...

Proceedings of the 11th International Conference on Modelling, Identification and Control (ICMIC2019) (Lecture Notes in Electrical Engineering)
Proceedings of the 11th International Conference on Modelling, Identification and Control (ICMIC2019) (Lecture Notes in Electrical Engineering)
This book includes original, peer-reviewed research papers from the 11th International Conference on Modelling, Identification and Control (ICMIC2019), held in Tianjin, China on July 13-15, 2019. The topics covered include but are not limited to: System Identification, Linear/Nonlinear Control Systems, Data-driven Modelling and Control,...
©2019 LearnIT (support@pdfchm.net) - Privacy Policy