lecture course service-oriented computing 1....

35
Fuyuki Ishikawa (石川 冬樹) [email protected] Lecture Course Service-Oriented Computing 1. Introduction 2012/04/11

Upload: phamdung

Post on 10-May-2018

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Fuyuki Ishikawa (石川 冬樹)[email protected]

Lecture CourseService-Oriented Computing

1. Introduction2012/04/11

Page 2: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Work with NII since 2007Digital Content and Media Sciences Research Division

Research InterestsService-Oriented ComputingSoftware Engineering (Formal Methods and Requirements Engineering)

Web sitehttp://research.nii.ac.jp/~f-ishikawa/

slides put on this site

SOC'12 @ Sokendai 2Fuyuki Ishikawa

Fuyuki Ishikawa/石川 冬樹

Page 3: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Argue concepts, realization techniques, and applications of

web servicesand clouds

with overview of principles, fundamental theories and techniques primarily about

distributed computingand XML

SOC'12 @ Sokendai 3Fuyuki Ishikawa

Overview of the Course

Page 4: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 4Fuyuki Ishikawa

TOC

Page 5: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

A Web service is a software applicationidentified by a URI, whose interfaces and binding are capable of being defined, described and discovered by XML artifactsand supports direct interactions with other software applications using XML based messages via internet-based protocols

[W3C, 2002]

SOC'12 @ Sokendai 5Fuyuki Ishikawa

Web Services?

Page 6: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Service-Oriented Computing (SOC) is a new computing paradigm that utilizes services as the basic constructs to support the development of rapid, low-cost and easy composition of distributed applications even in heterogeneous environments. The visionary promise of Service-Oriented Computing is a world of cooperating services where application components are assembledwith little effort into a network of services that can be loosely coupled to create flexible dynamic business processes and agile applications that may span organizations and computing platforms. SOC is being shaped by, and increasingly will help shape, modern society as a whole, especially in the areas of dynamic and on-demand business and education, health and government services.

[M. P. Papazoglou et al., Service-Oriented Computing Research Roadmap, 2006]

SOC'12 @ Sokendai 6Fuyuki Ishikawa

Service-Oriented Computing?

Page 7: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Concept of ”Services”Independent of each other and can be combined in a loosely-coupled mannerTypically less granular than general “components”, to be meaningful for supporting human activitiesPublished with self-describing information on their functionality and quality aspectsAccessed via internet standards (HTTP/XML)

Aiming at constructing a system in an agile and flexible way by means of combining services available on the network

SOC'12 @ Sokendai 7Fuyuki Ishikawa

Service-Oriented Computing: Summary

Page 8: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

SOC'12 @ Sokendai 8Fuyuki Ishikawa

Service-Oriented Computing: ExampleInternet of ServicesService Composer

Travel Agency Service Hotel Reservation Service,Route Finder Service, etc.

Description of Service Functionality and Quality Access via Internet Protocols

Page 9: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

People talk different visions and stories in similar architectural figures:From intra/inter- enterprise systems

Careful design and developmentLong-term collaboration through service level agreements

To open web usesLightweight scripting or GUI-based mash-upOn-the-fly, possibly one-shot integration with free pickup of services

SOC'12 @ Sokendai 9Fuyuki Ishikawa

A Variety of Visionary Goals

Page 10: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 10Fuyuki Ishikawa

TOC

Page 11: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Distributed objects: mechanisms for interaction between distributed object-oriented systems

Allow for use of internet standards (XML, HTTP, etc.), including URI, with selectability

SOC'12 @ Sokendai 11Fuyuki Ishikawa

Historical Contexts: Distributed Computing

Java C++

CORBACORBA

Java C++

DCOMDCOM

Block by standard firewall settingsTightly-coupled integration by object references

Little interoperability between different schemes

Page 12: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Web Applications: human users access the functionalities through browsers (HTML)

Use machine-accessible description and interface in XML

SOC'12 @ Sokendai 12Fuyuki Ishikawa

Historical Contexts: AI/Web

Manual integration for own usages by copy & paste

Difficulties in automated support with design parsing of structured pages or with natural language processing

Design in HTML

Applicationdescriptions in natural languages

Page 13: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Enterprise systems: development of business process applications including several tasks

Use less-granular and independent services for loosely-coupled system construction

SOC'12 @ Sokendai 13Fuyuki Ishikawa

Historical Contexts: Software Engineering

Personnel affair, Accounting affair, …

Staff management application

Add business trip management application?

Connecting with partner systems?

Difficulties in changes due to dependencies in tight coupling

Page 14: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Concept of ”Services”Independent of each other and can be combined in a loosely-coupled mannerTypically less granular than general “components”, to be meaningful for supporting human activitiesPublished with self-describing information on their functionality and quality aspectsAccessed via internet standards (HTTP/XML)

Aiming at constructing a system in an agile and flexible way by means of combining services available on the network

SOC'12 @ Sokendai 14Fuyuki Ishikawa

RE: Service-Oriented Computing: Summary

Page 15: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

SOC'12 @ Sokendai 15Fuyuki Ishikawa

Service-Oriented Computing: Visions

Loosely-coupled systems by combining services meaningful for human activities!

High interoperability by following the Webstandards!

“Smarter” support by machines with machine-accessible services!

Software Engineering

Distributed Computing

Web/AI

??

Page 16: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Lightweight techniquesNon-XML techniques (e.g., JSON)No machine-accessible self-description

behind JavaScript (Ajax) web applications and smartphone applicationsCloud computing

Computational resources provided as servicesA variety of aspects actually discussed

Scalable, pay-per-use resource use (next slides)Everything put on Internet (Gmail, Evernote, …)Big data processing (MapReduce/Hadoop)

SOC'12 @ Sokendai 16Fuyuki Ishikawa

Recent Trends

Page 17: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

The NIST Definition of Cloud Computing(Sep 2011)

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models.

SOC'12 @ Sokendai 17Fuyuki Ishikawa

Cloud Computing: Definition by NIST (1)

Page 18: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Essential characteristicsOn-demand self-serviceBroad network accessResource poolingRapid elasticityMeasured Service

Service modelsSaaS, PaaS, IaaS

Deployment modelsPrivate, Community, Public, Hybrid

SOC'12 @ Sokendai 18Fuyuki Ishikawa

Cloud Computing: Definition by NIST (2)

Page 19: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

SaaS (Software-as-a-Service)Package softwareGmail, Salesforce CRM, Microsoft Online Services, etc.

PaaS (Platform-as-a-Service)Platform often including automated management middleware for specific programming languagesForce.com, Google App Engine, Windows Azure, etc.

IaaS (Infrastructure-as-a-Service)Infrastructure including virtual machines and storages for free use casesAmazon EC2, Nifty Cloud, etc.

SOC'12 @ Sokendai 19Fuyuki Ishikawa

Cloud Computing: Service Classification

Page 20: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Animoto: made its movie creation/browsing service open to Facebook users (2008)

Amazon EC2: 4,000 servers (originally 50) to handle 250 thousands users (originally 25 thousands) after 3 days

White House: prepared a questionnaire web site (2009)

Google App Engine: 100 thousands questions and 3.6 million answers in 2 days (max 600 query/second)

Twitter, Nasdaq, …Scaling

SOC'12 @ Sokendai 20Fuyuki Ishikawa

Cloud Computing: Applications (1)

Page 21: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

New York Times: converted newspaper images of 100 years (several TBs) into PDF (2007)

Amazon EC2: 100 virtual machines for 24 hours (about $1,250)

Japanese ministry/city: prepared systems for emergent and temporal requirements (e.g., 定額給付金) (2009)

Force.com

Quick start up and withdraw

SOC'12 @ Sokendai 21Fuyuki Ishikawa

Cloud Computing: Applications (2)

Page 22: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 22Fuyuki Ishikawa

TOC

Page 23: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

1. Understand principles, fundamental theories and techniques on distributed computing and XML, as foundations for web services and clouds.

2. Understand basic concepts, realization techniques, and applications of web services and clouds, and discuss advantages and disadvantages of different approaches.

SOC'12 @ Sokendai 23Fuyuki Ishikawa

Aim of the Course

Page 24: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

This course is somewhat “omnibus”:an overview of the recent visionary area together with underlying foundationsYou should have solid knowledge on scientific & engineering principles if you do research or development actually

Distributed computingSoftware architecture and engineeringSemantic web and knowledge processingetc.

SOC'12 @ Sokendai 24Fuyuki Ishikawa

Notes

Page 25: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 25Fuyuki Ishikawa

TOC

Page 26: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

1 Introduction

2 Basics: Distributed Objects

3 Basics: XML

4 Web Services: Foundations

5 Web Services: Composition

6 Web Services: Implementation

7 Related Topics (1): Reliability

SOC'12 @ Sokendai 26Fuyuki Ishikawa

Course Plan

Page 27: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

8 Related Topics (2): Security

9 Related Topics (3): Engineering

10 Related Topics (4): Semantic Web

11 Cloud Computing (1): Overview

12 Cloud Computing (2): Experience

13 Discussion and Summary

14 Students’ Presentation

SOC'12 @ Sokendai 27Fuyuki Ishikawa

Course Plan

Page 28: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 28Fuyuki Ishikawa

Course Plan (possibly to be updated)

Page 29: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Scoring: attendance + reportFor attendance: 5 points for 1 attendanceAnyway please tell me when you are absent

For conference presentationsFor health or other issues

For report (20 min. presentation): 30 pointsOn a research paper or a specification/reportOn an implementation of service-based application

SOC'12 @ Sokendai 29Fuyuki Ishikawa

Evaluation Criteria

Page 30: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Introduction to Service-Oriented ComputingDefinitionsHistorical Contexts

SyllabusAim and ApproachScheduleEvaluation CriteriaReferences

SOC'12 @ Sokendai 30Fuyuki Ishikawa

TOC

Page 31: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Webサービスコンピューティング青木 利晴監修・電子情報通信学会編,2005Brief introduction in Japanese

Web Services Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-BPEL, WS-Reliable Messaging, and MoreWebサービスプラットフォームアーキテクチャ

S. Weerawarana et al., Prentice Hall, 2005丸山宏ら訳,エスアイビーアクセス,2006Comprehensive overview of related standards

SOC'12 @ Sokendai 31Fuyuki Ishikawa

Books

Page 32: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Semantic Web Services: Concepts, Technologies, and Applications

R. Studer et al., Springer, 2007Introduction to semantic web services including visionary scenarios and state-of-the-art for different aspects

Service-Oriented Computing: Semantics, Processes, Agents

M. P. Singhs et al., Wiley, 2005Introduction to service-oriented computing, from viewpoints of multi-agent systems

SOC'12 @ Sokendai 32Fuyuki Ishikawa

Books

Page 33: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

SOA大全 サービス指向アーキテクチャ導入・設計・構築の指針

Dirk Krafzig et al., Prentice Hall, 2004山下眞澄 監訳,日経BP社,2005Comprehensive description of SOA for enterprise

クラウド大全 第2版 サービス詳細から基盤技術まで

日経BP社出版局(編集),日経BP社,2010Japanese introduction to cloud computing

SOC'12 @ Sokendai 33Fuyuki Ishikawa

Books

Page 34: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

IEEE Transaction on Services Computinghttp://www.computer.org/portal/web/tsc

ConferencesICSOC, IEEEICWS/SCC: general service-oriented computingSOCC, IEEE Cloud: general cloud computingBPM: business process managementIn any conferences on fundamental techniques (AAAI, ICSE, CAiSE, etc.)

SOC'12 @ Sokendai 34Fuyuki Ishikawa

State-of-the-Art of Research

Page 35: Lecture Course Service-Oriented Computing 1. …research.nii.ac.jp/.../work/Soken-SOC/SOC12-01-introduction.pdfService-Oriented Computing 1. Introduction ... Everything put on Internet

Apr 18Basics: Distributed Objects

Object-Oriented Programming (Brief Review)Requirements for Infrastructure of Distributed ObjectsCORBA

SOC'12 @ Sokendai 35Fuyuki Ishikawa

Next