cross cutting and advanced topics in distributed computing through service-oriented architecture and...

14
Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing, Informatics, and Decision Systems Engineering Arizona State University, Tempe, AZ 85287-8809, U.S.A. 4 th NSF/TCPP Workshop on Parallel and Distributed Computing Education (EduPar-14) In conjunction with 28th IEEE International Parallel & Distributed Processing Symposium PHOENIX (ARIZONA) Monday May 19, 2014 1

Upload: derek-harrison

Post on 22-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

1

Cross Cutting and Advanced Topics in Distributed Computing through

Service-Oriented Architecture and Software Integration

Yinong ChenSchool of Computing, Informatics, and Decision Systems Engineering

Arizona State University, Tempe, AZ 85287-8809, U.S.A.

4th NSF/TCPP Workshop on Parallel and Distributed Computing Education (EduPar-14) In conjunction with 28th IEEE International Parallel & Distributed Processing Symposium

PHOENIX (ARIZONA) MondayMay 19, 2014

Page 2: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

2

Three Courses Covered in Report

Course Number

Course Name First offered

Report Semester

Enrollment

CSE 101/ FSE 100

Introduction to Engineering

Fall 2006 Fall 2013 480

CSE 445/ CSE 598

Distributed Software Development

Fall 2006 Fall 2013 130

CSE 446/ CSE 598

Software Integration and Engineering

Spring 2012

Spring 2014

70

Page 3: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

3

CSE101 / FSE100: Introduction to Engineering• Learn engineering design process through group activities• Use robot construction and programming to exercise design

and computing concept• Use service-oriented and event-driven approaches to

comprehend parallel computing principles• Started as a Computer System Engineering required course in

2006; Computer Science start to require the course in 2008; Become an required engineering first course in 2011.

• Start to be adopted overseas, universities in China and Vietnam started to offer the course in 2012

Page 4: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

4

CSE101 / FSE100: Introduction to Engineering

DistanceMeasured < 400

TurnedRight

TurnedLeft

rightFinished

Resume180 DistanceMeasured

< rightDistance

TurningRight

TurningLeft

leftFinished

DistanceMeasured>= rightDistance

Resum180Finished

Start

RightDistance DistanceMeasured

Forward

Intel ArchitectureCornell Cup Robot

2013

Web AppsPhone Apps

Computer ScienceConcepts

Visual Programming

Robotic Experiments

http://venus.eas.asu.edu/WSRepository/eRobotic/

Algorithm and efficiency

Computer simulation

Web programming

Communication between Web robot and physical robot

Finite State Machine

http://venus.eas.asu.edu/WSRepository/eRobotic/

Page 5: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

Intel-Based Robot as a Service (RaaS)Cornell Cup: http://venus.eas.asu.edu/WSRepository/eRobotic/video2013.wmv

Page 6: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

6

CSE 445/598Distributed Software Development

• In service-oriented distributed systems, server applications may be invoked by multiple clients

• Multithreading with parallel computing and data synchronization using Intel’s Thread Building Blocks (TBB) is discussed

• Performance analysis and case study

Page 7: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

Inputsize

Time measured in milliseconds

Results on Intel 32-Core MTL

7

Speedup Efficiency

Page 8: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

8

CSE 445/598Distributed Software Development

Cross cutting and advanced topicsTopics Bloom

#Learning Outcomes

Cloud K Know that both are shared distributed resources - cloud is distinguished by on-demand, virtualized, service-oriented software and hardware resources

P2P K Server and client roles of nodes with distributed data

Security in Distri buted System

K Know that distributed systems are more vulnerable to privacy and security threats; distributed attacks modes; inherent tension between privacy and security

Web services A Be able to develop Web services and service clients to invoke services

Multithreading

C, A Resource sharing, synchronization, and performance impact

Page 9: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

9

CSE 445/598 Distributed Software DevelopmentSample Project

AddUserInfo

Checkcredit score

Create account

Issue User ID

XML file account.xml

Approval?

Strong?Match?Yes

Yes

addPwd

Credit score Web service

Check existence

NoNo

No

Yes

User ID

PasswordRetypePassword

Subscribe

Name

SSN

Address

DoB

Create Password

You do not qualify

User ID

Password

Login

Client Provider

Page 10: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

10

CSE446/598 Software Integration and EngineeringObjectives and Outcomes

• Distributed Application Architecture• Advanced Architecture-Driven Application

Development, workflow-based development• Enterprise Software Development and Message-

based Integration• Event-Driven Architecture and Applications• Interfacing Service-Oriented Software with

Databases and Big Data analysis• Ontology and Semantic Web• Cloud Computing and Software as a Service

Page 11: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

CSE446/598: Infrastructure Supporting Big Data

Share nothing

DataCollection

DataAnalytics

Data & Facility

Management

Data-AppIntegrationVariety

VelocityVolume

Variability Veracity

VolatileValue

SuperComputer

Multi-processors

Shared-diskclusters

Distributed / Networked

Shared-nothingcluster

Multi-cores

SimpleComputer

Share Everything

Share cache, memory, and disk

Share memory, and disk

Share diskScale up

Scale out

Infrastructure and Facilities

11

Characteristics

Page 12: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

12

Hadoop and Web Service Project

Mapper

Job Tracker

Name Node

Master Slave

Map

Red

uce

Laye

rH

DF

S L

ayer

Reducer Mapper Reducer

Tomcat

Web service

Data sheet

Result sheet

Final result

Data sheet

Result sheet

Final result

Page 13: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

13

ASU REPOSITORY OF SERVICES AND APPLICATIONS

• Private Services: Many corporations, e.g., IBM and SAP, keep their repositories private for internal use only. Not be available for education purposes

• Paid Services: Many corporations, for example, Amazon Web Services, offer commercial services and subscription and payments are required.

• ASU repository offer free services for education purposes

http://venus.eas.asu.edu/WSRepository/repository.html

Page 14: Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,

14

Textbook for CSE101, CSE445 and CSE446 Part I Distributed Service-Oriented Software Development and Web Data ManagementChapter 1Introduction to Distributed Service-Oriented ComputingChapter 2Distributed Computing with MultithreadingChapter 3Essentials in Service-Oriented Software DevelopmentChapter 4XML Data Representation and ProcessingChapter 5Web Application and State ManagementChapter 6Dependability of Service-Oriented SoftwarePart II Advanced Service-Oriented Computing and System IntegrationChapter 7Advanced Services and Architecture-Driven Application DevelopmentChapter 8 Enterprise Software Development and IntegrationChapter 9 Internet of Things and Robot as a ServiceChapter 10 Interfacing Service-Oriented Software with DatabasesChapter 11 Big Data and Ontology Systems Chapter 12 Service-Oriented Application ArchitectureChapter 13 A Mini Walkthrough of Service-Oriented Software DevelopmentChapter 14 Cloud Computing and Software as a ServiceAppendixService-Oriented Robotics Software Development

Service-Oriented Computing and Web Software Integration, 4th ed. in 2014