Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.

Slides:



Advertisements
Similar presentations
Distributed Systems Architectures
Advertisements

Distributed Systems Architectures
Chapter 10 Architectural Design.
Database Architectures and the Web
©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.
Figures – Chapter 18. Figure 18.1 Procedural interaction between a diner and a waiter.
SWE 316: Software Design and Architecture
Distributed Systems Architectures
Technical Architectures
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.
Chapter 13 Physical Architecture Layer Design
Ch 12 Distributed Systems Architectures
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Architectural Design, Distributed Systems Architectures
Distributed Systems Architecture Presentation II Presenters Rose Kit & Turgut Tezir.
Distributed Systems: Client/Server Computing
Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.
Tiered architectures 1 to N tiers. 2 An architectural history of computing 1 tier architecture – monolithic Information Systems – Presentation / frontend,
DATABASE MANAGEMENT SYSTEMS 2 ANGELITO I. CUNANAN JR.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Software Architecture
Distributed Software Engineering
Client/Server Architectures
1 Reference architectures u Reference models are derived from a study of the application domain rather than from existing systems u May be used as a basis.
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.
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
Slide 1 Physical Architecture Layer Design Chapter 13.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
©Ian Sommerville 2000 Software Engineering. Chapters 12/31Slide 1 Chapters 12/31 Distributed Systems Architectures & Service-Oriented Software Engineering.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
CSC 480 Software Engineering Lecture 18 Nov 6, 2002.
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.
Chapter 18 – Distributed software engineering Lecture 1 1Chapter 18 Distributed software engineering.
ICS362 – Distributed Systems Dr. Ken Cosh Week 2.
Chapter 17 – Distributed software engineering Chapter 17 Distributed software engineering120/11/2014.
CSC 480 Software Engineering High Level Design. Topics Architectural Design Overview of Distributed Architectures User Interface Design Guidelines.
©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.
SYSTEMSDESIGNANALYSIS 1 Chapter 21 Implementation Jerry Post Copyright © 1997.
©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.
Software Engineering 1.  Distributed systems issues   Client–server computing  Architectural patterns for distributed systems  Software as a service.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
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.
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
Software Architecture
CSC 480 Software Engineering
Distributed Systems Architectures
Presentation transcript:

Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim

Topics Covered  Distributed systems  Multiprocessor architectures  Client-server architectures  Distributed object architectures

Distributed Systems  Virtually all large computer-based systems are now distributed systems  Information processing is distributed over several computers rather than confined to a single machine  Distributed software engineering is now very important

Distributed System Characteristics  Resource sharing  Openness  Concurrency  Scalability  Fault tolerance

Distributed System Disadvantages  Complexity  Security  Manageability  Unpredictability

Distributed System Architectures  Client-server architectures  Distributed services which are called on by clients  Servers that provide services are treated differently from clients that use services  Distributed object architectures  No distinction between clients and servers  Any object on the system may provide and use services from other objects

Middleware  Software that manages and supports the different components of a distributed system. In essence, it sits in the middle between the different distributed components of the system  Middleware is usually off-the-shelf rather than specially written software  Examples  Transaction processing monitors  Data converters  Communication controllers

Multiprocessor Architecture  Simplest distributed system model  System composed of multiple processes which may (but need not) execute on different processors  Architectural model of many large real-time systems  Distribution of process to processor may be pre-determined or may be under the control of dispatcher

A Traffic Control System

Client-Server Architecture  The application is modeled as a set of services that are provided by servers and a set of clients that use these services  Clients know of servers but servers need not know of clients  Clients and servers are logical processes  The mapping of processors to processes is not necessarily one-to-one

A Client-Server System

Computers In A C/S Network

Layered Application Architecture  Presentation layer  Concerned with presenting information to the user and with all user interaction  Application processing layer  Concerned with providing application specific functionality e.g., in a banking system, banking functions such as open account, close account, etc.  Data management layer  Concerned with all database operations

Application Layers

Thin And Fat Clients (1/2)  Thin-client model  All of the application processing and data management are carried out on the server  The client is simply responsible for running the presentation software  Fat-client model  The server is only responsible for data management  The software on the client implements the application logic and the interactions with the system user

Thin And Fat Clients (2/2)

Thin Client Model  Used when centralized legacy systems are migrated to client-server architectures  The legacy system acts as a server in its own right with a graphical interface implemented on a client  A major disadvantage is that it places a heavy processing load on both the server and the network

Fat Client Model  More processing is delegated to the client as the application processing is locally executed  Most suitable for new C/S systems where the capabilities of the client system are known in advance  More complex than a thin client model especially for management. When the application software has to be changed, new versions of the application have to be installed on all clients

Three-Tier Architectures  In a three-tier architecture, each of the application architecture layers may execute on a separate processor  Allows for better performance than a thin-client approach and is simpler to manage than a fat- client approach  A more scalable architecture – as demands increase, extra servers can be added

A Three-Tier C/S Architecture

Internet Banking System

Distributed Object Architectures  There is no distinction in a distributed object architecture between clients and servers  Each distributable entity is an object that provides services to other objects and receive services from other objects  Object communication is through a middleware system called an object request broker (software bus)  More complex to design than C/S systems

A Distributed Object Architecture

Advantages Of Distributed Object Architectures  It allows the system designer to delay decisions on where and how services should be provided  It is a very open system architecture that allows new resources to be added to it as required  The system is flexible and scalable  It is possible to reconfigure the system dynamically with objects migrating across the network as required

CORBA  CORBA is an international standard for an Object Request Broker – middleware to manage communications between distributed objects  Several implementations of CORBA are available  DCOM (Distributed Component Object Model) is an alternative approach by Microsoft to object request brokers  CORBA has been defined by the Object Management Group (OMG)

CORBA Application Structure