Software Architecture

Size: px
Start display at page:

Download "Software Architecture"

Transcription

1 Software Architecture Quiz with Explainations Hans-Petter Halvorsen, M.Sc.

2 Questions 1. Explain 3-layer Architecture 2. What is a Web Service? 3. What is SOA? 4. What is an API? 5. What is Client-Server Architecture? 6. What is a Presentation Layer? 7. What is a Business Layer? 8. What is a Data Layer? 9. What is the main purpose with 3-layer/n-tier architecture? 10. List the different parts in Web Services (SOAP)?

3 Explain 3-layer Architecture

4 n-tier/3-tier In software engineering, multi-tier architecture (n-tier architecture) is a client server architecture in which presentation, application processing, and data management functions are logically (and/or physically) separated. 3 layers are most used.

5 3-tier Architecture Presentation Layer Business Logic Layer Data Access Layer Data Source Note! Different Litterature may use different Names for the Layers

6 Client/Presentation Layer/Tier Business/Logic Layer/Tier Data Layer/Tier Note! Different Litterature may use different Names for the Layers Note! The different layers can be on the same computer (Logic Layers) or on different Computers in a network (Physical Layers)

7 What is a Web Service?

8 Problem How to Share Data between Devices in a Network? Server(s) Firewalls Security Local Network/Intern et Clients Routers/Switches, etc. Database

9 Problem How to Share Data between Devices in a Network? Database Clients Direct Connection between the Database and the Clients that need the Data is normally not possible, due to security, compatibility issues, etc. (Firewalls, Hacker Attacks, etc.) Direct Connection in a Local Network (behind the Firewall) is normally OK but not over the Internet.

10 Solution: Web Service Web Service Internet HTTP Clients Database Web Services uses standard web protocols like HTTP, etc. HTTP is supported by all Web Browser, Servers and many Programming Languages 10

11 Client Client Client Data Web Services: A Standard way to get data over a network/internet Using standard Web protocols Server Data Network/Intern et Web Service Web Server Data Data Web Services Data Database Normally you dont have direct access to a Database over a network, and espesially not over Internet

12 Web Services A Web service is a method of communications between two devices over the World Wide Web. Web API Standard defined by W3C Cross-platform Web Services can be implemented and used in most Programming Languages (C#/ASP.NET, PHP, LabVIEW, Objective- C, Java,...) Uses standard Web technology (Web protocols) HTTP, REST, SOAP, XML, WSDL, JSON,...

13 Why Web Service? Today Web Services have been very popular Easy Data sharing over Internet Platform-independent Communication Makes it possible of integration of different systems and platforms Distributed Application Development Web Service Internet HTTP Clients

14 Web Services Web Services 1.0: Uses SOAP Complex Web Services 2.0: Uses REST Less Complex than using SOAP Lightwight and Flexible The prefered model today

15 The database-centric style. Typically, the clients communicate directly with the database. A three-tier style, in which clients do not connect directly to the database. Web Services, etc. 15

16 What is SOA?

17 SOA Service Oriented Architecture. Distributed Application Development Typical example: Web Services

18 What is an API?

19 API API - Aplication Programming Interface A specification of how some software components should interact with each other. A library with functions, etc. you can use in your code Examples: Windows API Java API But you can also create your own API that you use internally in the team or expose to others

20 Software Design without APIs Pros: Fast to implement in small projects. Agile can serve as a starting point for API design. No need to consider how code interfaces with other software. Can be appropriate for small dead end projects. Cons: Inappropriate for large projects. Code has a limited (as opposed to general) functionality. Code is not reusable. Code is hard to maintain/modify. Prone to errors and bugs.

21 Why a Good API is hard to Design Forces designer to anticipate future usage of code. Requirements are incomplete (may never be complete). Requires abstraction. Requires modularization. Requires skills in programming languages. Requires code rewrites time consuming and labor intensive.

22 The Benefits of API Driven Design When an API is used in a project, it Allows to focus on the project. Saves development time. Reduces errors and debugging. Facilitates modular design. Provides a consistent development platform. è API driven design requires planning and programming skills. API driven design is costly initially, but it pays in the long run. So, obviously, creating APIs is good software practice in most cases.

23 API

24 What is Client-Server Architecture?

25 Client-Server Client 2-layer architecture Response Server Request Data Storage

26 Client Client-Server Example Web Browser Response Web Server Request Database Internet Information Services (IIS)

27 What is a Presentation Layer?

28 Presentation Layer Typical the Graphical User Interface

29 What is a Business Layer?

30 Presentation Layer Typical the Business Logic, which handle the data between the User Interface and the Database. A Web Service is typically implmented in this layer.

31 What is a Data Layer?

32 Presentation Layer Typical the Database

33 What is the main purpose with 3-layer/n-tier architecture?

34 Why 3-tier? Decoupling They (the layes/tiers) can be developed and tested seperately.

35 List the different parts in Web Services (SOAP)?

36 SOAP Web Services WSDL (API Description) SOAP (Messaging) XML (Data) WSDL - Web Services Description Language SOAP - Simple Object Access Protocol XML Extensible Markup Language HTTP - Hypertext Transfer Protocol HTTP (Transport)

37 SOAP vs. REST SOAP: A service architecture WSDL (API Description) XML based SOAP (Messaging) Runs on HTTP but envelopes the message XML (Data) Slower than REST Very mature, a lot of functionality HTTP (Transport) Not suitable for browser-based clients More complicated REST: WADL (API Description) A service architecture Uses the HTTP headers to hold meta information REST (Messaging) Can be used with XML, JSON or whatever necessary XML/JSON(Data) Usually used with JSON due to the easily parsable content HTTP (Transport) Faster than SOAP

38 References Software Development - A Practical Approach Halvorsen, Hans-Petter, 2015 Essentials of Software Engineering Frank Tsui; Orlando Karam; Barbara Bernal, 3 ed., Jones & Bartlett Learning Software Engineering I. Sommerville, 10 ed.: Pearson, 2015 Software Engineering. Modern Approaches E. J. Braude and M. E.Bernstein, 2 ed.: Wiley, 2011.

39

40 Hans-Petter Halvorsen, M.Sc. University College of Southeast Norway Blog:

Software Architecture

Software Architecture O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Software Architecture Hans-Petter Halvorsen Clients Windows Server 2008/2012 Windows 7/8 Wi-Fi Server LAN Ethernet OPC Server Router Web

More information

https://www.halvorsen.blog Web Services Hans-Petter Halvorsen

https://www.halvorsen.blog Web Services Hans-Petter Halvorsen https://www.halvorsen.blog Web Services Hans-Petter Halvorsen Problem How to Share Data between Devices in a Network? Server(s) Firewalls Security Clients Local Network/Internet Database Routers/Switches,

More information

Unit Testing. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Unit Testing. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Unit Testing Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is Unit Testing? 2. List some Unit Test Framework 3. Who is creating the Unit Tests? 4. What kind of Requirements does

More information

Using SQL Server in C#

Using SQL Server in C# University College of Southeast Norway Using SQL Server in C# Hans-Petter Halvorsen, 2016.11.01 with Examples http://home.hit.no/~hansha Table of Contents 1. Introduction...

More information

Software Implementation

Software Implementation Software Implementation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 10 different Programming Languages 2. What is an IDE? - Give some Examples 3. What is.net? 4. What is ASP.NET?

More information

University College of Southeast Norway. Web Services. with Examples. Hans-Petter Halvorsen,

University College of Southeast Norway. Web Services. with Examples. Hans-Petter Halvorsen, University College of Southeast Norway Web Services Hans-Petter Halvorsen, 2016.11.01 with Examples http://home.hit.no/~hansha Table of Contents 1. Introduction... 4 1.1. The Problem... 4 1.2. The Solution...

More information

Software Platforms. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Software Platforms. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Software Platforms Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 3 different software platforms with some examples for each 2. List 5 different Web Browsers and the name of the

More information

UML. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

UML. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. UML Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is UML? 2. What is an ER diagram? 3. Give example of some types of UML diagrams (in total we have 14 different types) 4. Give

More information

Source Code Control. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Source Code Control. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Source Code Control Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is SCC? 2. List at least 5 different SSC Systems 3. Why do we need a SCC/Version Control System? 4. What is Distributed

More information

Software Documentation

Software Documentation Software Documentation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 4 important Process Documents 2. What are the main Software Documentation Categories? 3. What is SRS? 4. What

More information

Database. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Database. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Database Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is a Database? 2. Give Examples of Systems that use a Database 3. What is DBMS? 4. Give Examples of DBMS systems? 5. We have

More information

Software Testing. Hans-Petter Halvorsen, M.Sc.

Software Testing. Hans-Petter Halvorsen, M.Sc. Software Testing Hans-Petter Halvorsen, M.Sc. STD System Documentation Testing Software Test Documentation Software Test Plan (STP) Test Documentation End-User Documentation Implementation Code System

More information

Visual Studio Team Services

Visual Studio Team Services Visual Studio Team Services Getting Started Hans-Petter Halvorsen, M.Sc. Visual Studio Team Services Visual Studio Team Services is a platform taking care of all aspects of the process of developing software

More information

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc.

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc. Team Foundation Server Visual Studio Team Services Hans-Petter Halvorsen, M.Sc. Team Foundation Server (TFS) is an Application Lifecycle Management (ALM) system The Software Development Lifecycle (SDLC)

More information

Week Assignment. Software Testing Test Planning. Hans-Petter Halvorsen

Week Assignment. Software Testing Test Planning. Hans-Petter Halvorsen 2017.04.07 Week Assignment Software Testing Test Planning B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen Note! All Documents, Code,

More information

Database Communication in Visual Studio/C# using Web Services

Database Communication in Visual Studio/C# using Web Services https://www.halvorsen.blog Database Communication in Visual Studio/C# using Web Services Hans-Petter Halvorsen Background With Web Services you can easily get your data through Internet We will use Web

More information

Programming. Languages & Frameworks. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available:

Programming. Languages & Frameworks. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available: Programming O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Languages & Frameworks Hans-Petter Halvorsen, M.Sc. Implementation Planning Maintenance Testing Implementation The Software

More information

Create a Virtual Test Environment

Create a Virtual Test Environment Create a Virtual Test Environment Step by Step Exercises Hans-Petter Halvorsen, M.Sc. Why Do We Need a Test Environment? Why cant we just use our own PC? Why Test Environment? It works on my PC says the

More information

Simulation in LabVIEW. Hans-Petter Halvorsen, M.Sc.

Simulation in LabVIEW. Hans-Petter Halvorsen, M.Sc. Simulation in LabVIEW Hans-Petter Halvorsen, M.Sc. Software LabVIEW LabVIEW Control Design and Simulation Module This module is used for creating Control and Simulation applications with LabVIEW. Here

More information

Team Assignment. Final Software Delivery. IA4412 Software Engineering

Team Assignment. Final Software Delivery. IA4412 Software Engineering IA4412 Software Engineering Team Assignment Final Software Delivery B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen, M.Sc. Level of

More information

Source Code Control & Bug Tracking

Source Code Control & Bug Tracking http://home.hit.no/~hansha/?page=software_development O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Source Code Control & Bug Tracking Hans-Petter Halvorsen O. Widder. (2013). geek&poke.

More information

Introduction to ERwin

Introduction to ERwin Introduction to ERwin Database Design & Modelling Hans-Petter Halvorsen, M.Sc. Software The following Editions can be downloaded for Free on Internet: CA ERwin Data Modeler Community Edition SQL Server

More information

We are ready to serve Latest Testing Trends, Are you ready to learn? New Batch Details

We are ready to serve Latest Testing Trends, Are you ready to learn? New Batch Details We are ready to serve Latest Testing Trends, Are you ready to learn? START DATE : New Batch Details TIMINGS : DURATION : TYPE OF BATCH : FEE : FACULTY NAME : LAB TIMINGS : SOAP UI, SOA Testing, API Testing,

More information

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web

XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Web Services. XML Web Service? A programmable component Provides a particular function for an application Can be published, located, and invoked across the Web Platform: Windows COM Component Previously

More information

MATLAB Examples. Simulink. Hans-Petter Halvorsen, M.Sc.

MATLAB Examples. Simulink. Hans-Petter Halvorsen, M.Sc. MATLAB Examples Simulink Hans-Petter Halvorsen, M.Sc. What is Simulink? Simulink is an add-on to MATLAB. You need to have MATLAB in order to use Simulink Simulink is used for Simulation of dynamic models

More information

Week Assignment. Source Code Control (SCC) & Bug Tracking Systems. Hans-Petter Halvorsen

Week Assignment. Source Code Control (SCC) & Bug Tracking Systems. Hans-Petter Halvorsen 2017.03.06 Week Assignment Source Code Control (SCC) & Bug Tracking Systems B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen Note!

More information

MSc. Software Engineering. Examinations for / Semester 1

MSc. Software Engineering. Examinations for / Semester 1 MSc. Software Engineering Cohorts: MSE/16B/PT Examinations for 2016 2017/ Semester 1 MODULE: Service Oriented Architecture MODULE CODE: WAT 5101C Duration: 3 Hours Instructions to Candidates: 1. Answer

More information

Software Design COSC 4353/6353 DR. RAJ SINGH

Software Design COSC 4353/6353 DR. RAJ SINGH Software Design COSC 4353/6353 DR. RAJ SINGH Outline What is SOA? Why SOA? SOA and Java Different layers of SOA REST Microservices What is SOA? SOA is an architectural style of building software applications

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

Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen

Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen https://www.halvorsen.blog Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen 1. SCC Systems Overview Everybody should collaborate creating a document giving an overview

More information

Create Installation Packages in Visual Studio

Create Installation Packages in Visual Studio Create Installation Packages in Visual Studio Step by step Exercises Hans-Petter Halvorsen, M.Sc. Maintenance Developers Developers & Testers Customers Development Testing Production Deployment & Installation

More information

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen https://www.halvorsen.blog 3-tier Architecture Step by step Exercises Hans-Petter Halvorsen Software Architecture 3-Tier: A way to structure your code into logical parts. Different devices or software

More information

Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen

Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen https://www.halvorsen.blog Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen History of the Web Internet (1960s) World Wide Web - WWW (1991) First Web Browser - Netscape,

More information

Distributed Multitiered Application

Distributed Multitiered Application Distributed Multitiered Application Java EE platform uses a distributed multitiered application model for enterprise applications. Logic is divided into components https://docs.oracle.com/javaee/7/tutorial/overview004.htm

More information

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview

Java Web Service Essentials (TT7300) Day(s): 3. Course Code: GK4232. Overview Java Web Service Essentials (TT7300) Day(s): 3 Course Code: GK4232 Overview Geared for experienced developers, Java Web Service Essentials is a three day, lab-intensive web services training course that

More information

An introduction API testing with SoapUI

An introduction API testing with SoapUI An introduction API testing with SoapUI Vincent Vonk 12-06-2018 CGI Group Inc. Agenda for the next 50 minutes What is SoapUI? What are Web APIs? Why test on API level? What can SoapUI do? Types of Web

More information

University College of Southeast Norway ASP.NET. Web Programming. Hans-Petter Halvorsen,

University College of Southeast Norway ASP.NET. Web Programming. Hans-Petter Halvorsen, University College of Southeast Norway Hans-Petter Halvorsen, 2016.11.01 ASP.NET Web Programming http://home.hit.no/~hansha Table of Contents 1 Introduction... 4 1.1 Visual Studio... 4 1.2 C#... 5 1.3.NET

More information

Introduction to Web Services & SOA

Introduction to Web Services & SOA References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Web Service Definition The term "Web Services" can be confusing.

More information

University College of Southeast Norway. LM-900 Level Tank. Hans-Petter Halvorsen,

University College of Southeast Norway. LM-900 Level Tank. Hans-Petter Halvorsen, University College of Southeast Norway LM-900 Level Tank Hans-Petter Halvorsen, 2016.10.26 http://home.hit.no/~hansha Table of Contents Table of Contents... ii 1 Introduction... 1 2 System Description...

More information

Datalogging in LabVIEW

Datalogging in LabVIEW Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Datalogging in LabVIEW HANS-PETTER HALVORSEN, 2011.01.04 Faculty of Technology, Postboks 203, Kjølnes

More information

ReST 2000 Roy Fielding W3C

ReST 2000 Roy Fielding W3C Outline What is ReST? Constraints in ReST REST Architecture Components Features of ReST applications Example of requests in REST & SOAP Complex REST request REST Server response Real REST examples REST

More information

Wireless DAQ using ZigBee

Wireless DAQ using ZigBee Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Wireless DAQ using ZigBee Cuong Nguyen, Hans- Petter Halvorsen 2013.10.29 Hardware

More information

NI Vision System HANS- PETTER HALVORSEN,

NI Vision System HANS- PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics NI Vision System HANS- PETTER HALVORSEN, 2013.02.19 Faculty of Technology, Postboks 203, Kjølnes

More information

Introduction to Web Services & SOA

Introduction to Web Services & SOA References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that

More information

Traditional Web Based Systems

Traditional Web Based Systems Chapter 12 Distributed Web Based Systems 1 Traditional Web Based Systems The Web is a huge distributed system consisting of millions of clients and servers for accessing linked documents Servers maintain

More information

Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006

Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006 Implementing a Ground Service- Oriented Architecture (SOA) March 28, 2006 John Hohwald Slide 1 Definitions and Terminology What is SOA? SOA is an architectural style whose goal is to achieve loose coupling

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

Chapter 8 Web Services Objectives

Chapter 8 Web Services Objectives Chapter 8 Web Services Objectives Describe the Web services approach to the Service- Oriented Architecture concept Describe the WSDL specification and how it is used to define Web services Describe the

More information

REST Web Services Objektumorientált szoftvertervezés Object-oriented software design

REST Web Services Objektumorientált szoftvertervezés Object-oriented software design REST Web Services Objektumorientált szoftvertervezés Object-oriented software design Dr. Balázs Simon BME, IIT Outline HTTP REST REST principles Criticism of REST CRUD operations with REST RPC operations

More information

Services Web Nabil Abdennadher

Services Web Nabil Abdennadher Services Web Nabil Abdennadher nabil.abdennadher@hesge.ch 1 Plan What is Web Services? SOAP/WSDL REST http://www.slideshare.net/ecosio/introduction-to-soapwsdl-and-restfulweb-services/14 http://www.drdobbs.com/web-development/restful-web-services-a-tutorial/

More information

Introduction to Simulink

Introduction to Simulink University College of Southeast Norway Introduction to Simulink Hans-Petter Halvorsen, 2016.11.01 http://home.hit.no/~hansha Preface Simulink, developed by The MathWorks, is a commercial tool for modeling,

More information

Berner Fachhochschule. Technik und Informatik. Web Services. An Introduction. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel

Berner Fachhochschule. Technik und Informatik. Web Services. An Introduction. Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Berner Fachhochschule Technik und Informatik Web Services An Introduction Prof. Dr. Eric Dubuis Berner Fachhochschule Biel Overview Web Service versus Web Application A Definition for the Term Web Service

More information

Solutions. Discretization HANS-PETTER HALVORSEN,

Solutions. Discretization HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Solutions HANS-PETTER HALVORSEN, 2011.08.12 Discretization Faculty of Technology, Postboks 203,

More information

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments. Web Development WEB101: Web Development Fundamentals using HTML, CSS and JavaScript $2,495.00 5 Days Replay Class Recordings included with this course Upcoming Dates Course Description This 5-day instructor-led

More information

UML. Unified Modeling Language. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available:

UML. Unified Modeling Language. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available: O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com UML Unified Modeling Language Hans-Petter Halvorsen, M.Sc. Unified Modeling Language (UML) Examples Class Diagram Use Case Diagram 2 Deployment

More information

WSDL Interface of Services for Distributed Search in Databases

WSDL Interface of Services for Distributed Search in Databases WSDL Interface of s for Distributed Search in s Elena Ivanova Abstract: oriented architecture and two layers model of a service are described. WSDL technology is applied to implement a network interface

More information

MATLAB Examples. Interpolation and Curve Fitting. Hans-Petter Halvorsen

MATLAB Examples. Interpolation and Curve Fitting. Hans-Petter Halvorsen MATLAB Examples Interpolation and Curve Fitting Hans-Petter Halvorsen Interpolation Interpolation is used to estimate data points between two known points. The most common interpolation technique is Linear

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

Master Project Software Engineering: Team-based Development WS 2010/11

Master Project Software Engineering: Team-based Development WS 2010/11 Master Project Software Engineering: Team-based Development WS 2010/11 Implementation, September 27 th, 2011 Glib Kupetov Glib.Kupetov@iese.fraunhofer.de Tel.: +49 (631) 6800 2128 Sebastian Weber Sebastian.Weber@iese.fraunhofer.de

More information

Cleveland State University Department of Electrical and Computer Engineering. CIS 408: Internet Computing

Cleveland State University Department of Electrical and Computer Engineering. CIS 408: Internet Computing Cleveland State University Department of Electrical and Computer Engineering CIS 408: Internet Computing Catalog Description: CIS 408 Internet Computing (-0-) Pre-requisite: CIS 265 World-Wide Web is now

More information

REST Easy with Infrared360

REST Easy with Infrared360 REST Easy with Infrared360 A discussion on HTTP-based RESTful Web Services and how to use them in Infrared360 What is REST? REST stands for Representational State Transfer, which is an architectural style

More information

Lesson 15 SOA with REST (Part II)

Lesson 15 SOA with REST (Part II) Lesson 15 SOA with REST (Part II) Service Oriented Architectures Security Module 3 - Resource-oriented services Unit 1 REST Ernesto Damiani Università di Milano REST Design Tips 1. Understanding GET vs.

More information

Enabling Embedded Systems to access Internet Resources

Enabling Embedded Systems to access Internet Resources Enabling Embedded Systems to access Internet Resources Embedded Internet Book www.embeddedinternet.org 2 Agenda : RATIONALE Web Services: INTRODUCTION HTTP Protocol: REVIEW HTTP Protocol Bindings Testing

More information

Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics.

Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics. Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Wi- Fi DAQ Hardware Setup Cuong Nguyen, Hans- Petter Halvorsen, 2013.08.07

More information

https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen

https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen OPC Laboratory Work The Industrial IT course contains different

More information

Database Views & Stored Procedures. Hans-Petter Halvorsen, M.Sc.

Database Views & Stored Procedures. Hans-Petter Halvorsen, M.Sc. Database Views & Stored Procedures Hans-Petter Halvorsen, M.Sc. SQL Server Hans-Petter Halvorsen, M.Sc. Microsoft SQL Server 3 1 2 Your SQL Server Your Tables Your Database 4 Write your Query here 5 The

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

Virtual Instruments with LabVIEW

Virtual Instruments with LabVIEW Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Virtual Instruments with LabVIEW HANS-PETTER HALVORSEN, 2011.01.04 Faculty of Technology, Postboks

More information

Managing State. Chapter 13

Managing State. Chapter 13 Managing State Chapter 13 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of Web http://www.funwebdev.com Development Section 1 of 8 THE PROBLEM OF STATE IN WEB APPLICATIONS

More information

Distribution and web services

Distribution and web services Chair of Software Engineering Carlo A. Furia, Bertrand Meyer Distribution and web services From concurrent to distributed systems Node configuration Multiprocessor Multicomputer Distributed system CPU

More information

MongoDB Web Architecture

MongoDB Web Architecture MongoDB Web Architecture MongoDB MongoDB is an open-source, NoSQL database that uses a JSON-like (BSON) document-oriented model. Data is stored in collections (rather than tables). - Uses dynamic schemas

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

Web Services in Cincom VisualWorks. WHITE PAPER Cincom In-depth Analysis and Review

Web Services in Cincom VisualWorks. WHITE PAPER Cincom In-depth Analysis and Review Web Services in Cincom VisualWorks WHITE PAPER Cincom In-depth Analysis and Review Web Services in Cincom VisualWorks Table of Contents Web Services in VisualWorks....................... 1 Web Services

More information

STANDARD REST API FOR

STANDARD REST API FOR STANDARD REST API FOR EMAIL Kalana Guniyangoda (118209x) Dissertation submitted in partial fulfillment of the requirements for the degree Master of Science Department of Computer Science & Engineering

More information

Technology in Action. Chapter Topics (cont.) Chapter Topics. Reasons for Software Programming. Information Systems 10/29/2010

Technology in Action. Chapter Topics (cont.) Chapter Topics. Reasons for Software Programming. Information Systems 10/29/2010 Technology in Action Chapter 10 Behind the Scenes: Building Applications 1 2 Chapter Topics System development life cycle Life cycle of a program Problem statement Algorithms Moving from algorithm to code

More information

XML Applications. Introduction Jaana Holvikivi 1

XML Applications. Introduction Jaana Holvikivi 1 XML Applications Introduction 1.4.2009 Jaana Holvikivi 1 Outline XML standards Application areas 1.4.2009 Jaana Holvikivi 2 Basic XML standards XML a meta language for the creation of languages to define

More information

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance. XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or

More information

MATLAB Examples. Flow Control and Loops. Hans-Petter Halvorsen, M.Sc.

MATLAB Examples. Flow Control and Loops. Hans-Petter Halvorsen, M.Sc. MATLAB Examples Flow Control and Loops Hans-Petter Halvorsen, M.Sc. Flow Control and Loops in MATLAB Flow Control: if-elseif-else statement switch-case-otherwise statement Loops: for Loop while Loop The

More information

Connecting Angular and CFML

Connecting Angular and CFML Connecting Angular and CFML Trip Ward About Me Senior Technical Specialist at ICF Owner & Chief Consultant at Trir Software Software Architecture and Development ColdFusion(1998), Java, jquery, HTML5,

More information

INFOH-511 WEB SERVICES. LECTURE 1: Introduction

INFOH-511 WEB SERVICES. LECTURE 1: Introduction INFOH-511 WEB SERVICES LECTURE 1: Introduction COURSE RESPONSIBLES Stijn Vansummeren ULB, Campus Solbosch, UB4.125 stijn.vansummeren@ulb.ac.be Stefan Epe ULB, Campus Solbosch, UB4.133 Stefan.eppe@ulb.ac.be

More information

https://www.halvorsen.blog Modbus Hans-Petter Halvorsen

https://www.halvorsen.blog Modbus Hans-Petter Halvorsen https://www.halvorsen.blog Modbus Hans-Petter Halvorsen What is Modbus? Modbus is a serial communications protocol originally published by Modicon (now Schneider Electric) in 1979 for use with its programmable

More information

An Overview of. Eric Bollens ebollens AT ucla.edu Mobile Web Framework Architect UCLA Office of Information Technology

An Overview of. Eric Bollens ebollens AT ucla.edu Mobile Web Framework Architect UCLA Office of Information Technology An Overview of Eric Bollens ebollens AT ucla.edu Mobile Web Framework Architect UCLA Office of Information Technology August 23, 2011 1. Design Principles 2. Architectural Patterns 3. Building for Degradation

More information

Ur/Web: A Simple Model for Programming the Web. Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015

Ur/Web: A Simple Model for Programming the Web. Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015 Ur/Web: A Simple Model for Programming the Web Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015 Ur / Web Ur A new general-purpose typed functional language λ Web Tools for implementing modern three-tier

More information

ipokr System: Leveraging JAX-RPC Assignment: Life Long Learning Research Paper Class: CS&E 762 Date: May 4, 2006

ipokr System: Leveraging JAX-RPC Assignment: Life Long Learning Research Paper Class: CS&E 762 Date: May 4, 2006 ipokr System: Leveraging JAX-RPC Assignment: Life Long Learning Research Paper Class: CS&E 762 Date: May 4, 2006 The popularity of the game of poker has grown dramatically in the past few years, because

More information

On the Potential of Web Services in Network Management

On the Potential of Web Services in Network Management On the Potential of Web Services in Network Management ZiHeng Liu 1,Yu Bai 2,YouQing Wan 3 1 The Department of Information Techonlogy, HuaZhong Normal University; Wuhan, China,lzh20201@yahoo.com.cn 2 The

More information

Quality - The Key to Successful SOA. Charitha Kankanamge WSO2 February 2011

Quality - The Key to Successful SOA. Charitha Kankanamge WSO2 February 2011 Quality - The Key to Successful SOA Charitha Kankanamge WSO2 February 2011 WSO2 Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards and Open Source Producing entire middleware

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

Index. Note: Boldface numbers indicate code and illustrations; an italic t indicates a table.

Index. Note: Boldface numbers indicate code and illustrations; an italic t indicates a table. Index Note: Boldface numbers indicate code and illustrations; an italic t indicates a table. A absolute positioning, in HTML, 184 187, 184 187 abstract classes, 6, 6 Accept header, 260 265, 261 265 access

More information

Chapter 10: Understanding the Standards

Chapter 10: Understanding the Standards Disclaimer: All words, pictures are adopted from Learning Web Design (3 rd eds.) by Jennifer Niederst Robbins, published by O Reilly 2007. Chapter 10: Understanding the Standards CSc2320 In this chapter

More information

XML Processing & Web Services. Husni Husni.trunojoyo.ac.id

XML Processing & Web Services. Husni Husni.trunojoyo.ac.id XML Processing & Web Services Husni Husni.trunojoyo.ac.id Based on Randy Connolly and Ricardo Hoar Fundamentals of Web Development, Pearson Education, 2015 Objectives 1 XML Overview 2 XML Processing 3

More information

Architectural patterns and models for implementing CSPA

Architectural patterns and models for implementing CSPA Architectural patterns and models for implementing CSPA Marco Silipo THE CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION Application architecture Outline SOA concepts and

More information

COMMUNICATION PROTOCOLS

COMMUNICATION PROTOCOLS COMMUNICATION PROTOCOLS Index Chapter 1. Introduction Chapter 2. Software components message exchange JMS and Tibco Rendezvous Chapter 3. Communication over the Internet Simple Object Access Protocol (SOAP)

More information

Network Programmability with Cisco Application Centric Infrastructure

Network Programmability with Cisco Application Centric Infrastructure White Paper Network Programmability with Cisco Application Centric Infrastructure What You Will Learn This document examines the programmability support on Cisco Application Centric Infrastructure (ACI).

More information

Evaluation Guide for ASP.NET Web CMS and Experience Platforms

Evaluation Guide for ASP.NET Web CMS and Experience Platforms Evaluation Guide for ASP.NET Web CMS and Experience Platforms CONTENTS Introduction....................... 1 4 Key Differences...2 Architecture:...2 Development Model...3 Content:...4 Database:...4 Bonus:

More information

RESTful API Design APIs your consumers will love

RESTful API Design APIs your consumers will love RESTful API Design APIs your consumers will love Matthias Biehl RESTful API Design Copyright 2016 by Matthias Biehl All rights reserved, including the right to reproduce this book or portions thereof in

More information

Sistemi ICT per il Business Networking

Sistemi ICT per il Business Networking Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking SOA and Web Services Docente: Vito Morreale (vito.morreale@eng.it) 1 1st & 2nd Generation Web Apps Motivation

More information

Advanced Programming Using Visual Basic 2008

Advanced Programming Using Visual Basic 2008 Chapter 6 Services Part 1 Introduction to Services Advanced Programming Using Visual Basic 2008 First There Were Web Services A class that can be compiled and stored on the Web for an application to use

More information

Sahi. Cost effective Web Automation

Sahi. Cost effective Web Automation Sahi Cost effective Web Automation What is Sahi? Automates web applications Started in 2005 Mature business ready product Aimed at testers in Agile and traditional environments Focus Aimed at testers For

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

Modern web applications and web sites are not "islands". They need to communicate with each other and share information.

Modern web applications and web sites are not islands. They need to communicate with each other and share information. 441 Modern web applications and web sites are not "islands". They need to communicate with each other and share information. For example, when you develop a web application, you may need to do some of

More information