12.07.2015 Views

Migration of a Chosen Architectural Pattern to Service Oriented ...

Migration of a Chosen Architectural Pattern to Service Oriented ...

Migration of a Chosen Architectural Pattern to Service Oriented ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 5. Guidelines 108SolutionApplication <strong>of</strong> the pattern separates policies from services.Result Context The policies are separated from services. It is easier <strong>to</strong>keep all the policies up <strong>to</strong> date. Update <strong>of</strong> policy affects all the servicesusing this policy in the same time.5. Name Utility AbstractionProblem <strong>Service</strong>s, even those that do not provide redundant functionalitymay perform some common operation. Those operations are redundant.The redundancy requires additional effort for testing and maintenance.Context An application contains some common functionality that usedin code in several places.Forces(a) Common functionalities are used by code in several places(b) Those functionalities do not exist in requirements - they are ratherhelpers for architects and developers(c) Different vendors may not be aware that other vendors implementedthe same common functionalitySolution Utility Abstraction defines one layer containing common utilityservices. The layer contains mainly services without business concern,therefore in opposite <strong>to</strong> business-based services, utility services are developedmainly by architects and developers what raises problems related <strong>to</strong>content <strong>of</strong> such service. Teams need good communication in order <strong>to</strong> avoidredundant services.Result Context The application has clearly separated and implementedcommon functionalities that are further wrapped in<strong>to</strong> services.6. Name Canonical ResourcesProblem Modern systems require access <strong>to</strong> external resources like databases,central direc<strong>to</strong>ries or transaction management frameworks. The resourcesare accessed by many subsystems <strong>of</strong> the system. The access logic becomesa part <strong>of</strong> the subsystem.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!