This document discusses best practices for maintaining systems built using a Service-Oriented Architecture (SOA). It outlines several design principles for SOA, including loose coupling, encapsulation, abstraction, contracts, reusability, composability, autonomy, and optimization. It also describes the roles involved in maintaining an SOA system, such as front-end support, back-end maintenance, database support, management, and quality assurance. Key aspects of SOA maintenance covered include governance, service level agreements, quality of service, reusability, and reverse engineering.