|
|
Master SOA Design Pattern Catalog
|
|
|
|

Service Refactoring (Erl)

|

Home > Service Governance Patterns > Service Refactoring
|
|
How can a service be evolved without impacting existing
consumers?
|
|
|
|
|

Problem

The logic or implementation technology of a service may
become outdated or inadequate over time, but the service has
become too entrenched to be replaced.
|
|

Solution

The service contract is preserved to maintain existing consumer
dependencies, but the underlying service logic and/or
implementation are refactored.
|
|

Application

Service logic and implementation technology are gradually
improved or upgraded but must undergo additional testing.
|
 |
 |
 |

Impacts

This pattern introduces governance effort as well as risk
associated with potentially negative side-effects introduced by
new logic or technology.
|
|
|
|
|
|


|
All parts of a service architecture abstracted by its contract can potentially be refactored without compromising
existing consumer relationships. The service contract and the remaining, externally facing message processing
agents (red) are not affected by the refactoring effort.

|
|
|
This page contains excerpts from:

SOA Design Patterns by Thomas Erl

Foreword by Grady Booch

With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy, Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.

(ISBN: 0136135161, Hardcover, Full-Color, 400+ Illustrations, 865 pages)

For more information about this book, visit www.soabooks.com.
|
|