System Wide Information Management (SWIM) provides the basis for information exchange between systems based on the principles of a Service Oriented Architecture (SOA). SOA is a way of organizing Information Technology (IT) assets, policies, practices, and frameworks that enable application functionality to be provided and consumed as services that can be invoked, published and discovered. SOA makes an organization's IT better suited for interoperability among heterogeneous environments: one can interconnect between organizations regardless of their supported infrastructure, which opens doors to delegation, sharing, and reuse of existing services.
A SOA helps organizations align their software applications with business requirements, and provide the flexibility and agility to respond to change in a better, faster, and cheaper way. A SOA leverages reusable technology and information to streamline operations and increase business agility. The key aspect of SOA includes decoupling the development of business capabilities (e.g., air traffic management) from IT capabilities.
SOA Governance ensures that providers and consumers of data act as a community, sharing information among them. The goal is ultimately to provide the benefits of reuse of services and the elimination of duplicative functionality across traditional organizational boundaries, enabling greater agility of the enterprise to adapt to changing business requirements. Therefore, ensuring interoperability and reuse are key goals of this effort.
SWIM activities supporting Enterprise SOA include the following:
- SWIM Stakeholders' Meetings held with Enterprise stakeholders to discuss SOA issues in the FAA;
- SOA Brown Bag Sessions, open to FAA employees and contractors, held to discuss specific SOA topics;
- SOA-related working groups;
- Training developed and conducted for products, tools, and processes;
- SOA Architects who provide design guidance and oversight;
- Prototyping activities that provide opportunities to test tools, products, and processes prior to system development; and
- Development of SOA tool kits, sample Client Code, and Reference Models for testing and customer use.