In this initial article, I provide an overview of my ‘version’ of SSOA. I summarize a couple of perspectives and then highlight the technical underpinnings. I close by summarizing and supplying a projected roadmap for this column. As a point of order, my background is with the U.S. Navy; therefore, my perspective tends toward military/government settings. However, as I will indicate in a subsequent article, at their core all organizations strive to be the best at the same process: decision making.
Today’s business analysts work around the clock to gather, compile, and analyze vast amounts of data to identify and mitigate potential threats (i.e. competition or adversaries). They engage actors across a spectrum from near-real time activities to strategic, long-term trends. Because of the importance of their efforts analysts need (and usually) desire to collaborate effectively and employ all the tools and data at their disposal. Unfortunately, many tools they require fail to interoperate seamlessly – forcing users to spend valuable time attempting to perform non-analytical tasks, such as data manipulation. Further, challenges to accessing, sharing, understanding and awareness of useful information, as well as pressing demands for actionable information, worsens this already objectionable situation and often results in conjecture offered to decision makers and collaborators. Meanwhile, if our competition is more organic and agile it will enjoy a smaller decision cycle, and render us obsolete. SSOA presents an engineering construct that allows business analysts to focus more centrally on higher order cognitive tasks, and a viable approach to effective capabilities sharing and collaboration among disparate organizations.
Operationally, SSOA will dramatically impact the workflows analysts execute. SSOA will transform analysts’ current tradecrafts from human-centric, manually intensive processes to increasingly automated, adaptive and intelligent processes. Analysts will pose objectives to the enterprise and intelligent software will automatically assemble workflows to accomplish analysts’ goals. Analysts themselves will be resources, or services, on the network and will dynamically collaborate and share business functions and information. Analysts’ time will center on cognitive reasoning tasks, yielding more productive analysis and outputting actionable intelligence which enable superior decisions.
Rigorous, machine-interpretable descriptions of services and processes will facilitate automatic detection and selection – ultimately composition and orchestration – of services and data of interest; and suitable substitute services will be consumed should preferred services become unavailable. In other words, users don’t care about services; they care about answers. Semantic descriptions that “connect” metadata and data provide a way forward to allow intelligent software to reconcile stated goals with available services and data.
Self-healing, self-organizing, and self-synchronizing, an autonomic runtime will prevent “stale” references to services or “page not found” errors. Participating services must regularly indicate their state and availability; otherwise, they will be purged from the network. SSOA assumes failures will occur and is designed to be recovery-oriented – continually striving to retain or reach ‘target’ state. It will include spontaneous networking and dynamic services discovery. SSOA will implement a highly scalable decentralized and federated architecture; outages or failures in parts of the network will not necessarily impact others.
The SSOA infrastructure will be founded on an organic and semantically enriched model. Empowering analysts to create ad hoc, “situational” applications is best realized by a model patterned after Complex Adaptive Systems (CAS). Biological organisms observed in nature provide a tangible example of CAS. Pervasive machine interpretable descriptions of resources will greatly improve automatic mediation of interfaces.
SSOA is technically founded on three primary notions: (1) principals of Service-Oriented Architecture (SOA), (2) Standards Based Design (SBD), and (3) semantics based computing. SSOA combines and implements these concepts into a robust extendable platform capable of enabling complex and powerful functions.
SOA enables heterogeneous, componentized and distributed applications to work together seamlessly (meaning that participating services are made available using well known, standard interfaces, precluding implementation of multiple, ad hoc specifications). SOA is both a process and architectural mindset that focuses on organizing systems as reusable, sharable services. SOA helps break up stovepipes and facilitates cross-domain sharing of enterprise resources.
Standards Based Design adds durability, rapid implementation of technologies and platform independent application specification of solution logic. As a “lifestyle choice” – not just technology – SSOA seeks to implement and contribute to standards from major standards bodies such as the World Wide Web Consortium (W3C), International Standards Organization (ISO), Object Management Group (OMG), the OSGi™ Alliance1 and the OASIS Open Composite Services Architecture (Open CSA). OSGi™ specifications define a dynamic module system for Java™ and provide a flexible, dynamic environment for applications. Open CSA includes a language independent assembly model for creating composite services in a SOA called Service Component Architecture. A workflow definition such as the National Institute for Standards and Technology (NIST) Process Specification Language (PSL) represents a potential standard for expressing service orchestration.
Semantic technologies aim to help transform today’s “Wild Wild Web” of disparate data into a globally distributed web of meaning. Today’s Web remains largely human consumable and optimized for presentation. In this [data] space humans exchange and interpret data. In the Semantic Web [information] space content residing in documents, portions of documents or other mediums is described by explicit relationships between domain entities/concepts creating machine-interpretable content. Explicit structured metadata “connected” to instance data results in contextual information from which “new” information can be inferred and greater understanding can be derived.2 SSOA will leverage standards such as Resource Description Framework (RDF) and Web Ontology Language (OWL) to describe resources including components, knowledge objects, services, processes, and personnel.
Service-oriented computing employed in conjunction with open standards such as OSGi technology, SCA and semantic technologies such as RDF/OWL represent the technical foundations for SSOA. The primary goals of SSOA are to enable analysts to access the right information at the right time and to effectively inform or make decisions. To a large degree, SSOA is really anti-climactic; that is, it simply aims to fulfill the basic purpose of Information Technology: provide information on demand.
My roadmap for this column is more or less as follows: discuss the underlying decision process common in all IT systems; elaborate on technologies and standards described herein; discuss topics such as adoption inhibitors; approaches deploying “intelligent software agents”; and provide status on my progress realizing the SSOA vision. Since we can so easily interact using IT, I encourage readers to supply me comments and other feedback to enhance this column.
1. Leading IT companies (i.e. IBM, Oracle, Sun and others) recently announced plans to migrate their platforms to OSGi technology. See http://www.osgi.org/wiki/uploads/News/2008_09_16_worldwide_market.pdf
2. Daconta, M., Obrst, L., Smith, K. (2003). The Semantic Web: A Guide to the Future of XML, Web Services and Knowledge Management. Indianapolis, Indiana: Wiley Publishing Inc.
- A Tale of Agile Development... of a Standard
- Introduction to: Open World Assumption vs Closed World Assumption
- Summary of 11th International Semantic Web Conference
- Elephant Hunting for Pygmies: How To Introduce Big Data and Linked Data to Your Company