Introduction to SOA

Uploaded on

introduction to service oriented architecture

introduction to service oriented architecture

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Service Oriented Architecture (SOA) @saeed_shargi
  • 2. Architecture
  • 3. Architecture Definition in IEEE 1471 Architecture : The fundamental organization of a system embodied in it’s components, their relationships to each other, and to the environment, and the principles guiding it’s design and evolution Architect : The person, team, or organization responsible for designing systems architecture
  • 4. Software Architecture What is Software Architecture?  The software architecture of a program or computing system is a depiction of the system that aids in the understanding of how the system behave  Serves as blueprint for both the system and the project developing  The primary carrier of system qualities  An artifact for early analysis  Set of structures needed to reason about the system  Documentation of a system
  • 5. SOA
  • 6. SOA An architecture style that model system’s information into services Old division between business and IT Basic understanding of SOA development as a application that describe web services Logical evolution of the software’s modeling Not a new concept
  • 7. SOA Definition from various viewpointsSOA is a journey that promises to : reduce the lifetime cost of the application portfolio Maximize RIO in both application and technology resource Reduce lead times in delivering solutions to business
  • 8. SOA Definition from various viewpointsSOA is a set of services that can be: Exposed to their customers ,partners and other part of organization Business capabilities , function , and business logic can be combined Application serve the business
  • 9. SOA Definition from various viewpointsSOA is a way of unlocking value
  • 10. SOA Definition from various viewpoints SOA is a means to create dynamic , highly configurable and collaborative application built for change SOA reduce IT complexity and rigidity SOA becomes the solution to stop the gradual entropy SOA reduces lead times and costs
  • 11. SOA Definition from various viewpointsSOA is the architectural solution forintegrating diverse systems byproviding an architectural style thatpromotes loose coupling and reuse
  • 12. SOA Definition from various viewpoints SOA is a programming model or paradigm where web services and contracts becomes a dominate design for interoperability Use WSDL or equivalent specification for describing the service
  • 13. SOA DefinitionDelivering on the promises of SOA :  Improved business agility  Maximized ROI  Reduce IT complexity and rigidity  Reduce costs  Reduce lead times  Reduce risk  New opportunities to deliver value  Increased participation in value networks  Incremental implementation
  • 14. Is SOA an Architectural Style?
  • 15. What Are The Fundamental Constructs Of SOA?
  • 16. What Are The Fundamental Constructs Of SOA? The most basic construct or building block of SOA is a service Service consumer, service provider, service description, service broker, and a registry are all part of the DNA of SOA A service in SOA is the logical, self-contained business function
  • 17. What Are The Fundamental Constructs Of SOA? Services in SOA have the following attributes:  Stateless  Discoverable  Self-describing  Compostable  Loose coupling  Governed by policy  Independent location, language, and protocol
  • 18. What Are The Fundamental Constructs Of SOA? Services in a service-oriented architecture typically have the following characteristics:  Coarse-grained  Asynchronous
  • 19. What Are The Fundamental Constructs Of SOA?
  • 20. What Are The Fundamental Constructs Of SOA?
  • 21. SOA Terms Service-Orientation Services Service-Models Service Composition Service Inventory Service-Oriented Analysis Service Candidate Service-Oriented Design Service Contract Service-Related Granularity
  • 22. Service-Orientation design paradigm intended for the creation of solution logic units As a design paradigm for distributed computing, service- orientation can be compared to object-orientation
  • 23. Service-Orientation
  • 24. Services A unit of solution logic to which service-orientation has been applied to a meaningful extent. As a physically independent software program with specific design characteristics Each service is assigned its own distinct functional context and is comprised of a set of capabilities related to this context Considered a container of capabilities associated with a common purpose
  • 25. Services Service capabilities declare in service contract
  • 26. Services Three common service implementation is :  Services as Components  Services as Web Services  Services as REST Services
  • 27. Services as Component A software program designed to be part of a distributed system It provides a technical interface comparable to a traditional API have typically relied on platform-specific development and runtime technologies
  • 28. Services as Web Services Is a body of solution logic that provides a physically decoupled technical contract consisting of a WSDL definition and one or more XML Schema definitions and also possible WS-Policy expressions Web service contract exposes public capabilities as operations Service-orientation can be applied to the design of Web services
  • 29. Services as Web Services
  • 30. Services as REST Services Are designed in compliance with the REST architectural style Focuses on the resource as the key element of abstraction Can be further shaped by the application of service- orientation principles
  • 31. Services Models Is a classification used to indicate that a service belongs to one of several predefined types Three service models are common to most enterprise environments and therefore common to most SOA projects:  Task Service  Entity Service  Utility Service Play an important role during service-oriented analysis and service oriented design phases
  • 32. Services Composition Is an aggregate of services collectively composed to automate a particular task or business process To qualify as a composition, at least two participation services plus one composition initiator need to be present Can be classified into primitive and complex variations
  • 33. Services Composition
  • 34. Services Inventory Is an independently standardized and governed collection of complementary services within a boundary that represents an enterprise or a meaningful segment of an enterprise When an organization has multiple service inventories, this term is further qualified as domain service inventory
  • 35. Services-Oriented Analysis Represents one of the early stages in an SOA initiative and the first phase in the service delivery cycle The service-oriented analysis process is commonly carried out iteratively, once for each business process A key success factor of the service-oriented analysis process is the hands-on collaboration of both business analysts and technology architects
  • 36. Services-Oriented Analysis
  • 37. Services Candidate Is used to help distinguish a conceptualized service from an actual implemented service
  • 38. Services-Oriented Design Represents a service delivery lifecycle stage dedicated to producing service contracts in support of the well- established “contract-first” approach to software development The typical starting point for the service-oriented design process is a service candidate There is a different service-oriented design process for each of the three common service models
  • 39. Services Contract Is comprised of one or more published documents that express meta information about a service The fundamental part of a service contract consists of the documents that express its technical interface When services are implemented as Web services, the most common service description documents are the WSDL definition, XML schema definition, and WS- Policy definition
  • 40. Services Contract
  • 41. Services Contract
  • 42. Services Contract
  • 43. Services-Related Granularity there are different granularity levels as follows:  Service Granularity  Capability Granularity  Constraint Granularity  Data Granularity
  • 44. Services-Related Granularity
  • 45. What Is The Difference Between aWeb Service and an SOA Service?
  • 46. Benefits Of SOA New products or processes simply execute Flexible systems are not obstacle to changing and rapid evolution of processes
  • 47. Benefits Of SOA Solving complex integration problem of large systems
  • 48. Benefits Of SOA Divided of project into smaller components that can be done independent is simply Control of progress in each subproject is calculated
  • 49. Benefits Of SOA Integration and connecting to other systems is dominant approach
  • 50. Benefits Of SOA Systems easily meet the requirements of users The problem of data transfer between systems is solved with integration Complexity of systems hidden from users
  • 51. Benefits Of SOA Enterprise architects believe that the SOA can help the business to response faster and more cost-effective to market conditions changing This style of architecture use reusability in macro level instead micro level
  • 52. Orchestration and Choreography Without process engine Sequence of transaction messages register and controlled by players Have a process engine Call set of services to complete process Maybe call external services Sample of this system is BPMS
  • 53. Principles of SOA Loose coupling Service contract to communications agreement Encapsulation of internal implementation Reusability Composability Statelessness Services Discoverability Services Autonomy Services
  • 54. SOA ToolsCompany Tools Name Oracle Oracle SOA SuiteMicrosoft BizTalk Server - WCF IBM WebSphere