Middleware and Web Services Lecture 1: Motivation and Course Overview

Size: px
Start display at page:

Download "Middleware and Web Services Lecture 1: Motivation and Course Overview"

Transcription

1 Middleware and Web Services Lecture 1: Motivation and Course Overview doc. Ing. Tomáš Vitvar, Czech Technical University in Prague Faculty of Information Technologies Software and Web Engineering Modified: Sat Aug , 23:22:53 Humla v0.2.2 Hellos Tomáš Vitvar Technical Architect at Oracle SOA and Oracle Integration Architectures Researcher, developer, software architect Have worked in Austria, Ireland, Germany, Czech rep. Universities and companies, ProgrammableWeb member of W3C Advisory Committee EU research and development projects, evaluator Jaroslav Kuchař CTU FIT research assistant, Ph.D. at CTU FEL Web services, data mining, analytics, Web technologies Milan Dojchinovski Ph.D. at CTU FIT, web services Lecture 1: Motivation and Course Overview, CTU Winter Semester 2

2 Overview Web Engineering Curriculla Course at a Glance Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 3 Web Engineering Curricula Web engineering Part of Software and Web Engineering Curriculum Started winter 2010 (accreditation in 04/2010, CZ, EN) Designed from scratch, no "backward-compatibility problem" Key people Well-established researchers, community work coming from ČVUT, MFF UK, VŠE, intl. experience doc. Ing. Tomáš Vitvar, Ph.D. Web services, Web 2.0 doc. RNDr. Tomáš Skopal, Ph.D. Media, Search prof. RNDr. Peter Vojtáš, CSc. Semantic Web doc. Ing. Vojtěch Svátek, Ph.D. Data Mining, Semantic Web Lecture 1: Motivation and Course Overview, CTU Winter Semester 4

3 Bird's View Web 2.0 engineering is... far beyond PHP and HTML! Lecture 1: Motivation and Course Overview, CTU Winter Semester 5 Overview Web Engineering Curriculla Course at a Glance Motivation and Scope Requirements and Organization Technologies/Development Platform Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 6

4 Motivation in Brief Systems rely on complex infrastructures A lot of data and many processes, internal and external As people communicate, underlying systems must too But: variety of data formants, technologies, protocols variety of architectures, client-server, peer-to-peer,... Good performance frequent changes in applications' loads, peek hours scalability effective load balancing low costs cheaper to outsource? Rapid changes in applications' functionality modular development reuse of application functionality Lecture 1: Motivation and Course Overview, CTU Winter Semester 7 Spaghetti Architecture Need for the integration One-to-one integration Hard to maintain, vendor interoperability problem Lecture 1: Motivation and Course Overview, CTU Winter Semester 8

5 SOA Architecture Integration organized Enterprise Service Bus, to be used wisely Lecture 1: Motivation and Course Overview, CTU Winter Semester 9 REST Architecture Let's simplify things... unfirom interface, statelessness, hypermedia and HATEOAS,......and use what has proven to be successfull at large HTTP REST = Representational State Transfer Lecture 1: Motivation and Course Overview, CTU Winter Semester 10

6 Good Performance Traditional Solution Traditional hardware model Up-front hardware investments Hardware not optimally utilized Lecture 1: Motivation and Course Overview, CTU Winter Semester 11 Good Performance Cloud Solution Cloud computing model No up-front hardware investments Hardware optimally utilized Lecture 1: Motivation and Course Overview, CTU Winter Semester 12

7 Scope Architectural and conceptual basis Integrating systems, Enterprise Application Integration Service Oriented Architecture, Service Concepts, Middleware Web Service technologies Web architecture HTTP, URI, XML Representational State Transfer Web Service Description Language, SOAP Middleware and Cloud Computing IaaS, PaaS, SaaS Enterprise Service Bus Examples/tutorials Google App Engine / Amazon EC2 Lecture 1: Motivation and Course Overview, CTU Winter Semester 13 Big Picture Architecture services, middleware, protocols, cloud computing Lecture 1: Motivation and Course Overview, CTU Winter Semester 14

8 Overview Web Engineering Curriculla Course at a Glance Motivation and Scope Requirements and Organization Technologies/Development Platform Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 15 General Requirements Object-oriented programming Principles class, object, inheritance, encapsulation,... They are roots for service principles Java-like syntax All code examples will be in Java or JavaScript (server-side) See FAQ for other details related to Java language Web Architecture Basic notions of HTML, XML, XPath, HTTP, URI Will talk about quite some details of HTTP and URI Other Regular expressions, basics of Linux Graph algorithms Lecture 1: Motivation and Course Overview, CTU Winter Semester 16

9 Organization of Lectures 13 Lectures Czech: Mo 7:15-8:45, T9:155 English: TBA Plan Motivation and Course Overview (html) Introduction to Architectures (html) Application Server (html) Web Service Architecture (html) Web Service Usage (html) Representational State Transfer (html) Uniform Interface (html) HATEOAS, Scalability and Description (html) SOAP and WSDL (html) Oracle SOA Suite 11g (TBD:html) Cloud Computing Concepts (html) Amazon EC2 (TBD:html) Reserve, Exam Lecture 1: Motivation and Course Overview, CTU Winter Semester 17 Organization of Labs Work in teams of 3 people (maximum!) Labs every second week Number of sessions: 6-7, 5 checkpoints: 1. Requirements analysis, basic design of data, process models, technology set-up 2. Application and client implementation 3. Web Services design, implementation, deployment, testing 4. Web Services integration 5. Cloud scalability All textual/design diagrams results in the wiki EDUX: All (nicely commented!) code results in the svn FIT Project Site: Lecture 1: Motivation and Course Overview, CTU Winter Semester 18

10 Solution Architecture Lecture 1: Motivation and Course Overview, CTU Winter Semester 19 Methodology for Lab Work Iterative development of a "toy" application assignment every second week development cycle every second week work in teams Results: seminar project, 5 tasks documentation (in the wiki) implementation (code in the svn) Tasks 1. Design requirements analysis UML diagrams design (data, processes) Web services design functionality you will expose Lecture 1: Motivation and Course Overview, CTU Winter Semester 20

11 Methodology for Lab Work (cont.) Tasks 2. Implementation server-side technology of your choice (pref. Java) some representations of your resources, XML/JSON client-side technology, HTML very simple! 3. Integration expose services to be consumed by others at least 1 read and 1 write consume services exposed by others at least 1 read and 1 write 4. Testing make sure everything works as it should It is iterative development, not a waterfall process Lecture 1: Motivation and Course Overview, CTU Winter Semester 21 Overview Web Engineering Curriculla Course at a Glance Motivation and Scope Requirements and Organization Technologies/Development Platform Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 22

12 Development Platforms Google App Engine PaaS development platform from Google Java and Python dev environments implements Java Servlet environment for Java Provides convenient plugins for Eclipse and Netbeans To use it: Sign-up at One member creates the app and invites others to join We will refer to it when talking about PaaS See FAQ for details Node.js /Amazon EC2 If you want to try something cutting-edge Note that we show some examples in JavaScript for Node.js Lecture 1: Motivation and Course Overview, CTU Winter Semester 23 Amazon EC2 Free Usage Tier Free usage of EC2 resources up to certain limits but good to try Amazon out! Lecture 1: Motivation and Course Overview, CTU Winter Semester 24

13 Overview Web Engineering Curriculla Course at a Glance Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 25 Assessment Labs Presence is mandatory You can miss up to 1 lab without sending regrets Every task gives you a max. of 6 points 6 \cdot 5=30 points Activity in labs gives you a max. of 10 points Total maximal points: p_p=40, to pass: p_p \geq 20 Final exam Mandatory written test: 3 exercises, ~1 hour each gives you a max. of 20 points, the total p_t = 60 points F2F discussion: only if p_t \geq 30 Final score: p_p + p_t = 100 maximum points discussion may adjust your points freely Lecture 1: Motivation and Course Overview, CTU Winter Semester 26

14 Final Marks Mark Points In words A výborně B velmi dobře C dobře D uspokojivě E dostatečně F 49 0 nedostatečně Source: Everything good and bad will count practicals, coding, (pro-)activity, passiveness, hacking (bad and good), lectures, exam, cheating,... Lecture 1: Motivation and Course Overview, CTU Winter Semester 27 Overview Web Engineering Curriculla Course at a Glance Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 28

15 Communication Language Text: English (slides, tweets, posts, instructions, etc.) choose English/Czech for your contributions to the wiki Voice: Czech and English (English version of the course) Channels technology news related to web engineering courses hashtags #w2e_mdwann for MDW-related organizational announcements Direct you can always contact me directly at Lecture 1: Motivation and Course Overview, CTU Winter Semester 29 Overview of Resources Overview of resources Item URL Feed Course page - EDUX - Lab project/svn TBA - Bookshelf RSS References - TBA News/announcements TBA Books from the MDW bookshelf Bill Burke: RESTful Java with JAX-RS James Murty: Programming Amazon Web Services: S3, EC2, SQS, FPS, and SimpleDB Dan Sanderson: Programming Google App Engine Thomas Erl: Service-oriented architecture: concepts, technology, and design Lecture 1: Motivation and Course Overview, CTU Winter Semester 30

16 About Slides Humla Open Source HTML5 Presentation Environment every slide has a unique URL all figures linked with Google drawings possible to format and print in PDF running local, with back-end NodeJS support, and offline Fork it at Humla github repo Keys d e default browsing mode slideshow mode (automatically scales to fullscreen) grid (overview) mode print mode, 2 slides per page slide left slide right debug mode toggle last error messages on/off Lecture 1: Motivation and Course Overview, CTU Winter Semester 31 Code Examples Example code in various languages Java, JavaScript (server-side), xml, command line (bash) and plain text (e.g., BNF-like syntax, regular expressions, etc.) Code colors different colors of the listings' gutters based on the language public,string,test(),{,,,,//,this,is,a,java,code } function,test(),{,,,,//,this,is,a,javascript,code } 1 <test><!aa,this,is,a,xml,code,aa></test> 1 echo,"this,is,a,bash,test" Lecture 1: Motivation and Course Overview, CTU Winter Semester 32

17 Github Repo Online access to selected source code There is a MDW course mdwaexamples Such code will be marked with an icon Example code Click the toolbar to access the code in the repo //,check,if,there,exsits,a,taxonomy,element,for,the,goal,category if,(gte,!==,null),{,,,,//,loop,through,all,service,descriptions,in,the,directory,,,,for,(var,i,=,0;,i,<,directory.length;,i++),,,,,,,,,//,find,taxonomy,element,for,the,service,category,,,,,,,,//,in,the,subtree,defined,by,gte,,,,,,,,if,(findtaxonomyelement(directory[i].category_name,,gte),!==,null),,,,,,,,,,,,//,add,the,service,description,to,the,result,,,,,,,,,,,,result.push(directory[i]); } Lecture 1: Motivation and Course Overview, CTU Winter Semester 33 Use and Alter the Code Clone the mdwaexamples github repo $,git,clone,git://github.com/tomvit/mdwaexamples.git Run it directly in Cloud9 IDE Cloud computing "Development as a Service" Create an account and clone the github repo or host your own C9 IDE Lecture 1: Motivation and Course Overview, CTU Winter Semester 34

18 Tasks from Lectures Will give you tasks/excercices for home They will appear in slides as follows Tasks Test some implementation to see how it works Alter existing example code to meet some requirement Think about changes in some algorithm And so on... They are optional but for your good Lecture 1: Motivation and Course Overview, CTU Winter Semester 35 Overview Web Engineering Curriculla Course at a Glance Assessment Communication and Resources FAQ Lecture 1: Motivation and Course Overview, CTU Winter Semester 36

19 Frequently Asked Questions Technology 1. Q: Web services are independent on the implementation environmnet... Why do you require us to use specific technologies? A: It's not a requirement but we recommend you should use a cuttingedge technology such as GAE or Node.js. All examples will be in a Java-like syntax. 2. Q: We have our own server, can we use it? A: Yes you can, the best if you can install Node.js and C9 IDE on it. Remeber though that by using our recommended technologies you can better grasp cloud conpcepts we will be talking about. Czech English 3. Q: Why English? A: English is the Web's and services' mother tounge. 4. Q: Is there a Czech translation somewhere? A: No. Lecture 1: Motivation and Course Overview, CTU Winter Semester 37 Frequently Asked Questions (cont.) Organization of work 5. Q: What if we do not find a team for the integration? A: It is a must, start planning early! Perhaps you need to adjust your requirements. Lecture 1: Motivation and Course Overview, CTU Winter Semester 38

20

Web 2.0 Lecture 1: Motivation and Course Overview

Web 2.0 Lecture 1: Motivation and Course Overview Web 2.0 Lecture 1: Motivation and Course Overview doc. Ing. Tomáš Vitvar, Ph.D. tomas@vitvar.com @TomasVitvar http://www.vitvar.com Leopold-Franzens Universität Innsbruck and Czech Technical University

More information

Middleware and Web Services Lecture 2: Introduction to Architectures

Middleware and Web Services Lecture 2: Introduction to Architectures Middleware and Web Services Lecture 2: Introduction to Architectures doc. Ing. Tomáš Vitvar, Ph.D. tomas@vitvar.com @TomasVitvar http://vitvar.com Czech Technical University in Prague Faculty of Information

More information

Middleware and Web Services Lecture 3: Application Server

Middleware and Web Services Lecture 3: Application Server Middleware and Web Services Lecture : Application Server doc. Ing. Tomáš Vitvar, Ph.D. tomas@vitvar.com @TomasVitvar http://vitvar.com Czech Technical University in Prague Faculty of Information Technologies

More information

CSC 443: Web Programming

CSC 443: Web Programming 1 CSC 443: Web Programming Haidar Harmanani Department of Computer Science and Mathematics Lebanese American University Byblos, 1401 2010 Lebanon Today 2 Course information Course Objectives A Tiny assignment

More information

Javaentwicklung in der Oracle Cloud

Javaentwicklung in der Oracle Cloud Javaentwicklung in der Oracle Cloud Sören Halter Principal Sales Consultant 2016-11-17 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information

More information

Distributed and Cloud Computing

Distributed and Cloud Computing Jiří Kašpar, Pavel Tvrdík (ČVUT FIT) Distributed and Cloud Computing MI-POA, 2011, Lecture 12 1/28 Distributed and Cloud Computing Ing. Jiří Kašpar prof. Ing. Pavel Tvrdík CSc. Department of Computer Systems

More information

Web Engineering. Introduction. Husni

Web Engineering. Introduction. Husni Web Engineering Introduction Husni Husni@trunojoyo.ac.id Outline What is Web Engineering? Evolution of the Web Challenges of Web Engineering In the early days of the Web, we built systems using informality,

More information

Lesson 14 SOA with REST (Part I)

Lesson 14 SOA with REST (Part I) Lesson 14 SOA with REST (Part I) Service Oriented Architectures Security Module 3 - Resource-oriented services Unit 1 REST Ernesto Damiani Università di Milano Web Sites (1992) WS-* Web Services (2000)

More information

Copyright 2014 Blue Net Corporation. All rights reserved

Copyright 2014 Blue Net Corporation. All rights reserved a) Abstract: REST is a framework built on the principle of today's World Wide Web. Yes it uses the principles of WWW in way it is a challenge to lay down a new architecture that is already widely deployed

More information

02267: Software Development of Web Services

02267: Software Development of Web Services 02267: Software Development of Web Services Week 1 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2016 1 Contents Why Services?

More information

32549/31242 Advanced Internet Programming

32549/31242 Advanced Internet Programming 32549/31242 Advanced Internet Programming Administrivia Spring 2011 Copyright UTS 2006 Admin Admin-1 Topics Introduction Contacts Objectives Pre-requisite knowledge Assessment Text & References Topics

More information

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan EECS 282 Information Systems Design and Programming Atul Prakash Professor, Computer Science and Engineering University of Michigan 1 What is the Course About? A second programming course - but different

More information

Introduction to data centers

Introduction to data centers Introduction to data centers Paolo Giaccone Notes for the class on Switching technologies for data centers Politecnico di Torino December 2017 Cloud computing Section 1 Cloud computing Giaccone (Politecnico

More information

Session 12. RESTful Services. Lecture Objectives

Session 12. RESTful Services. Lecture Objectives Session 12 RESTful Services 1 Lecture Objectives Understand the fundamental concepts of Web services Become familiar with JAX-RS annotations Be able to build a simple Web service 2 10/21/2018 1 Reading

More information

Cloud Computing 4/17/2016. Outline. Cloud Computing. Centralized versus Distributed Computing Some people argue that Cloud Computing. Cloud Computing.

Cloud Computing 4/17/2016. Outline. Cloud Computing. Centralized versus Distributed Computing Some people argue that Cloud Computing. Cloud Computing. Cloud Computing By: Muhammad Naseem Assistant Professor Department of Computer Engineering, Sir Syed University of Engineering & Technology, Web: http://sites.google.com/site/muhammadnaseem105 Email: mnaseem105@yahoo.com

More information

The COS 333 Project. Robert M. Dondero, Ph.D. Princeton University

The COS 333 Project. Robert M. Dondero, Ph.D. Princeton University The COS 333 Project Robert M. Dondero, Ph.D. Princeton University 1 Overview A simulation of reality In groups of 3-5 people... Build a substantial three tier software system 2 Three-Tier Systems "Three

More information

Java in der Cloud Aktuelle Möglichkeiten und Entwicklungen

Java in der Cloud Aktuelle Möglichkeiten und Entwicklungen Java in der Cloud Aktuelle Möglichkeiten und Entwicklungen Eberhard Wolff Architecture and Technology Manager adesso AG Twitter: @ewolff Blog: http://ewolff.com About me! Eberhard Wolff! Architecture &

More information

Cloud platforms. T Mobile Systems Programming

Cloud platforms. T Mobile Systems Programming Cloud platforms T-110.5130 Mobile Systems Programming Agenda 1. Motivation 2. Different types of cloud platforms 3. Popular cloud services 4. Open-source cloud 5. Cloud on this course 6. Mobile Edge Computing

More information

Topics on Web Services COMP6017

Topics on Web Services COMP6017 Topics on Web Services COMP6017 Dr Nicholas Gibbins nmg@ecs.soton.ac.uk 2013-2014 Module Aims Introduce you to service oriented architectures Introduce you to both traditional and RESTful Web Services

More information

Lecture 09: VMs and VCS head in the clouds

Lecture 09: VMs and VCS head in the clouds Lecture 09: VMs and VCS head in the Hands-on Unix system administration DeCal 2012-10-29 1 / 20 Projects groups of four people submit one form per group with OCF usernames, proposed project ideas, and

More information

WWW, REST, and Web Services

WWW, REST, and Web Services WWW, REST, and Web Services Instructor: Yongjie Zheng Aprile 18, 2017 CS 5553: Software Architecture and Design World Wide Web (WWW) What is the Web? What challenges does the Web have to address? 2 What

More information

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336 CSE 336 Introduction to Programming for Electronic Commerce Why You Need CSE336 Concepts like bits and bytes, domain names, ISPs, IPAs, RPCs, P2P protocols, infinite loops, and cloud computing are strictly

More information

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan EECS 282 Information Systems Design and Programming Atul Prakash Professor, Computer Science and Engineering University of Michigan 1 What is the Course About? A second programming course - but different

More information

Microservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Microservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web Micros SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How is a being a micro different than simply being ful? What are the advantages of a micro backend architecture over a

More information

SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE

SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE Tomas Cerny, Software Engineering, FEE, CTU in Prague, 2014 1 ARCHITECTURES SW Architectures usually complex Often we reduce the abstraction

More information

Edge Foundational Training

Edge Foundational Training Edge Foundational Training Give your team the tools to get up and running with Edge Edge Foundational Training provides the tools and information needed to start using Edge whether in the cloud or on premises.

More information

Serverless and APIs: Rethinking Curriculum in Higher Education. Munir Mandviwalla and Jeremy Shafer Temple University

Serverless and APIs: Rethinking Curriculum in Higher Education. Munir Mandviwalla and Jeremy Shafer Temple University Serverless and APIs: Rethinking Curriculum in Higher Education Munir Mandviwalla and Jeremy Shafer Temple University Serverless Serverless computing refers to the concept of building and running applications

More information

Software Systems Architecture

Software Systems Architecture Course overview Theory Archetypes, architectural styles Models, structures and views Viewpoints Quality characteristics Application architecture Domain-specific architecture... Process Waterfall/iterative

More information

Cloud Computing Lecture 4

Cloud Computing Lecture 4 Cloud Computing Lecture 4 1/17/2012 What is Hypervisor in Cloud Computing and its types? The hypervisor is a virtual machine monitor (VMM) that manages resources for virtual machines. The name hypervisor

More information

Develop Mobile Front Ends Using Mobile Application Framework A - 2

Develop Mobile Front Ends Using Mobile Application Framework A - 2 Develop Mobile Front Ends Using Mobile Application Framework A - 2 Develop Mobile Front Ends Using Mobile Application Framework A - 3 Develop Mobile Front Ends Using Mobile Application Framework A - 4

More information

DOC // JAVA TOMCAT WEB SERVICES TUTORIAL EBOOK

DOC // JAVA TOMCAT WEB SERVICES TUTORIAL EBOOK 26 April, 2018 DOC // JAVA TOMCAT WEB SERVICES TUTORIAL EBOOK Document Filetype: PDF 343.68 KB 0 DOC // JAVA TOMCAT WEB SERVICES TUTORIAL EBOOK This tutorial shows you to create and deploy a simple standalone

More information

02267: Software Development of Web Services

02267: Software Development of Web Services 02267: Software Development of Web Services Week 1 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2013 Contents Course Introduction

More information

Cloud platforms T Mobile Systems Programming

Cloud platforms T Mobile Systems Programming Cloud platforms T-110.5130 Mobile Systems Programming Agenda 1. Motivation 2. Different types of cloud platforms 3. Popular cloud services 4. Open-source cloud 5. Cloud on this course 6. Some useful tools

More information

Multitiered Architectures & Cloud Services. Benoît Garbinato

Multitiered Architectures & Cloud Services. Benoît Garbinato Multitiered Architectures & Cloud Services Benoît Garbinato Learning objectives Learn about enterprise computing Learn about multitiered architectures Learn about Java Enterprise Services Learn about cloud

More information

Descriptions for CIS Classes (Fall 2017)

Descriptions for CIS Classes (Fall 2017) Descriptions for CIS Classes (Fall 2017) Major Core Courses 1. CIS 1015. INTRODUCTION TO COMPUTER INFORMATION SYSTEMS. (3-3-0). This course provides students an introductory overview to basic computer

More information

Demonstrate web development using appropriate HTML markup tags, elements and attributes.

Demonstrate web development using appropriate HTML markup tags, elements and attributes. Long Title: HTML & Web Design Module Code: H6HTM Credits: 10 NFQ Level: LEVEL 6 Field of Study: Software and applications development and analysis Module Delivered in no programmes Module Coordinator:

More information

Cloud Computing. Technologies and Types

Cloud Computing. Technologies and Types Cloud Computing Cloud Computing Technologies and Types Dell Zhang Birkbeck, University of London 2017/18 The Technological Underpinnings of Cloud Computing Data centres Virtualisation RESTful APIs Cloud

More information

Using Data Science to deliver Workforce & Labour Market Insights. Gary Gan Co-Founder, JobKred

Using Data Science to deliver Workforce & Labour Market Insights. Gary Gan Co-Founder, JobKred Using Data Science to deliver Workforce & Labour Market Insights Gary Gan Co-Founder, JobKred Collection of Data Online Sources Skills, Education, Experience AI-powered Career Development Platform Cloud-based

More information

Continuous delivery of Java applications. Marek Kratky Principal Sales Consultant Oracle Cloud Platform. May, 2016

Continuous delivery of Java applications. Marek Kratky Principal Sales Consultant Oracle Cloud Platform. May, 2016 Continuous delivery of Java applications using Oracle Cloud Platform Services Marek Kratky Principal Sales Consultant Oracle Cloud Platform May, 2016 Safe Harbor Statement The following is intended to

More information

Documentation and Deployment

Documentation and Deployment Documentation and Deployment CS 370 SE Practicum, Cengiz Günay (Some slides courtesy of Eugene Agichtein and the Internets) I know what I learned this semester: CS 370, Günay (Emory) Documentation and

More information

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications By, Janakiram MSV Executive Summary Application development has gone through a fundamental shift in the recent past.

More information

Architekturen für die Cloud

Architekturen für die Cloud Architekturen für die Cloud Eberhard Wolff Architecture & Technology Manager adesso AG 08.06.11 What is Cloud? National Institute for Standards and Technology (NIST) Definition On-demand self-service >

More information

Computer Science Capstone Design

Computer Science Capstone Design Computer Science Capstone Design Project Description Project Title: Integrated AWS Cloud Asset Status Dash Board Sponsor Information Scott Hancock Associate, Gore IT E-mail: shancock@wlgore.com Phone:

More information

Internet Technologies. Lab Introduction

Internet Technologies. Lab Introduction Internet Technologies Lab1 2011 Introduction Overview What will we do in the labs? Project Requirements Examples Evaluation Tools How to reach us? Cavada Dario: cavada@ectrlsolutions.com Mehdi Elahi: mehdi.elahi@stud-inf.unibz.it

More information

MASTERS COURSE IN FULL STACK WEB APPLICATION DEVELOPMENT W W W. W E B S T A C K A C A D E M Y. C O M

MASTERS COURSE IN FULL STACK WEB APPLICATION DEVELOPMENT W W W. W E B S T A C K A C A D E M Y. C O M MASTERS COURSE IN FULL STACK WEB APPLICATION DEVELOPMENT W W W. W E B S T A C K A C A D E M Y. C O M COURSE OBJECTIVES Enable participants to develop a complete web application from the scratch that includes

More information

Cloud Essentials for Architects using OpenStack

Cloud Essentials for Architects using OpenStack Cloud Essentials for Architects using OpenStack Course Overview Start Date 5th March 2015 Duration 2 Days Location Dublin Course Code SS15-13 Programme Overview Cloud Computing is gaining increasing attention

More information

COURSE DESCRIPTION. Time distribution

COURSE DESCRIPTION. Time distribution COURSE DESCRIPTION 1. Information about the programme 1.1 Institution of higher education Alexandru Ioan Cuza University of Iasi 1.2 Faculty Faculty of Economics and Business Administration 1.3 Department

More information

CS Final Exam Review Suggestions - Spring 2018

CS Final Exam Review Suggestions - Spring 2018 CS 328 - Final Exam Review Suggestions p. 1 CS 328 - Final Exam Review Suggestions - Spring 2018 last modified: 2018-05-03 Based on suggestions from Prof. Deb Pires from UCLA: Because of the research-supported

More information

San Jose State University College of Science Department of Computer Science CS185C, Introduction to NoSQL databases, Spring 2017

San Jose State University College of Science Department of Computer Science CS185C, Introduction to NoSQL databases, Spring 2017 San Jose State University College of Science Department of Computer Science CS185C, Introduction to NoSQL databases, Spring 2017 Course and Contact Information Instructor: Dr. Kim Office Location: MacQuarrie

More information

Migrating traditional Java EE applications to mobile

Migrating traditional Java EE applications to mobile Migrating traditional Java EE applications to mobile Serge Pagop Sr. Channel MW Solution Architect, Red Hat spagop@redhat.com Burr Sutter Product Management Director, Red Hat bsutter@redhat.com 2014-04-16

More information

COS 333: Advanced Programming Techniques

COS 333: Advanced Programming Techniques COS 333: Advanced Programming Techniques Robert M. Dondero, Ph.D. Princeton University Please pick up handouts at the back of the room 1 COS 333: Course Overview Copyright 2018 by Robert M. Dondero, Ph.D.

More information

UNDER THE HOOD. ROGER NUNN Principal Architect/EMEA Solution Manager 21/01/2015

UNDER THE HOOD. ROGER NUNN Principal Architect/EMEA Solution Manager 21/01/2015 UNDER THE HOOD 1 ROGER NUNN rnunn@redhat.com Principal Architect/EMEA Solution Manager 21/01/2015 TOPICS CONTEXT AVAILABILITY UNDER THE HOOD INTEGRATION 2 TOPICS CONTEXT AVAILABILITY UNDER THE HOOD INTEGRATION

More information

ITP 342 Mobile App Development. APIs

ITP 342 Mobile App Development. APIs ITP 342 Mobile App Development APIs API Application Programming Interface (API) A specification intended to be used as an interface by software components to communicate with each other An API is usually

More information

Topic 01. Software Engineering, Web Engineering, agile methodologies.

Topic 01. Software Engineering, Web Engineering, agile methodologies. Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,

More information

Cloud Computing and Service-Oriented Architectures

Cloud Computing and Service-Oriented Architectures Material and some slide content from: - Atif Kahn SERVICES COMPONENTS OBJECTS MODULES Cloud Computing and Service-Oriented Architectures Reid Holmes Lecture 20 - Tuesday November 23 2010. SOA Service-oriented

More information

Serverless in the Java ecosystem

Serverless in the Java ecosystem Serverless in the Java ecosystem Pratik Patel Pratik PateL CTO Triplingo Java Champion JavaScript Troublemaker Python Hacker Founder, PERL recovery group WHAT IS SERVERLESS? ARCHITECTURE ECOSYSTEM SERVERLESS

More information

AT&T Flow Designer. Current Environment

AT&T Flow Designer. Current Environment AT&T Flow Designer A Visual IoT Application Development environment that includes reusable components, drag & drop design capabilities, team collaboration, and cloud deployment that allows M2M/IoT developers

More information

Scaling DreamFactory

Scaling DreamFactory Scaling DreamFactory This white paper is designed to provide information to enterprise customers about how to scale a DreamFactory Instance. The sections below talk about horizontal, vertical, and cloud

More information

Properties of High Quality Software. CSE219, Computer Science III Stony Brook University

Properties of High Quality Software. CSE219, Computer Science III Stony Brook University Properties of High Quality Software CSE219, Computer Science III Stony Brook University http://www.cs.stonybrook.edu/~cse219 Software Engineering Basics Important Principles for creating a Software Solution:

More information

Programming Web Services in Java

Programming Web Services in Java Programming Web Services in Java Description Audience This course teaches students how to program Web Services in Java, including using SOAP, WSDL and UDDI. Developers and other people interested in learning

More information

COS 333: Advanced Programming Techniques. Copyright 2017 by Robert M. Dondero, Ph.D. Princeton University

COS 333: Advanced Programming Techniques. Copyright 2017 by Robert M. Dondero, Ph.D. Princeton University COS 333: Advanced Programming Techniques Copyright 2017 by Robert M. Dondero, Ph.D. Princeton University 1 Agenda Introductions Course Overview Resources Topics Assignments Project (briefly) Schedule (briefly)

More information

Real Life Web Development. Joseph Paul Cohen

Real Life Web Development. Joseph Paul Cohen Real Life Web Development Joseph Paul Cohen joecohen@cs.umb.edu Index 201 - The code 404 - How to run it? 500 - Your code is broken? 200 - Someone broke into your server? 400 - How are people using your

More information

ITP 140 Mobile Technologies. Mobile Topics

ITP 140 Mobile Technologies. Mobile Topics ITP 140 Mobile Technologies Mobile Topics Topics Analytics APIs RESTful Facebook Twitter Google Cloud Web Hosting 2 Reach We need users! The number of users who try our apps Retention The number of users

More information

Embedded Technosolutions

Embedded Technosolutions Hadoop Big Data An Important technology in IT Sector Hadoop - Big Data Oerie 90% of the worlds data was generated in the last few years. Due to the advent of new technologies, devices, and communication

More information

Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003

Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003 CS551: Advanced Software Engineering Service-Oriented Architecture Reference: Java Web Services Architecture James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, 2003 Yugi Lee STB #560D (816)

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

University At Buffalo COURSE OUTLINE. A. Course Title: CSE 487/587 Information Structures

University At Buffalo COURSE OUTLINE. A. Course Title: CSE 487/587 Information Structures University At Buffalo COURSE OUTLINE A. Course Title: CSE 487/587 Information Structures B. Curriculum: Computer Science and Engineering Offering Program: BS, BA, MS and Ph.D C. Catalog Description: 4

More information

Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk

Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk Learning Node.js For Mobile Application Development By Stefan Buttigieg;Christopher Svanefalk If searching for a book by Stefan Buttigieg;Christopher Svanefalk Learning Node.js for Mobile Application Development

More information

Oracle 10g: Build J2EE Applications

Oracle 10g: Build J2EE Applications Oracle University Contact Us: (09) 5494 1551 Oracle 10g: Build J2EE Applications Duration: 5 Days What you will learn Leading companies are tackling the complexity of their application and IT environments

More information

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE A Seminar report On Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE SUBMITTED TO: SUBMITTED BY: www.studymafia.org www.studymafia.org Acknowledgement

More information

AWS Lambda. 1.1 What is AWS Lambda?

AWS Lambda. 1.1 What is AWS Lambda? Objectives Key objectives of this chapter Lambda Functions Use cases The programming model Lambda blueprints AWS Lambda 1.1 What is AWS Lambda? AWS Lambda lets you run your code written in a number of

More information

San Jose State University College of Science Department of Computer Science CS185C, NoSQL Database Systems, Section 1, Spring 2018

San Jose State University College of Science Department of Computer Science CS185C, NoSQL Database Systems, Section 1, Spring 2018 San Jose State University College of Science Department of Computer Science CS185C, NoSQL Database Systems, Section 1, Spring 2018 Course and Contact Information Instructor: Suneuy Kim Office Location:

More information

University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development

University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development Instructor: Dr. Ruibo Han Office: LeFrak Hall (LEF) 1111B Email: ruibo@umd.edu (preferred)

More information

Human-Computer Interaction Design

Human-Computer Interaction Design Human-Computer Interaction Design COGS120/CSE170 - Intro. HCI Instructor: Philip Guo, Lab TA: Sean Kross Lab 1 - Version control and HTML (2017-10-06) by Michael Bernstein, Scott Klemmer, Philip Guo, and

More information

OData: What s New with REST APIs for Your Database. Sanjeev Mohan, Gartner Nishanth Kadiyala, Progress Mark Biamonte, OData TC Member, Progress

OData: What s New with REST APIs for Your Database. Sanjeev Mohan, Gartner Nishanth Kadiyala, Progress Mark Biamonte, OData TC Member, Progress OData: What s New with REST APIs for Your Database Sanjeev Mohan, Gartner Nishanth Kadiyala, Progress Mark Biamonte, OData TC Member, Progress Audio Bridge Options & Question Submission 2 OData: What s

More information

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology Web-APIs Examples Consumer Technology Cross-Domain communication Provider Technology Applications Blogs and feeds OpenStreetMap Amazon, Ebay, Oxygen, Magento Flickr, YouTube 3 more on next pages http://en.wikipedia.org/wiki/examples_of_representational_state_transfer

More information

If you are searched for a book Java: The Ultimate Guide to Learn Java Programming Fast (Programming, Java, Database,Java for dummies, coding

If you are searched for a book Java: The Ultimate Guide to Learn Java Programming Fast (Programming, Java, Database,Java for dummies, coding Java: The Ultimate Guide To Learn Java Programming Fast (Programming, Java, Database,Java For Dummies, Coding Books,java Programming) (HTML,... Developers, Coding, CSS, PHP) (Volume 1) By Java programming,

More information

6/17/2017. Cloud Computing. Presented By: Mark Jordan. Agenda. Definition Structures Examples Which is Better? Future

6/17/2017. Cloud Computing. Presented By: Mark Jordan. Agenda. Definition Structures Examples Which is Better? Future Cloud Computing Presented By: Mark Jordan Agenda Definition Structures Examples Which is Better? Future 1 Definition Cloud computing is a type of Internet-based computing that provides shared computer

More information

Oracle and Tangosol Acquisition Announcement

Oracle and Tangosol Acquisition Announcement Oracle and Tangosol Acquisition Announcement March 23, 2007 The following is intended to outline our general product direction. It is intended for information purposes only, and may

More information

Restlet in Action. Developing RESTful web APIs injava JEROME LOUVEL MANNING THIERRY TEMPLIER THIERRY BOILEAU. Shelter Island

Restlet in Action. Developing RESTful web APIs injava JEROME LOUVEL MANNING THIERRY TEMPLIER THIERRY BOILEAU. Shelter Island Restlet in Action Developing RESTful web APIs injava JEROME LOUVEL THIERRY TEMPLIER THIERRY BOILEAU II MANNING Shelter Island contents foreword xvii preface xix acknowledgments about this book xxi xxiii

More information

Web Services Amazon Ecommerce Service, Comparison with other Web Services

Web Services Amazon Ecommerce Service, Comparison with other Web Services Web Services Amazon Ecommerce Service, Comparison with other Web Services COV885 Special Tpocis on Computer Applications Dept. Of Comp. Sc. and Engineering, IITD Semester I, 2018 Web Programming: Web Servives

More information

Object-Oriented Programming CSCI-UA

Object-Oriented Programming CSCI-UA Object-Oriented Programming CSCI-UA 0470-001 Instructor: Thomas Wies Fall 2013 Lecture 1 - Introduction Acknowledgments This course is based on Robert Grimm s course on Object-Oriented Programming. Object-Oriented

More information

1Z Oracle. Java Enterprise Edition 5 Enterprise Architect Certified Master

1Z Oracle. Java Enterprise Edition 5 Enterprise Architect Certified Master Oracle 1Z0-864 Java Enterprise Edition 5 Enterprise Architect Certified Master Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-864 Answer: A, C QUESTION: 226 Your company is bidding

More information

web engineering introduction

web engineering introduction web engineering introduction team prof. moira norrie matthias geel linda di geronimo alfonso murolo www.globis.ethz.ch/education 20.02.2014 norrie@inf.ethz.ch 2 what is web engineering? technologies, tools

More information

Object-Oriented Programming Fall Robert Grimm, New York University

Object-Oriented Programming Fall Robert Grimm, New York University 1 Object-Oriented Programming Fall 2012 Robert Grimm, New York University 2 What Is Object-Oriented Programming? Computer programming that emphasizes the structure of data and their encapsulation with

More information

NonStop as part of a modern state of the art IT Infrastructure

NonStop as part of a modern state of the art IT Infrastructure NonStop as part of a modern state of the art IT Infrastructure GTUG & Connect 2012, Dresden Tobias Kallfass, EMEA NED Presales Buzzwords from the IT world Remote Function Call Service-oriented Architecture

More information

Basic Properties of Styles

Basic Properties of Styles Component-Based Software Engineering ECE493-Topic 5 Winter 2007 Lecture 18 Enterprise Styles/Patterns (Part A) Ladan Tahvildari Assistant Professor Dept. of Elect. & Comp. Eng. University of Waterloo Basic

More information

Large Scale Computing Infrastructures

Large Scale Computing Infrastructures GC3: Grid Computing Competence Center Large Scale Computing Infrastructures Lecture 2: Cloud technologies Sergio Maffioletti GC3: Grid Computing Competence Center, University

More information

today what is this course about? what is this course about? Welcome to CSC309! Programming on the Web APRIL 05

today what is this course about? what is this course about? Welcome to CSC309! Programming on the Web APRIL 05 Welcome to CSC309! Programming on the Web Amir H. Chinaei, Spring 2017 ahchinaei@cs.toronto.edu http://www.cs.toronto.edu/~ahchinaei/ Office hours: M 3:45-5:45 BA4222 today course outline (bird s-eye view)

More information

EPUB / DEVELOPING ENTERPRISE WEB SANDEEP CHATTERJEE PRODUCTS MANUAL DOWNLOAD

EPUB / DEVELOPING ENTERPRISE WEB SANDEEP CHATTERJEE PRODUCTS MANUAL DOWNLOAD 24 November, 2018 EPUB / DEVELOPING ENTERPRISE WEB SANDEEP CHATTERJEE PRODUCTS MANUAL DOWNLOAD Document Filetype: PDF 140.67 KB 0 EPUB / DEVELOPING ENTERPRISE WEB SANDEEP CHATTERJEE PRODUCTS MANUAL DOWNLOAD

More information

Rich Web Applications in Server-side Java without. Plug-ins or JavaScript

Rich Web Applications in Server-side Java without. Plug-ins or JavaScript Rich Web Applications in Server-side Java without twitter: #vaadin @joonaslehtinen Plug-ins or JavaScript Joonas Lehtinen, PhD Vaadin Ltd - CEO joonas@vaadin.com ? Vaadin is a UI framework for desktop-like

More information

RESTful Services. Distributed Enabling Platform

RESTful Services. Distributed Enabling Platform RESTful Services 1 https://dev.twitter.com/docs/api 2 http://developer.linkedin.com/apis 3 http://docs.aws.amazon.com/amazons3/latest/api/apirest.html 4 Web Architectural Components 1. Identification:

More information

Cloud Computing and Service-Oriented Architectures

Cloud Computing and Service-Oriented Architectures Material and some slide content from: - Atif Kahn SERVICES COMPONENTS OBJECTS MODULES Cloud Computing and Service-Oriented Architectures Reid Holmes Lecture 29 - Friday March 22 2013. Cloud precursors

More information

Rich Web Applications in Server-side Java without. Plug-ins or JavaScript

Rich Web Applications in Server-side Java without. Plug-ins or JavaScript Rich Web Applications in Server-side Java without twitter: #vaadin @joonaslehtinen Plug-ins or JavaScript Joonas Lehtinen, PhD Vaadin Ltd - CEO joonas@vaadin.com ? Vaadin is a UI framework for desktop-like

More information

WHITESTEIN. Agents in a J2EE World. Technologies. Stefan Brantschen. All rights reserved.

WHITESTEIN. Agents in a J2EE World. Technologies. Stefan Brantschen. All rights reserved. WHITESTEIN Technologies 1 Agents in a J2EE World Stefan Brantschen ttt.info.j2ee v1.6 2002-02-10 SBR Copyright 2002 by Whitestein Technologies AG, Switzerland Goal and Outline Goal Present how J2EE EJB

More information

Both Sides Now: DevOps and Agile in Oracle Developer Cloud Service for Fusion Middleware Developers

Both Sides Now: DevOps and Agile in Oracle Developer Cloud Service for Fusion Middleware Developers Both Sides Now: DevOps and Agile in Oracle Developer Cloud Service for Fusion Middleware Developers Peter Koletzke Technical Director & Principal Instructor Job function DBA, developer, both, other Languages

More information

Best Practices Implementing Oracle Mobile Cloud Service

Best Practices Implementing Oracle Mobile Cloud Service Best Practices Implementing Oracle Mobile Cloud Service Rubén Rodríguez Cloud & Mobile Solution Specialist 07/06/2018 Introduction About me ADF Technical Lead, Cloud & Mobile Solution Specialist Blogger

More information

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC

Jenkins: A complete solution. From Continuous Integration to Continuous Delivery For HSBC Jenkins: A complete solution From Integration to Delivery For HSBC Rajesh Kumar DevOps Architect @RajeshKumarIN www.rajeshkumar.xyz Agenda Why Jenkins? Introduction and some facts about Jenkins Supported

More information

Service Oriented Architectures (ENCS 691K Chapter 2)

Service Oriented Architectures (ENCS 691K Chapter 2) Service Oriented Architectures (ENCS 691K Chapter 2) Roch Glitho, PhD Associate Professor and Canada Research Chair My URL - http://users.encs.concordia.ca/~glitho/ The Key Technologies on Which Cloud

More information

SEEM3450 Engineering Innovation and Entrepreneurship

SEEM3450 Engineering Innovation and Entrepreneurship SEEM3450 Engineering Innovation and Entrepreneurship Cloud Computing Guest Lecture Gabriel Fung, Ph.D. 2017-10-26 What is Cloud Computing? According to NIST (National Institute of Standards and Technology)

More information