Presentation on theme: "1 Service Computing Dr. Yuhong Yan Jan, 2008. 2 Unit objectives The overview of this domain –The coverage of service computing –Sample Web services –Some."— Presentation transcript:
1 Service Computing Dr. Yuhong Yan Jan, 2008
2 Unit objectives The overview of this domain –The coverage of service computing –Sample Web services –Some real world projects –A list of research topics
4 Service Computing Create, operate, manage and optimize these processes in a well-defined architecture for higher flexibility facing future business dynamics. From L-J Zhang, Jia Zhang and Hong Cai,Service Computing p17.
5 Overview of a Service Ecosystem
6 Technology Innovation Related Services in Business Common business services –Customer Relationship Management (CRM) –Supply Chain management (SCM) –Enterprise Resource Planning (ERP) –Human Capital management (HCM) Common IT Services –Monitoring –Remote control –Web hosting –Communication –Data storage and management From L-J Zhang, Jia Zhang and Hong Cai,Service Computing p15.
7 Service Computing Covers IT Services –Application integration –Infrastructure services service level automation and orchestration Resource management and virtualization –Autonomous system management For business services –Service-oriented business consulting methodology –Business process modeling –Business transformation –Business performance management –Industry solution patterns From L-J Zhang, Jia Zhang and Hong Cai,Service Computing p18.
8 Software as Services From an installed product to a hosted services –CRM, HR, BI are significant sectors –Supply chain and ERP are coming Pay on a subscription or per use basis using a Web browser Hybrid type: deployed software with a S-as-a-S component
9 Services as Software Software that catches knowledge and experiences –Consulting –Online education –Workflow processes –Enterprise performance management
10 Service Oriented Architecture (SOA) The OASIS SOA Reference Model group defines Service Oriented Architecture is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. It provides a uniform means to offer, discover, interact with and use capabilities to produce desired effects consistent with measurable preconditions and expectations.
11 Web Services W3C Web Services Architecture: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format.
12 Web Services vs. SOA Two opinions: –SOA typically refers to Web Services –W3C Web service reference architecture is on the foundation of SOAP and WSDL –SOA is not the same as Web Services Web services are an instantiation of SOA with SOAP and WSDL SOA is a concept not bound to any specific technology What people agree –The roles and operations in the SOA/WS triangle –The principles of SOA/WS –There are many ways to implement messaging and service description language, but ought to use internet protocols
13 SOA/Web Service triangle From Web Services Architecture W3C Working Draft
14 SOA/WS Principles Service encapsulation Service interoperability Service abstraction - Beyond what is described in the service contract, services hide logic from the outside world Service loose coupling - Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other Service contract - Services adhere to a communications agreement, as defined collectively by one or more service description documents Service reusability - Logic is divided into services with the intention of promoting reuse Service composability - Collections of services can be coordinated and assembled to form composite services Service autonomy – Services have control over the logic they encapsulate Service statelessness – Services minimize retaining information specific to an activity Service discoverability – Services are designed to be outwardly descriptive so that they can be found and assessed via available discovery mechanism
15 Openess Open standards Open sources Open Architecture (SOA)
16 Web Service Stack Discovery UDDI Transport HTTP, SMTP, FTP, BEEP Description WSDL XML messaging XML-RPC, SOAP, XML Process BPEL4WS, WSCI, WS-CDL
17 SOA at various business and IT levels From L-J Zhang, Jia Zhang and Hong Cai,Service Computing p30. Business Componentization Process Optimization SOA infrastructure SOA at business level SOA at process level SOA at programming level
18 Tight Coupling Data and functionality typically resides on more than one system (and application) Applications need to be able to talk to each other Status quo: Proprietary or custom communication interfaces between applications
19 Problems with tight coupling There is nothing inherently wrong with tight coupling. However: –Its costly to maintain – Slow and costly to change –Cost and complexity compounded by multi-party scenarios such as B2B or integration with the public sector –Cost and complexity of managing and changing a tightly coupled architecture translates into IT being a drag on business agility (IT cant keep up with business needs, but its not their fault) Recognized for many years as a challenge the industry wanted to solve Many previous attempts to create an SOA –CORBA –COM –EAI Reasons they did not work –Lack of open standards –Proprietary components
20 SOA: the Ideal of Open Interoperability An IT architecture composed of software that has been exposed as Services – i.e. invoked on demand using a standard communication protocol. Web Services – software available as a service using Internet protocols. One software application talking to another using a standards-based (i.e. non-proprietary) language over a standards-based communication protocol. Universal Dial Tone between software applications An IT architecture that enables loose coupling of applications
21 Some Sample Web Services Xmethods.com Google.com Amazon.com Ebay.com
24 Google APIs Google uses SOAP and WSDL standards Program to query more than 4 billion web pages Use your preferred languages: java, Perl,.net What you can do: –Refine google search results Based on queries within a community Integrate results from different languages –Automatic information collection Observe new items for one topic Search on several catalogs –Integrate with other functions Translation Spell checking
26 Functions: –Search –Shopping cart –Payment Do business around amazon. Commerce Web services –IT services –Web hosting
27 Some real world projects
28 Online Interactive Science and Engineering Experiment System (OISEE) Service Oriented Architecture for online experiment system Wrap instruments as Web services based on VISA and IVI interface Performance issues Grid services vs. Web services Collaborate with UQAM in Montreal
29 Wrap IVI and VISA Instruments as Web Services Instr. A Instr. B Instr. C VISA / VISA COM IVI COM NI NI VXI Others….
30 Serialize Instrument Panel API Java validates uses generates XSD file (DMM_GUI.xsd) XML file (DMM_AGILENT_34401A_GUI.xml) JAXB Java architecture for XML Binding From IVI specifications (Interchangeable Virtual Instrument) Java Servlet GUIBuilder JPanel JButton JCheckBox JTextPane JComboBox …
31 Web 2.0 Techniques for Data Exchange and Real Time Signal Display Lutz Tautenhahn JS Diagram Builder library + JS DOM Script AJAX engine Servlet JSON XML Web Interface Instrument Web Service
32 Canarie Proposal: Scientific Studio Remote Experiments with Synchrotron
33 DB2 Information Integrator Relational Data Flat File / XMLSpread SheetSensor Data Response Information Repository (DB2) Websphere App Server Web Services Response System Advisors Search, Query, Mining,.. Applications: J2SIM, … etc. Critical Infrastructure Data Sources Wrappers Critical Infrastructures Responders Transportation HospitalPower Plant Sensor Network Intelligent Framework for Large Disaster Response PoliceFire Fighter
34 Distributed Simulation Environments
35 Defence and Emergency Planning Battlefield Simulations Crowd behavior and Evacuation analysis
36 Summary The scope of service computing The key techniques in service computing Why people use Web services Research?