Ch 12 Distributed Systems Architectures

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

Distributed Systems Architectures
Distributed Systems Architectures
An Approach to Wrap Legacy Applications into Web Services Wesal Al Belushi, Youcef Baghdadi Department of Computer Science, Sultan Qaboos University, Sultanate.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Presentation 7 part 1: Web Services Introduced. Ingeniørhøjskolen i Århus Slide 2 Outline Definition Overview of Web Services Examples Next Time: SOAP.
Distributed Systems Architectures
Distributed components
Distributed Systems Architectures
Modifed from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 12 & 13 Slide 1 Models of Software Architectures.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Software – Part 3 V.T. Raja, Ph.D., Information Management College of Business Oregon State University.
Architectural Design, Distributed Systems Architectures
Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Software Architecture
Chapter 3 Database Architectures and the Web Pearson Education © 2009.
Client/Server Architectures
Distributed Software Engineering To explain the advantages and disadvantages of different distributed systems architectures To discuss client-server and.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Distributed Systems Architectures ©Ian Sommerville 2006.
Database Architectures and the Web Session 5
Architectural Design, Distributed Systems Architectures
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
1 소프트웨어공학 강좌 Chap 9. Distributed Systems Architectures - Architectural design for software that executes on more than one processor -
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 11Slide 1 Chapter 11 Distributed Systems Architectures.
Distributed Systems Architectures
9/5/2012ISC329 Isabelle Bichindaritz1 Web Database Environment.
©Ian Sommerville 2000 Software Engineering. Chapters 12/31Slide 1 Chapters 12/31 Distributed Systems Architectures & Service-Oriented Software Engineering.
Software Architectural Styles Andrew Midwinter, Mark Mullen, Kevin Wong, Matt Jones 1.
CSC 480 Software Engineering Lecture 18 Nov 6, 2002.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
CS 240, Prof. Sarwar Slide 1 CS 240: Software Project Fall 2003 Sections 1 & 2 Dr. Badrul M. Sarwar San Jose State University Lecture #23.
Chapter 12 Review Chad Hagstrom CS 310 Spring 2008.
Kemal Baykal Rasim Ismayilov
ICS362 – Distributed Systems Dr. Ken Cosh Week 2.
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Chapter 14 Advanced Architectural Styles. Objectives Describe the characteristics of a distributed system Explain how middleware supports distributed.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
©Ian Sommerville 2000, Tom Dietterich 2001 Slide 1 Distributed Systems Architectures l Architectural design for software that executes on more than one.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Distributed Geospatial Information Processing (DGIP) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
9. 9 Systems Analysis and Design in a Changing World, Fourth Edition.
Dr D. Greer, Queens University Belfast ) Software Engineering Chapter 7 Software Architectural Design Learning Outcomes Understand.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Distributed Systems Architectures
Software Architecture
CSC 480 Software Engineering
Database Architectures and the Web
#01 Client/Server Computing
Ch > 28.4.
Distributed Systems Architectures
#01 Client/Server Computing
Presentation transcript:

Ch 12 Distributed Systems Architectures Types of systems: designed to run on a personal computer or workstation (MS Word) embedded systems that run on a single processor or on an integrated group of processors (helicopter display) distributed systems where the software runs on a loosely integrated group of co-operating processors linked by a network (corporate accounting system) Virtually all large systems are distributed Distributed software engineering is increasingly important

Distributed systems architectures Client-server distributed services which are called on by clients servers that provide services differ from clients that use services Distributed object no distinction between clients and servers any object may provide and use services from other objects often called peer-to-peer Combinations of the two

12.1 Multiprocessor architectures Simplest distributed model, used for many large real-time systems Multiple processes which may (or not) run on different processors A traffic control system:

12.2 Client-server architectures Services are provided by servers Clients use them Clients know servers Servers need not know clients

Layered application architecture Client/Server often organized in layers Presentation layer presents the results of a computation to system users and with collecting user inputs Application processing layer application specific functionality e.g., in a banking system, functions such as open account, close account... Data management layer manages the system databases CS 330 examples?

Thin and fat clients * ** * All application processing and data management are on the server The client is responsible only for the presentation software ** The server is only responsible for data management The client implements application logic and interacts with the user

Thin versus fat client model Thin client used when legacy systems are migrated to client server architectures. The legacy system acts as server with a gui implemented on a client heavy processing load on the server and the network Fat client application processing is locally executed most suitable when the client system capabilities are known in advance more complex to manage (new versions of the application have to be installed on all clients)

Three-tier architectures Each layer may execute on a separate processor Better performance than a thin-client Simpler to manage than a fat-client More scalable - as demands increase, add extra servers

12.3 Distributed object architecture No distinction between clients and servers Each entity is an object that provides services to other objects and receives services from other objects Object communication is through a middleware system called an object request broker (software bus) More complex to design than client/server systems

Another example: data mining A way to integrate data in different formats Each integrator is looking for specific information The number of databases can be increased without disrupting the system New types of relationships can be mined by adding new integrator objects

12.3.1 CORBA An international standard for Object Request Broker (ORB) - middleware to manage distributed object communications A CORBA object encapsulates a state with an interface defined in an IDL (interface definition language) The object may be written in any language The ORB knows of all objects in the system and their interfaces Example services: trading services allow objects to use other objects on the net notification services notify other objects that an event has occurred transaction services support atomic transactions and rollback on failure Alternative approach by Microsoft: .NET, DLLs

CORBA application structure ** * *** * Objects defined for a specific domain, e.g. banking ** Objects used by many domains, e.g. user interface *** General services, e.g. directories, security management

12.4 Interorganizational distributed computing Old: intraorganizational distributed computing org. resources shared behind a security wall corporate look and feel Newer models share resources among organizations Peer to peer: decentralized architectures with no distinction between clients and servers big application: file sharing Napster, Kazaa outlawed by Spain in 2006 Service-oriented systems created by linking software services provided by different suppliers examples?

Services standards Services based on communication via XML can be provided on any platform in any programming language Key standards SOAP - Simple Object Access Protocol (example) WSDL - Web Services Description Language describes a web service location methods it exposed UDDI - Universal Description, Discovery and Integration allows businesses to list themselves and make services available programs wanting a web service (e.g. credit card authentication) go through a service broker often located inside a company

Not all SOA*s are web-based * service oriented architecture