Hypertext transfer family of protocols (HTTP, HTTPS, SOAP) CSE 870 Miniproject on Frameworks Advanced Software Engineering Contact: Dr. B. Cheng, chengb.

Slides:



Advertisements
Similar presentations
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Advertisements

Simple Object Access Protocol (SOAP) v1.1 CS-328 Dick Steflik.
Web Services and AIXM. Introduction Subramanyam “Subbu” Nadavala Contractor, L-3 Communications FAA Air Traffic Organization (ATO) Information Technology.
An Analysis of SOAP Security Vinod Pandarinathan Vijay Asokan Parthiv Nayak.
XML in the real world (2) SOAP. What is SOAP? ► SOAP stands for Simple Object Access Protocol ► SOAP is a communication protocol ► SOAP is for communication.
SOAP SOAP is a protocol for accessing a Web Service. SOAP stands for Simple Object Access Protocol * SOAP is a communication protocol * SOAP is for communication.
Web Services Darshan R. Kapadia Gregor von Laszewski 1http://grid.rit.edu.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
CSE 461 Section. “Transport Layer Security” protocol Standard protocol for encrypting Internet traffic Previously known as SSL (Secure Sockets Layer),
Understand Web Services
How the web works: HTTP and CGI explained
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 23 – Internet Applications Internet Directory.
Authentication Advanced Software Engineering (CSE870) Instructor: Dr. B. Cheng Contact info: chengb at cse dot msu dot edu Eduardo Diaz Dan Fiedler Andres.
R R R CSE870: Advanced Software Engineering: Cheng (Sp 2001)CSE870: Advanced Software Engineering: Cheng (Sp 2001)1 Mini Project An Overview.
Client, Server, HTTP, IP Address, Domain Name. Client-Server Model Client Bob Yahoo Server yahoo.com/finance.html A text file named finance.html.
 What is it ? What is it ?  URI,URN,URL URI,URN,URL  HTTP – methods HTTP – methods  HTTP Request Packets HTTP Request Packets  HTTP Request Headers.
Prashanth Kumar Muthoju
CS 415 N-Tier Application Development By Umair Ashraf July 6,2013 National University of Computer and Emerging Sciences Lecture # 9 Introduction to Web.
MEC /19/2017 7:51 PM © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
1 Simple Object Access Protocol (SOAP) by Kazi Huque.
Research on Non-repudiation service By Yi Zhang. Motivation of Non-repudiation In paper-based business Electronic business transactions Less physical.
SOAP Simple Object Access Protocol by Vinubalaji Gopal (Vinu)
HyperText Transfer Protocol (HTTP).  HTTP is the protocol that supports communication between web browsers and web servers.  A “Web Server” is a HTTP.
SOAP Tutorial Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University
Copyright (c) 2010, Dr. Kuanchin Chen1 The Client-Server Architecture of the WWW Dr. Kuanchin Chen.
Sistem Jaringan dan Komunikasi Data #9. DNS The Internet Directory Service  the Domain Name Service (DNS) provides mapping between host name & IP address.
Case Studies on Design Patterns Design Refinements Examples.
Web Services An introduction for eWiSACWIS May 2008.
CSE298 CSE300 OV-1.1 CSE333 Development of an RBAC Framework for Distributed XML-Data Presentation of Semester Project in CSE333: Distributed Component.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
MESSAGE ORIENTED MODEL (MOM). Slide 2CITE 4420 Message Oriented Model Message-Oriented Model (MOM)
Internet Security. 2 PGP is a security technology which allows us to send that is authenticated and/or encrypted. Authentication confirms the identity.
OTP-ValidationService John Linn, RSA Laboratories 11 May 2005.
HTTP1 Hypertext Transfer Protocol (HTTP) After this lecture, you should be able to:  Know how Web Browsers and Web Servers communicate via HTTP Protocol.
Chapter 10 Intro to SOAP and WSDL. Objectives By study in the chapter, you will be able to: Describe what is SOAP Exam the rules for creating a SOAP document.
Lecture 6: Sun: 8/5/1435 Distributed Applications Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
Copyright © 2013 Curt Hill SOAP Protocol for exchanging data and Enabling Web Services.
Establishing a foundation for web services Ashraf Memon.
1 Web Services Web and Database Management System.
CSE 341, S. Tanimoto Java brief review - 1 Java Brief Review Java’s strengths Object-oriented terminology Inheritance Interfaces An example with inheritance.
Shminder Singh Marquese Carter Ethan Bowyer.  What is SOAP?  Example SOAP Code.  SOAP Characteristics.  Use for SOAP.  Advantages.  Disadvantages.
Operating Systems Lesson 12. HTTP vs HTML HTML: hypertext markup language ◦ Definitions of tags that are added to Web documents to control their appearance.
Kemal Baykal Rasim Ismayilov
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
.NET and SOAP An Overview of SOAP By Raghavendra Aekka.
Introduction to Web Services. SOAP SOAP originally stood for "Simple Object Access Protocol". Web Services expose useful functionality to Web users through.
What is SOAP? Luciano Piccoli. SOAP – Simple Object Access Protocol  SOAP is an XML based protocol to let software components and applications communicate.
RESTful Web Services What is RESTful?
Network and Internet Security Prepared by Dr. Lamiaa Elshenawy
Computer Networks with Internet Technology William Stallings Chapter 04 Modern Applications 4.1 Web Access - HTTP.
CS 210 Proxy Pattern Nov 16 th, RMI – A quick review A simple, easy to understand tutorial is located here:
Introduction to Web Services Presented by Sarath Chandra Dorbala.
Lecture VI: SOAP-based Web Service CS 4593 Cloud-Oriented Big Data and Software Engineering.
Beginning 자바 웹 서비스 SOAP 강미란 Cyber-Infrastructure Research Lab Konkuk University.
SOAP, Web Service, WSDL Week 14 Web site:
SOAP : Simple Object Access Protocol A ‘clean’ tool for remote procedure calls.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
Web Services Dr.Kwanchai Eurviriyanukul The contents of this slide set are obtained from various sources including W3School, WIKIPEDIA.
The Hypertext Transfer Protocol
Sabri Kızanlık Ural Emekçi
Hypertext Transfer Protocol
WEB API.
Kayra Hopkins Loretta Macklem
Team Members: Member1, … Spring 2013
HTTP Request Method URL Protocol Version GET /index.html HTTP/1.1
William Stallings Data and Computer Communications
Deepak Shenoy Agni Software
Frameworks POP3, IMAP2, IMAP4rev1
Presentation transcript:

Hypertext transfer family of protocols (HTTP, HTTPS, SOAP) CSE 870 Miniproject on Frameworks Advanced Software Engineering Contact: Dr. B. Cheng, chengb at cse dot msu dot edu Matt Gerber Adithya Krishnamurthy

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

Overview of Protocols - HTTP Request/Response protocol: Client or User Agent (UA) initiates a request and a server responds. HTTP Message elements –Message Types: Request or Response –Message Headers: field-name ":" [ field-value ] Example: Content-Type: text/html –Message Body: payload associated with request or response. –Message Length: Length of the message body. –General Header Fields: Cache-Control, Date, Pragma, Transfer-Encoding Request –Request Line: Method Request-URI HTTP-Version CRLF Example: GET HTTP/1.1 Response –Status Line: HTTP-Version Status-Code Reason-Phrase CRLF Example: HTTP/ Partial content

Overview of Protocols - HTTPS Secure message-oriented protocol that works in conjunction with HTTP Secure wrapper around unsecure HTTP message - HTTP over SSL HTTPS Message elements –Same as those of HTTP except the range of headers is different and the bodies are cryptographically enhanced. Request –Request Line: Secure * Secure-HTTP/1.4 Response –Status Line: HTTPS-Version Status-Code Reason-Phrase CRLF Example:Secure-HTTP/ OK Message Authenticity Code (MAC) –Used to verify message integrity and sender authenticity –MAC = hex(H(Message||[ ]|| ))

Overview of Protocols - SOAP SOAP stands for Simple Object Access Protocol XML based protocol to let applications exchange information over HTTP SOAP is platform and language independent SOAP Message elements: –Envelope element: –Header (Optional): … –Body: 5

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

Overview of Frameworks Inheritance class Fruit { //... } class Apple extends Fruit { //... } Composition class Fruit { //... } class Apple { private Fruit fruit = new Fruit(); //... }

Overview of Frameworks Whitebox Framework –Only abstract classes in framework with no implementation –Lays down the control flow and structure of the system (Lowest Common Denominator approach) –Implementation of framework based on inheritance –Most flexible but hardest to understand and implement Framework Implementation

Overview of Frameworks Graybox Framework –Combination of abstract and concrete classes in framework –Some common implementation moved back to framework classes –Implementation of framework based on inheritance and composition –Less flexible but easier to understand and implement than Whitebox Framework Implementation FrameworkImplementation

Overview of Frameworks Blackbox Framework –Mostly concrete classes in Framework –Most of common implementation moved back to framework classes –Implementation of framework based on composition –Least flexible but easiest for clients to understand and implement. FrameworkImplementation

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

Whitebox Class diagram - Framework

Whitebox Class diagram - Implementation

Graybox Class diagram - Framework

Graybox Class diagram - Implementation

Blackbox Class diagram - Framework

Blackbox Class diagram - Implementation

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

Design pattern used Template Method –Design pattern that defines the program skeleton of an algorithm. –Algorithm itself is concrete but the methods that are called from it need not be. –Subclasses can override the methods called from the algorithm but not the algorithm itself. –Therefore the subclasses provide the concrete behavior that can vary and the general flow is determined by the template method.

Design pattern used Template Method

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

State Diagrams

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

Agenda Overview of Protocols Overview of Frameworks Class diagrams Design pattern used State diagrams Demo Conclusions

There are 3 different kinds of frameworks! Client perspective must be considered while designing frameworks. Tradeoff is between ease of use and flexibility. Using design patterns in frameworks is a good thing!

Thank You! Questions?