In SOA patterns, different application components interact with each other using a communication protocol over the network. Each service provides end-to-end functionality, for example, fetching an order history. SOA is widely adopted by large systems to integrate business processes, for example, taking your payment service from the main application and putting it as a separate solution.
In a general sense, SOAs take monolithic applications and spread some of those operations out into individual services that operate independently to each other. The goal of using an SOA is to loosen the coupling of your application's services.
Sometimes, an SOA includes not just splitting services apart from one another but splitting resources into separate instances of that service. For instance, while some choose to store all of their company's data in a single database split by tables, an SOA would consider modularizing the application by function into separate databases...