Mark Thompson.  Software systems are growing more complex  Many methodologies will reach their limit  Developers need a simple and flexible way to.

Slides:



Advertisements
Similar presentations
REST Introduction 吴海生 博克软件(杭州)有限公司.
Advertisements

Web Service Composition Prepared by Robert Ma February 5, 2007.
What is SOA? IT architecture for request - reply applications Application functions are modularized and presented as services Services are loosely coupled.
7-1 INTRODUCTION: SoA Introduced SoA in Chapter 6 Service-oriented architecture (SoA) - perspective that focuses on the development, use, and reuse of.
Presentation 7 part 1: Web Services Introduced. Ingeniørhøjskolen i Århus Slide 2 Outline Definition Overview of Web Services Examples Next Time: SOAP.
Presentation 7: Part 1: Web Services Introduced. Outline Definition Overview of Web Services Examples Next Time: SOAP & WSDL.
Enterprise Integration Architecture IPMA Professional Development Seminar June 29, 2006 Scott Came Director, Enterprise Architecture Program Washington.
Service Oriented Architecture Concepts March 27, 2006 Chris Armstrong
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
1 Introduction to SOA. 2 The Service-Oriented Enterprise eXtensible Markup Language (XML) Web services XML-based technologies for messaging, service description,
SOA with Progress Philipp Walther Consultant. © 2007 Progress Software Corporation2 Agenda  SOA  Enterprise Service Bus (ESB)  The Progress SOA Portfolio.
Stuart Sim Chief Architect Global Education & research Sun Client Solutions Blog:
Introduction to Service-Oriented Architecture. Outline Definition Features Examples of SOA Web Service Standards Example Pros and Cons Integration with.
SOA Basics SSE USTC Qing Ding. Topics Quick introduction to SOA Composite applications Services and SOA.
Business Process Orchestration
Ch 12 Distributed Systems Architectures
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Page 1 Elements of Service-Oriented Architecture B. Ramamurthy.
Software – Part 3 V.T. Raja, Ph.D., Information Management College of Business Oregon State University.
B. RAMAMURTHY Web services. Topics What is a web service? From OO to WS WS and the cloud WS code.
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
 1. Introduction  2. Development Life-Cycle  3. Current Component Technologies  4. Component Quality Assurance  5. Advantages and Disadvantages.
Online Shopping e-Business ITCS451/951 Group Assignment Online Shopping e-Business Team Members: 1. Elmabourk Benlamma Dhany Setia Purnama
CHAPTER FIVE Enterprise Architectures. Enterprise Architecture (Introduction) An enterprise-wide plan for managing and implementing corporate data assets.
CSE 303 – Software Design and Architecture
UNIT – II ARCHITECTING WEB SERVICES. WHAT ARE WEB SERVICES ? Web Services are loosely coupled, contracted components that communicate via XML-based interfaces.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
What is Service Oriented Architecture ? CS409 Application Services Even Semester 2007.
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 09. Review Introduction to architectural styles Distributed architectures – Client Server Architecture – Multi-tier.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Why Governance? SOA Governance allows to n Master complexity of IT n Support business process change.
Service Oriented Architecture (SOA) Dennis Schwarz November 21, 2008.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
SOA support in J2EE Platform overview Primitive SOA support Support for service-orientation principles Contemporary SOA support.
Online Shopping e-Business ITCS451/951 Group Assignment Online Shopping e-Business Team Members: 1. Elmabourk Benlamma Dhany Setia Purnama
SOA-01: SOA Elucidated: Principles of Service- Oriented Architecture Ken Wilner Vice President of Technology.
Java Fundamentals Usman Ependi UBD
SOA (rhymes with boa) Service-oriented architecture (SOA) - perspective that focuses on the development, use, and reuse of small self-contained blocks.
David Smiley SOA Technology Evangelist Software AG Lead, follow or get out of the way Here Comes SOA.
Service Oriented Architecture Instructor: Dr. Bahram Khalili Prepared by Kelly S. French.
Service Oriented Architecture + SOAP -Robin John.
HNDIT Rapid Application Development
Advanced Web Technologies Lecture # 5 By: Faraz Ahmed.
Overview of SOA and the role of ESB/OSB
1 Service Oriented Architecture SOA. 2 Service Oriented Architecture (SOA) Definition  SOA is an architecture paradigm that is gaining recently a significant.
1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601.
Basics of SOA Testing Assurance Services Unit 24 February 2016.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Introduction to Service Orientation MIS 181.9: Service Oriented Architecture 2 nd Semester,
Service Oriented Architecture Enabling the Agile and Flexible Business of the 21 st Century.
Topics on Web Services COMP6017 Dr Nicholas Gibbins –
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
By Jeremy Burdette & Daniel Gottlieb. It is an architecture It is not a technology May not fit all businesses “Service” doesn’t mean Web Service It is.
A service Oriented Architecture & Web Service Technology.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Object Oriented Systems Design
Unit – 5 JAVA Web Services
SOA (Service Oriented Architecture)
موضوع سمینار : نقش مولفه ها در معماری سرویس گرا
Introduction to Databases Transparencies
Elements of Service-Oriented Architecture
Service Oriented Architecture (SOA)
Service Oriented Architecture + SOAP
Distributed Systems through Web Services
Introduction to SOA and Web Services
Object Oriented Design
Presentation transcript:

Mark Thompson

 Software systems are growing more complex  Many methodologies will reach their limit  Developers need a simple and flexible way to develop applications  Service-Oriented Architecture is such a way

 Introduction  Common Development Problems  Terminology  Service-Oriented Architecture  Comparison with CBSE  Advantages/Disadvantages  Companies using SOA  Conclusion

 Software systems are changing  New technologies  New functionality  Telephone switches (100M LOC), OSes (1000s devs)  New software development methods  New tools  New processes  New architectures

Space Invaders (1981) Atari 2600

Crysis (2007) PC

 Complexity  Redundant and non-reusable code  Multiplicities of Interfaces

 Big expectations  Competition  New technology/hardware  Need to keep things as simple as possible  Group code together  Reuse code

 Code written in different languages  Different applications with same functions  Need to make code as reusable as possible  For all software, not each individual app  Setup common interface for all languages

 “Integration problem”  n(n-1) interfaces needed to integrate n apps  2(n) new interfaces to add an app Ex: 4 apps need 12 interfaces

 Service  Governance  Orchestration

 A single repeatable task  Three main parts:  Service implementation: code that performs the task  Elementary access details: the address of the service and the protocol to access it  Contract: description of the task, the interface, and a Quality of Service (QoS)

 Interface  Describes the exchanged data  The format of the data  How the service interacts  Does it report back when finished?  Does it report back after a certain amount of time?  Does it ever report back?  QoS: detailed description of interaction rules  Ex: authorization

 The way corporations govern themselves  Set of principles and practices  Helps achieve corporation’s goal  Sets up a chain of responsibility

 Optimal to start at the beginning  Controls updates to processes and technologies  Helps keeps services consistent and interoperable  Most successful when employees, customers, suppliers, and partners all participate

 Combining services to make an app  Best case scenario: little else is needed

 Video architecture-soa-899

 Overview  SOA Principles  XML

 “[SOA is] an evolutionary approach to building information technology systems that is focused on solving business problems” [1]  “[SOA] is a way of organizing software so that companies can respond quickly to the changing requirements of the marketplace” [6]

 Create a collection of services  Each service is a small, independent project  Can be new or extracted from existing apps  Orchestrate services to develop applications

 Standardized Service Contracts  Loose Coupling  Service Abstraction  Service Reusability  Service Autonomy  Service Statelessness  Service Discoverability  Service Composability

 Contracts designed to specification  Consider optimization and granularity  Make services consistent, reliable, and governable  Allow for different languages, OSes

 Each service should be standalone  One service can use another, but only through the standard interface  Allows interchanging a new service for old  Allows internal changes to a service

 Hides the low level details  Easier to understand a service  Easier to use a service  Promotes loose coupling

 Develop services with reuse in mind  Shortens application development time  Less testing required  Easier to maintain

 Some control over environment and resources  Otherwise, may not be able to complete task  Increases the reliability and predictability  May require a level of isolation

 Remain as stateless as possible  Affects a services availability and scalability  May be necessary to maintain a state  May be repeatedly called to complete a task  May need to maintain a “conversation”  May offset state managing responsibilities

 Prevents rewriting services  Promotes reuse of services  One way is to have a service registry  Contains all of the services  Contains the service contracts  Private or public

 Describes how services work together  Also known as orchestration  Break large problem into smaller tasks  Services can complete the smaller tasks  If they can’t work together, they need to be modified

 Common way to interface, but not required  Convenient way to have self-describing data  Is a string of text with “tags” to describe data Ex: Sample XML

 Both use “building blocks”  CBSE more strict, SOA is more flexible  CBSE has models such as DCOM, CORBA, EJB  SOA has no requirement for internal structure  Both have loose coupling  CBSE has it, but SOA is even “looser”  SOA is platform-independent, language-independent  SOA is networked-based

 Quicker development times  Simplified development  Reduced redundancy, increased reuse  Reduced testing times  More flexible and agile  Easier maintenance

 No guarantee for advantages  More time spent on architecture  Need to develop many services  Writing from scratch or extracting can take time  Managing communications between services and debugging them is very complex  Possible security problems  Performance issues

 Ebay  Over 2 petabytes of data  Over 6 million lines of code  Credits SOA for interoperability between C++ and Java  IBM  Has over 70 services  Reduced application inventory from 16,000 to 4,000

 Hewlett-Packard  $70 million in savings  Credits SOA for consolidation and reuse  Saw $1 million in immediate savings  Amazon  Over 60 million customers and 1 million partners  Outgrew their old architecture  Other well known companies include: Wachovia Bank, Harley Davidson, Ameriprise Financial, Citigroup, OnStar, and DreamWorks animation

 Services reduce the amount of redundancy  Using services make the development process quicker and more agile  SOA prepares a corporation for the future

 [1] Carter, S. (2007). The New Language of Business. Indianapolis: IBM Press.  [2] Channabasavaiah, K., & Holley, K., & Tuggle, E. (2003, December 16). Migrating to a Service-Oriented Architecture. Retrieved February 17, 2010, from IBM website:  [3] Erl, T. (n.d.). SOA Principles: An Introduction to the Service-Oriented Paradigm. Retrieved February 17, 2010, from SOA Principles website:  [4] Kanagwa, Benjamin, and Ezra K. Mugisa. "A Comparison of Service Oriented Architecture with Other Advances in Software Architectures." Web. 25 Apr  [5] Lawler, J., & Howell-Barber, H. (2008). Service-Oriented Architecture. Boca Raton: Auerbach Publications.  [6] Margolis, B. (2007). SOA for the Business Developer: Concepts, Bpel, and Sca. City: MC Press.  [7] McKendrick, J. (2006, December 17). Ten Companies Where SOA Made a Difference in Retrieved March 15, 2010, from ZDNet website: