Opentextbooks
Object-Oriented Reengineering Patterns
Serge Demeyer, Stéphane Ducasse, Oscar Nierstrasz
Computers & Technology
Object-Oriented Reengineering Patterns
Free
The publisher has enabled DRM protection, which means that you need to use the BookFusion iOS, Android or Web app to read this eBook. This eBook cannot be used outside of the BookFusion platform.
Description
Contents
Reviews

Object-Oriented Reengineering Patterns collects and distills successful techniques in planning a reengineering project, reverse-engineering, problem detection, migration strategies and software redesign. This book is made available under the Creative Commons Attribution-ShareAlike 3.0 license. You can either download the PDF for free, or you can buy a softcover copy from lulu.com. Additional material is available from the book's web page at http://scg.unibe.ch/oorp

Language
English
ISBN
978-3-9523341-2-6
Foreword
Preface
I Introduction
Reengineering Patterns
Why do we Reengineer?
The Reengineering Lifecycle
Reengineering Patterns
The Form of a Reengineering Pattern
A Map of Reengineering Patterns
II Reverse Engineering
Setting Direction
Agree on Maxims
Appoint a Navigator
Speak to the Round Table
Most Valuable First
Fix Problems, Not Symptoms
If It Ain't Broke, Don't Fix It
Keep It Simple
First Contact
Chat with the Maintainers
Read all the Code in One Hour
Skim the Documentation
Interview During Demo
Do a Mock Installation
Initial Understanding
Analyze the Persistent Data
Speculate about Design
Study the Exceptional Entities
Detailed Model Capture
Tie Code and Questions
Refactor to Understand
Step Through the Execution
Look for the Contracts
Learn from the Past
III Reengineering
Tests: Your Life Insurance!
Write Tests to Enable Evolution
Grow Your Test Base Incrementally
Use a Testing Framework
Test the Interface, Not the Implementation
Record Business Rules as Tests
Write Tests to Understand
Migration Strategies
Involve the Users
Build Confidence
Migrate Systems Incrementally
Prototype the Target Solution
Always Have a Running Version
Regression Test After Every Change
Make a Bridge to the New Town
Present the Right Interface
Distinguish Public from Published Interface
Deprecate Obsolete Interfaces
Conserve Familiarity
Use Profiler Before Optimizing
Detecting Duplicated Code
Compare Code Mechanically
Visualize Code as Dotplots
Redistribute Responsibilities
Move Behavior Close to Data
Eliminate Navigation Code
Split Up God Class
Transform Conditionals to Polymorphism
Transform Self Type Checks
Transform Client Type Checks
Factor out State
Factor out Strategy
Introduce Null Object
Transform Conditionals into Registration
IV Appendices
Thumbnail patterns
Testing Patterns
Retest Persistent Problems
Test Fuzzy Features
Test Old Bugs
Refactorings
Encapsulate Field
Extract Method
Move Method
Rename Attribute
Rename Method
Replace Conditional with Polymorphism
Design Patterns
Abstract Factory
Adapter
Facade
Factory Method
Flyweight
Null Object
Quantity
Singleton
State
State Patterns
Strategy
Template Method
Visitor
The book hasn't received reviews yet.
You May Also Like
Pharo by Example 5
Free
Stéphane Ducasse, Dimitris Chloupis, Nicolai Hess, Dmitri Zagidulin
Pharo by Example 5
Squeak by Example
Free
Oscar Nierstrasz, Stéphan Ducasse, Damien Pollet
Squeak by Example
Deep Into Pharo
Free
Alexandre Bergel, Damien Cassou, Stéphane Ducasse, Jannik Laval
Deep Into Pharo
EnterprisePharo
Free
Damien Cassou, Stéphane Ducasse, Luc Fabresse, Johan Fabry, Sven van Caekenberghe
EnterprisePharo
Concrete Construction Methods and Costs
Free
Charles Shattuck Hill, Halbert Powers Gillette
Concrete Construction Methods and Costs