INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

22
INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    1

Transcript of INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Page 1: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

INF 123 SW ARCH, DIST SYS & INTEROP

LECTURE 19

Prof. Crista Lopes

Page 2: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Objectives

Recap of the entire course

Page 3: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 2

Review of Architecture in Software Systems Terminology, Definitions Different Types of Architecture Concrete example: OpenSimulator What lead software

architects/designers/engineers do

Page 4: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 3

Distributed Systems Recap Computer networks – historical perspective The OSI network model The Internet Basics of TCP

Page 5: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 4

UDP DNS

Page 6: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 5

The Web Client-Server architectures Historical perspective of the Web Main design principles Universal Resource Locators HyperText Transfer Protocol operations HTTP requests and responses Web caches Cookies

Page 7: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 6

Web application programming 3-tier architectures Media types HyperText Markup Language (HTML)

Relation to HTTP Web Programming frameworks

Wifi

Page 8: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 7

REpresentational State Transfer (REST) Design principles REST application design guidelines

Page 9: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 8

Web Services Remote Procedure Calls

XMLRPC SOAP

WSDL

Page 10: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 9

Distributed Objects Java RMI

Page 11: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 10

External Data Representations Endianess XDR XML JSON

Page 12: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 11

Software architecture recovery What and why Conceptual vs. as-is

Grid Computing architectures

Page 13: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 12

Peer-to-Peer architectures Napster Gnutella

Page 14: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 13

Event-Based Architectures The Internet, in practice

Identification, IP addresses, ports

Page 15: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 14

Decentralization and security Firewalls Cryptography

MD5 Well-known threats (part1) SLL and HTTPS

Page 16: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 15

Web application security Well-known threats (part 2) Due diligence

Page 17: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 16

Authentication and Authorization OpenID and OAuth

Page 18: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 17

Trust on the Internet Certificates and CAs Public Key Cryptography SSL

Page 19: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Lecture 18

How to program for security The principle of least authority (POLA) Good security ≈ good engineering

Page 20: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Assignments

Slice of the course material in practice: Sniffing packets HTTP REST Web programming Services, connectors Software architecture recovery Firewalls OpenID and related protocols

Page 21: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

This course

Many architectures, not just one! Main focus of this course:

Well-known software system architectures Secondary focus:

“Good” software architectures

Page 22: INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 19 Prof. Crista Lopes.

Expected knowledge

Basic understanding of how the Internet works Proficiency on everything Web

architecture, data representations, HTTP, REST, programming, CAs, …

Confidence upon having to deal with web programming frameworks

Confidence upon having to interact with Web services

Proficiency on identifying security threats in decentralized systems how to handle them

Awareness about non client-server architectures P2P, EB, Grid, etc.