This is a continuation of a previous post and focuses on one of six tenets identified in the previous post. In this post I will focus on service orientation.
The single most important advancement that will, by itself, define the future of modern systems and applications is the adoption of net-centricity using service-oriented approaches. In the last five years, “Network-centricity” has led the way to Net-centricity. That is to say, prior to the last five years, the emphasis has been on information sharing within a particular domain—whether via IP networks or otherwise. The key difference between the two is the service-oriented approach, which will most likely become the foundation for the bulk of future capabilities and information resources ranging from simple weather information to raw sensor information from a wide range of industries. While products within todays environment have relied heavily on network-centricity for many years, the information they provided has not, for many reasons, been consumable by many third-party applications. Service-oriented approaches espouse more discrete interfaces ranging from raw data access to interfaces optimized for specific application requirements. This approach focuses on information sharing across domains through open standards, and not through defined relationships between systems or programs of record using a mix of standards and proprietary protocols. Modern initiatives are helping to flush out the requirements, standards, specifications, and best practices for service-oriented environments.
A service-oriented architecture is comprised of a number of different components (known as services) that can be consumed by any number of client products. Service-oriented architectures (SOA) define specific dependencies and produce artifacts that can be molded to meet wider service needs then seen in most applications today, whether they are available on the network as a service or otherwise. Within SOA there are provisions for policy controls, information contracts, and the more technical data definitions, state management, and more. Service-orientation can be implemented with a wide range of technologies and formats as needed to meet performance, size, and/or openness requirements.
With this foundation established it opens the door to a wider range of information leveraging and capability composition options. Given this model, applications can become more malleable so they can change to meet the demands of the operating environment, establish new data partnerships & communication paths, and survive incremental service changes without risking the total capability set.
Within modern/future, applications would be modeled to publish discrete data and applications (whether application or information services) and composed to create capabilities as needed.