What is SOA?
Author: Calin Groza

May 29, 2010

This article is about terminology used in System Analysis and Design activities. It started from the never-really-answered question: “What is SOA?” which lead to even harder questions like “What is Software Architecture?” To answer I relied on three sources: Roy Fielding’s Ph. D Thesis, UML Specification and SoaML Specification.

Roy Thomas Fielding’s Ph. D Thesis[1] is well-known because introduced REST to the world, but has a much broader scope, including a categorization in the software architecture domain. Fielding defines the following terms:

software architecture – an abstraction of the run-time elements of a software system during some phase of its operation. A system may be composed of many levels of abstraction and many phases of operation, each with its own software architecture

software architecture elements – components, connectors, and data–constrained in their relationships in order to achieve a desired set of architectural properties.

component – an abstract unit of software instructions and internal state that provides a transformation of data via its interface.

(Continue reading …)

Categories