While everyone acknowledges API and Service Oriented Architecture (SOA) are best practice approaches to solution and platform development, the learning curve and adoption curve can be steep. To gain significant business benefits, teams must understand their IT business goals, define an appropriate SOA & API mindset, describe how to implement shared services and popular APIs, and tune governance practices.
SOA is a design discipline that focuses on implementing shared functionality as reusable services. A core SOA principle is to maintain a clean separation of concerns between services implementing shared functionality and applications that consume them. This design approach enables any type of application to consume the service. It hides implementation details from the consuming applications, and enables more flexibility and adaptability in the systems.