Distributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1
|
|
- Morgan Austin
- 6 years ago
- Views:
Transcription
1 Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1
2 Objectives To explain the advantages and disadvantages of different distributed systems architectures To discuss client server and distributed object architectures To describe object request brokers and the principles underlying the CORBA standards To introduce peer to peer and service oriented architectures as new models of distributed computing. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 2
3 Topics covered Multiprocessor architectures Client server architectures Distributed object architectures Inter organisational computing Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 3
4 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 therefore very important for enterprise computing systems. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 4
5 System types Personal systems that are not distributed and that are designed to run on a personal computer or workstation. Embedded systems that run on a single processor or on an integrated group of processors. Distributed systems where the system software runs on a loosely integrated group of cooperating processors linked by a network. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 5
6 Distributed system characteristics Resource sharing Sharing of hardware and software resources. Openness Use of equipment and software from different vendors. Concurrency Concurrent processing to enhance performance. Scalability Increased throughput by adding new resources. Fault tolerance The ability to continue in operation after a fault has occurred. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 6
7 Distributed system disadvantages Complexity Typically, distributed systems are more complex than centralised systems. Security More susceptible to external attack. Manageability More effort required for system management. Unpredictability Unpredictable responses depending on the system organisation and network load. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 7
8 Distributed systems 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. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 8
9 Middleware Software that manages and supports the different components of a distributed system. In essence, it sits in the middle of the system. Middleware is usually off the shelf rather than specially written software. Examples Transaction processing monitors; Data converters; Communication controllers. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 9
10 Multiprocessor architectures 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 ordered or may be under the control of a dispatcher. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 10
11 A multiprocessor traffic control system Sensor processor Traffic flow processor Traffic light control processor Sensor control process Display process Light control process Traffic flow sensors and cameras Operator consoles Traffic lights Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 11
12 Client server architectures The application is modelled 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 1 : 1. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 12
13 A client server system c2 c3 c4 c12 c11 Server process c1 s1 s4 c5 s2 s3 c10 c9 Client process c6 c7 c8 Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 13
14 Computers in a C/S network c1 c2 c3, c4 CC1 CC2 CC3 s1, s2 Network s3, s4 Server computer SC2 SC1 c5, c6, c7 CC4 CC5 c8, c9 c10, c1 1, c1 2 CC6 Client computer Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 14
15 Layered application architecture Presentation layer Concerned with presenting the results of a computation to system users and with collecting user inputs. 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 managing the system databases. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 15
16 Application layers Presentation layer Application processing layer Data management layer Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 16
17 Thin and fat clients Thin client model In a thin client model, all of the application processing and data management is carried out on the server. The client is simply responsible for running the presentation software. Fat client model In this 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. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 17
18 Thin and fat clients Thin client model Client Presentation Server Data management Application processing Fat client model Client Presentation Application processing Server Data management Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 18
19 Thin client model Used when 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. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 19
20 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. New versions of the application have to be installed on all clients. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 20
21 A client server ATM system ATM ATM Account server Teleprocessing monitor Customer account database ATM ATM Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 21
22 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 thinclient approach and is simpler to manage than a fat client approach. A more scalable architecture as demands increase, extra servers can be added. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 22
23 A 3 tier C/S architecture Presentation Server Server Client Application processing Data management Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 23
24 An internet banking system Client HTTP interaction Client Web server Account service provision SQL query Database server SQL Customer account database Client Client Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 24
25 Use of C/S architectures Architecture Two tier C/S architecture with thin clients Two tier C/S architecture with fat clients Three tier or multi tier C/S architecture Applications Legacy system applications where separating application processing and data management is impractical. Computationally intensive applications such as compilers with little or no data management. Data intensive applications (browsing and querying) with little or no application processing. Applications where application processing is provided by off the shelf software (e.g. Microsoft Excel) on the client. Applications where computationally intensive processing of data (e.g. data visualisation) is required. Applications with relatively stable end user functionality used in an environment with well established system management. Large scale applications with hundreds or thousand s of clients Applications where both the data and the application are volatile. Applications where data from multiple sources are integrated. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 25
26 Distributed object architectures There is no distinction in a distributed object architectures between clients and servers. Each distributable 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. However, distributed object architectures are more complex to design than C/S systems. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 26
27 Distributed object architecture o1 o2 o3 o4 S (o1) S (o2) S (o3) S (o4) Object request broker o5 o6 S (o5) S (o6) Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 27
28 Advantages of distributed object architecture 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 scaleable. It is possible to reconfigure the system dynamically with objects migrating across the network as required. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 28
29 Uses of distributed object architecture As a logical model that allows you to structure and organise the system. In this case, you think about how to provide application functionality solely in terms of services and combinations of services. As a flexible approach to the implementation of client server systems. The logical model of the system is a client server model but both clients and servers are realised as distributed objects communicating through a common communication framework. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 29
30 A data mining system Database 1 Integ rator 1 Repor t gen. Database 2 Visualiser Integ rator 2 Database 3 Display Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 30
31 Data mining system The logical model of the system is not one of service provision where there are distinguished data management services. It allows the number of databases that are accessed to be increased without disrupting the system. It allows new types of relationship to be mined by adding new integrator objects. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 31
32 CORBA CORBA is an international standard for an Object Request Broker middleware to manage communications between distributed objects. Middleware for distributed computing is required at 2 levels: At the logical communication level, the middleware allows objects on different computers to exchange data and control information; At the component level, the middleware provides a basis for developing compatible components. CORBA component standards have been defined. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 32
33 CORBA application structure Application objects Domain facilities Horizontal C ORBA facilities Object request broker CORBA services Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 33
34 Application structure Application objects. Standard objects, defined by the OMG, for a specific domain e.g. insurance. Fundamental CORBA services such as directories and security management. Horizontal (i.e. cutting across applications) facilities such as user interface facilities. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 34
35 CORBA standards An object model for application objects A CORBA object is an encapsulation of state with a well defined, language neutral interface defined in an IDL (interface definition language). An object request broker that manages requests for object services. A set of general object services of use to many distributed applications. A set of common components built on top of these services. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 35
36 CORBA objects CORBA objects are comparable, in principle, to objects in C++ and Java. They MUST have a separate interface definition that is expressed using a common language (IDL) similar to C++. There is a mapping from this IDL to programming languages (C++, Java, etc.). Therefore, objects written in different languages can communicate with each other. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 36
37 Object request broker (ORB) The ORB handles object communications. It knows of all objects in the system and their interfaces. Using an ORB, the calling object binds an IDL stub that defines the interface of the called object. Calling this stub results in calls to the ORB which then calls the required object through a published IDL skeleton that links the interface to the service implementation. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 37
38 ORB based object communications o1 o2 S (o1) S (o2) IDL stub IDL skeleton Object Request Broker Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 38
39 Inter ORB communications ORBs are not usually separate programs but are a set of objects in a library that are linked with an application when it is developed. ORBs handle communications between objects executing on the sane machine. Several ORBS may be available and each computer in a distributed system will have its own ORB. Inter ORB communications are used for distributed object calls. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 39
40 Inter ORB communications o1 o2 o3 o4 S (o1) S (o2) S (o3) S (o4) IDL stub IDL skeleton IDL stub IDL skeleton Object Request Broker Object Request Broker Network Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 40
41 CORBA services Naming and trading services These allow objects to discover and refer to other objects on the network. Notification services These allow objects to notify other objects that an event has occurred. Transaction services These support atomic transactions and rollback on failure. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 41
42 Inter organisational computing For security and inter operability reasons, most distributed computing has been implemented at the enterprise level. Local standards, management and operational processes apply. Newer models of distributed computing have been designed to support interorganisational computing where different nodes are located in different organisations. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 42
43 Peer to peer architectures Peer to peer (p2p) systems are decentralised systems where computations may be carried out by any node in the network. The overall system is designed to take advantage of the computational power and storage of a large number of networked computers. Most p2p systems have been personal systems but there is increasing business use of this technology. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 43
44 P2p architectural models The logical network architecture Decentralised architectures; Semi centralised architectures. Application architecture The generic organisation of components making up a p2p application. Focus here on network architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 44
45 Decentralised p2p architecture n4 n6 n8 n1 3 n2 n3 n7 n1 2 n1 3 n9 n1 0 n1 1 n1 n5 Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 45
46 Semi centralised p2p architecture Discovery server n1 n4 n6 n3 n2 n5 Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 46
47 Service oriented architectures Based around the notion of externally provided services (web services). A web service is a standard approach to making a reusable component available and accessible across the web A tax filing service could provide support for users to fill in their tax forms and submit these to the tax authorities. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 47
48 A generic service An act or performance offered by one party to another. Although the process may be tied to a physical product, the performance is essentially intangible and does not normally result in ownership of any of the factors of production. Service provision is therefore independent of the application using the service. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 48
49 Web services Service registry Find Publish Service requestor Bind Service provider service Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 49
50 Services and distributed objects Provider independence. Public advertising of service availability. Potentially, run time service binding. Opportunistic construction of new services through composition. Pay for use of services. Smaller, more compact applications. Reactive and adaptive applications. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 50
51 Services standards Services are based on agreed, XML based standards so can be provided on any platform and written in any programming language. Key standards SOAP Simple Object Access Protocol; WSDL Web Services Description Language; UDDI Universal Description, Discovery and Integration. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 51
52 Services scenario An in car information system provides drivers with information on weather, road traffic conditions, local information etc. This is linked to car radio so that information is delivered as a signal on a specific radio channel. The car is equipped with GPS receiver to discover its position and, based on that position, the system accesses a range of information services. Information may be delivered in the driver s specified language. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 52
53 Automotive system Road traffic info Weather info Facilities info Road locator Traffic info gps coord gps coord gps coord Translator Mobile Info Service Collates information Service discovery Finds available services Info stream Language info command gps coord Receiver Receives information stream from services Transmitter Sends position and information request to services User inter face Receives request from user Radio Translates dig ital info stream to radio signal Locator Discovers car position In car software system Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 53
54 Key points Distributed systems support resource sharing, openness, concurrency, scalability, fault tolerance and transparency. Client server architectures involve services being delivered by servers to programs operating on clients. User interface software always runs on the client and data management on the server. Application functionality may be on the client or the server. In a distributed object architecture, there is no distinction between clients and servers. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 54
55 Key points Distributed object systems require middleware to handle object communications and to add and remove system objects. The CORBA standards are a set of middleware standards that support distributed object architectures. Peer to peer architectures are decentralised architectures where there is no distinction between clients and servers. Service oriented systems are created by linking software services provided by different service suppliers. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 55
Distributed systems. Distributed Systems Architectures. System types. Objectives. Distributed system characteristics.
Distributed systems Distributed Systems Architectures Virtually all large computer-based systems are now distributed systems. Information processing is distributed over several computers rather than confined
More informationDistributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1
Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Objectives To explain the advantages and disadvantages of different distributed systems architectures
More informationSystem types. Distributed systems
System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors
More informationDistributed systems. Distributed Systems Architectures
Distributed systems Distributed Systems Architectures Virtually all large computer-based systems are now distributed systems. Information processing is distributed over several computers rather than confined
More informationAdministrative Stuff. We are now in week 11 No class on Thursday About one month to go. Spend your time wisely Make any major decisions w/ Client
Administrative Stuff We are now in week 11 No class on Thursday About one month to go Spend your time wisely Make any major decisions w/ Client Real-Time and On-Line ON-Line Real-Time Flight avionics NOT
More informationEPL603 Topics in Software Engineering
Lecture 5 Architectural Design & Patterns EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer efi.papatheocharous@cs.ucy.ac.cy Office FST-B107, Tel. ext. 2740 Topics covered Software
More information1.264 Lecture 16. Legacy Middleware
1.264 Lecture 16 Legacy Middleware What is legacy middleware? Client (user interface, local application) Client (user interface, local application) How do we connect clients and servers? Middleware Network
More informationDS 2009: middleware. David Evans
DS 2009: middleware David Evans de239@cl.cam.ac.uk What is middleware? distributed applications middleware remote calls, method invocations, messages,... OS comms. interface sockets, IP,... layer between
More informationCAS 703 Software Design
Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction
More informationSoftware Paradigms (Lesson 10) Selected Topics in Software Architecture
Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1
More informationChapter 3. Database Architecture and the Web
Chapter 3 Database Architecture and the Web 1 Chapter 3 - Objectives Software components of a DBMS. Client server architecture and advantages of this type of architecture for a DBMS. Function and uses
More informationModularity. Object Request Broker. Object Request Broker. These slides are based on Wikipedia and other Web sources (URLs given)
These slides are based on Wikipedia and other Web sources (URLs given) Web Service Distributed Architectures Object Request Broker Software Engineering function Andreas Zeller Saarland University function
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More informationIntroduction 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 informationSOFTWARE ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering?
Q2a. What are the key challenges being faced by software engineering? Ans 2a. The key challenges facing software engineering are: 1. Coping with legacy systems, coping with increasing diversity and coping
More informationChapter 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 informationDistributed Systems: Models and Design
Distributed Systems: Models and Design Nicola Dragoni Embedded Systems Engineering DTU Informatics 1. Architectural Models 2. Interaction Model 3. Design Challenges 4. Case Study: Design of a Client-Server
More informationDHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI
DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering IT6801 - SERVICE ORIENTED ARCHITECTURE Anna University 2 & 16 Mark Questions & Answers Year / Semester: IV /
More informationOverview. Distributed Systems. Distributed Software Architecture Using Middleware. Components of a system are not always held on the same host
Distributed Software Architecture Using Middleware Mitul Patel 1 Overview Distributed Systems Middleware What is it? Why do we need it? Types of Middleware Example Summary 2 Distributed Systems Components
More informationDistributed Computing
Distributed Computing 1 Why distributed systems: Benefits & Challenges The Sydney Olympic game system: see text page 29-30 Divide-and-conquer Interacting autonomous systems Concurrencies Transactions 2
More informationModule 1 - Distributed System Architectures & Models
Module 1 - Distributed System Architectures & Models System Architecture Defines the structure of the system components identified functions of each component defined interrelationships and interactions
More informationIntroduction 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 informationInterconnection of Distributed Components: An Overview of Current Middleware Solutions *
Interconnection of Distributed Components: An Overview of Current Middleware Solutions * Susan D. Urban, Suzanne W. Dietrich, Akash Saxena, and Amy Sundermier Arizona State University Department of Computer
More informationQuickSpecs. Compaq NonStop Transaction Server for Java Solution. Models. Introduction. Creating a state-of-the-art transactional Java environment
Models Bringing Compaq NonStop Himalaya server reliability and transactional power to enterprise Java environments Compaq enables companies to combine the strengths of Java technology with the reliability
More informationToday: Distributed Objects. Distributed Objects
Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.
More informationINTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV
INTRODUCTION TO Object Oriented Systems 1 CHAPTER 1 Introduction to Object Oriented Systems Preview of Object-orientation. Concept of distributed object systems, Reasons to distribute for centralized objects.
More informationDistributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.
Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA
More informationA Self Analysing and Reliable SOA Model
A Self Analysing and Reliable SOA Model Prachet Bhuyan #, Asima Das #, Durga Prasad Mohapatra * # School of Computer Engineering, KIIT University, Bhubaneswar, Odisha, India * Department of Computer Science
More informationChapter 6 Architectural Design. Chapter 6 Architectural design
Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying
More informationPerformance Evaluation of Java And C++ Distributed Applications In A CORBA Environment
Performance Evaluation of Java And C++ Distributed Applications In A CORBA Environment Sanjay P. Ahuja Roger Eggen Cheryl Daucher Department of Computer and Information Sciences University of North Florida
More informationMiddleware: Challenges and Evolution from Procedural to Service Orientation
Middleware: Challenges and Evolution from Procedural to Service Orientation Bruno Traverson (bruno.traverson@edf.fr) IWAISE 2008 APRIL 2008 1-1 Middleware [Meeting in the Middle, Ruth Palmer] Contraction
More informationIncorporating applications to a Service Oriented Architecture
Proceedings of the 5th WSEAS Int. Conf. on System Science and Simulation in Engineering, Tenerife, Canary Islands, Spain, December 16-18, 2006 401 Incorporating applications to a Service Oriented Architecture
More information(9A05803) WEB SERVICES (ELECTIVE - III)
1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available
More informationLimitations of Object-Based Middleware. Components in CORBA. The CORBA Component Model. CORBA Component
Limitations of Object-Based Middleware Object-Oriented programming is a standardised technique, but Lack of defined interfaces between objects It is hard to specify dependencies between objects Internal
More informationWhat is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform.
CORBA What is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform. It includes: an object-oriented Remote Procedure Call (RPC) mechanism object
More informationArchitecting a Network-Centric M&S Application
Introduction to Modeling and Simulation Architecting a Network-Centric M&S Application OSMAN BALCI Professor Department of Computer Science Virginia Polytechnic Institute and State University (Virginia
More informationClient/Server-Architecture
Client/Server-Architecture Content Client/Server Beginnings 2-Tier, 3-Tier, and N-Tier Architectures Communication between Tiers The Power of Distributed Objects Managing Distributed Systems The State
More informationNotes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title
Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion
More informationOracle Tuxedo. CORBA Technical Articles 11g Release 1 ( ) March 2010
Oracle Tuxedo CORBA Technical Articles 11g Release 1 (11.1.1.1.0) March 2010 Oracle Tuxedo CORBA Technical Articles, 11g Release 1 (11.1.1.1.0) Copyright 1996, 2010, Oracle and/or its affiliates. All rights
More informationCORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba
More informationTECNOLOGIES FOR INFORMATION SYSTEMS
TECNOLOGIES FOR INFORMATION SYSTEMS INTRODUCTION Prof. Fabio A. Schreiber http://home.dei.polimi.it home.dei.polimi.it/schreibe/index.htmlindex.html Prof. Letizia Tanca http://tanca.dei.polimi.it tanca.dei.polimi.it
More informationCORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University
CORBA and COM TIP Two practical techniques for object composition X LIU, School of Computing, Napier University CORBA Introduction Common Object Request Broker Architecture (CORBA) is an industry-standard
More informationChapter 1 Introduction to Distributed Service-Oriented Computing
Chapter 1 Introduction to Distributed Service-Oriented Computing This chapter introduces computer architecture, different computing paradigms, and particularly, the distributed computing paradigm and Service-Oriented
More informationDISTRIBUTED SYSTEMS [COMP9243] Distributed Object based: Lecture 7: Middleware. Slide 1. Slide 3. Message-oriented: MIDDLEWARE
DISTRIBUTED SYSTEMS [COMP9243] Distributed Object based: KINDS OF MIDDLEWARE Lecture 7: Middleware Objects invoke each other s methods Slide 1 ➀ Introduction ➁ Publish/Subscribe Middleware ➂ Map-Reduce
More informationTopics on Web Services COMP6017
Topics on Web Services COMP6017 Dr Nicholas Gibbins nmg@ecs.soton.ac.uk 2013-2014 Module Aims Introduce you to service oriented architectures Introduce you to both traditional and RESTful Web Services
More informationRealisation of SOA using Web Services. Adomas Svirskas Vilnius University December 2005
Realisation of SOA using Web Services Adomas Svirskas Vilnius University December 2005 Agenda SOA Realisation Web Services Web Services Core Technologies SOA and Web Services [1] SOA is a way of organising
More informationJava- and CORBA-Based Network Management. Mika Leppinen, Pekka Pulkkinen, and Aapo Rautiainen
Project Reports Java- and CORBA-Based Network Management Mika Leppinen, Pekka Pulkkinen, and Aapo Rautiainen Nokia Research Center Nokia developed the Distributed Computing Platform prototype to support
More informationAdvanced Lectures on knowledge Engineering
TI-25 Advanced Lectures on knowledge Engineering Client-Server & Distributed Objects Platform Department of Information & Computer Sciences, Saitama University B.H. Far (far@cit.ics.saitama-u.ac.jp) http://www.cit.ics.saitama-u.ac.jp/~far/lectures/ke2/ke2-06/
More informationDistributed Systems Question Bank UNIT 1 Chapter 1 1. Define distributed systems. What are the significant issues of the distributed systems?
UNIT 1 Chapter 1 1. Define distributed systems. What are the significant issues of the distributed systems? 2. What are different application domains of distributed systems? Explain. 3. Discuss the different
More informationAnnouncements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris
Announcements Email me your survey: See the Announcements page Today Conceptual overview of distributed systems System models Reading Today: Chapter 2 of Coulouris Next topic: client-side processing (HTML,
More informationIntroduction to Grid Technology
Introduction to Grid Technology B.Ramamurthy 1 Arthur C Clarke s Laws (two of many) Any sufficiently advanced technology is indistinguishable from magic." "The only way of discovering the limits of the
More informationDistribution 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 informationReal-time & Embedded Systems Workshop July 2007 Building Successful Real-time Distributed Systems in Java
Real-time & Embedded Systems Workshop July 2007 Building Successful Real-time Distributed Systems in Java Andrew Foster Product Manager PrismTech Corporation The Case for Java in Enterprise Real-Time Systems
More informationUNIT 4 CORBA 4/2/2013 Middleware 59
UNIT 4 CORBA 4/2/2013 Middleware 59 CORBA AN OBJECT ORIENTED RPC MECHANISM HELPS TO DEVELOP DISTRIBUTED SYTEMS IN DIFF. PLATFORMS OBJECTS WRITTEN IN DIFF., LANG, CAN BE CALLED BY OBJECTS WRITTEN IN ANOTHER
More informationMigration to Service Oriented Architecture Using Web Services Whitepaper
WHITE PAPER Migration to Service Oriented Architecture Using Web Services Whitepaper Copyright 2004-2006, HCL Technologies Limited All Rights Reserved. cross platform GUI for web services Table of Contents
More informationSoftware MEIC. (Lesson 20)
Software Architecture @ MEIC (Lesson 20) Last class C&C styles Multi-tier style Dynamic reconfiguration style Peer-to-Peer style Today C&C styles Publish-subscribe style Service-oriented architecture style
More informationLesson 19 Software engineering aspects
Lesson 19 Software engineering aspects Service Oriented Architectures Security Module 4 - Architectures Unit 1 Architectural features Ernesto Damiani Università di Milano SOA is HAD HAD is an old concept
More informationChapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design
Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design
More informationDistributed Technologies - overview & GIPSY Communication Procedure
DEPARTMENT OF COMPUTER SCIENCE CONCORDIA UNIVERSITY Distributed Technologies - overview & GIPSY Communication Procedure by Emil Vassev June 09, 2003 Index 1. Distributed Applications 2. Distributed Component
More informationADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE
ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE Dave Clarke 1 THIS LECTURE At the end of this lecture you will know notations for expressing software architecture the design principles of cohesion
More informationSolace JMS Broker Delivers Highest Throughput for Persistent and Non-Persistent Delivery
Solace JMS Broker Delivers Highest Throughput for Persistent and Non-Persistent Delivery Java Message Service (JMS) is a standardized messaging interface that has become a pervasive part of the IT landscape
More information~ Ian Hunneybell: CBSD Revision Notes (07/06/2006) ~
1 Component: Szyperski s definition of a component: A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can
More informationApplication Servers in E-Commerce Applications
Application Servers in E-Commerce Applications Péter Mileff 1, Károly Nehéz 2 1 PhD student, 2 PhD, Department of Information Engineering, University of Miskolc Abstract Nowadays there is a growing demand
More informationSimple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer
Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Minimal List Common Syntax is provided by XML To allow remote sites to interact with each other: 1. A common
More informationXML Web Services Basics
MSDN Home XML Web Services Basics Page Options Roger Wolter Microsoft Corporation December 2001 Summary: An overview of the value of XML Web services for developers, with introductions to SOAP, WSDL, and
More informationElectronic Payment Systems (1) E-cash
Electronic Payment Systems (1) Payment systems based on direct payment between customer and merchant. a) Paying in cash. b) Using a check. c) Using a credit card. Lecture 24, page 1 E-cash The principle
More informationRequirements for TINA Platform towards Information Sharing Business. Long-term Trend of Telephone Business
TINA 99 Hawaii, USA: DPE Workshop 1 Requirements for TINA Platform towards Information Sharing Business April 12 1999 KITAMI, Kenichi NTT Information Sharing Laboratory Group Long-term Trend of Telephone
More informationSoftware Architectures
Software Architectures Distributed Systems L-A Sistemi Distribuiti L-A Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic Year 2008/2009
More informationAQUILA. Project Defense. Sandeep Misra. (IST ) Development of C++ Client for a Java QoS API based on CORBA
AQUILA (IST-1999-10077) Adaptive Resource Control for QoS Using an IP-based Layered Architecture Project Defense Development of C++ Client for a Java QoS API based on CORBA http://www-st st.inf..inf.tu-dresden.de/aquila/
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationLecture 15: Frameworks for Application-layer Communications
Lecture 15: Frameworks for Application-layer Communications Prof. Shervin Shirmohammadi SITE, University of Ottawa Fall 2005 CEG 4183 15-1 Background We have seen previously that: Applications need to
More informationComponent-based software engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1
Component-based software engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Objectives To explain that CBSE is concerned with developing standardised components and
More informationToday: Distributed Middleware. Middleware
Today: Distributed Middleware Middleware concepts Case study: CORBA Lecture 24, page 1 Middleware Software layer between application and the OS Provides useful services to the application Abstracts out
More informationID2208 Programming Web Services
ID2208 Programming Web Services http://people.kth.se/~misha/id2208 /index Mihhail Matskin: misha@kth.se Spring 2015 Course info http://people.kth.se/~misha/id2208/index Coordinator Mihhail Matskin misha@kth.se
More informationDistributed KIDS Labs 1
Distributed Databases @ KIDS Labs 1 Distributed Database System A distributed database system consists of loosely coupled sites that share no physical component Appears to user as a single system Database
More informationClient Server & Distributed System. A Basic Introduction
Client Server & Distributed System A Basic Introduction 1 Client Server Architecture A network architecture in which each computer or process on the network is either a client or a server. Source: http://webopedia.lycos.com
More informationChapter 16. Layering a computing infrastructure
: Chapter 16 by David G. Messerschmitt Layering a computing infrastructure Applications Application components Middleware Operating system Network 2 1 Spanning layer Application Distributed object management
More informationMiddleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004
Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication
More informationDISTRIBUTED COMPUTING
UNIT 1 DISTRIBUTED COMPUTING Distributing Computing is a type of computing in which different components and objects comprising an application can be located on different computers connected to network
More informationRemote Invocation Vladimir Vlassov and Johan Montelius
KTH ROYAL INSTITUTE OF TECHNOLOGY Middleware Remote Invocation Vladimir Vlassov and Johan Montelius Application layer Remote invocation / indirect communication Socket layer Network layer ID2201 DISTRIBUTED
More information02 - Distributed Systems
02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/58 Definition Distributed Systems Distributed System is
More informationCHAPTER 1 Fundamentals of Distributed System. Issues in designing Distributed System
CHAPTER 1 Fundamentals of Distributed System Introduction Distributed Computing Models Software Concepts Issues in designing Distributed System Client Server Model 1 What is a Distributed System? Tanenbaum
More informationChapter 18. Software Reuse
Chapter 18 Software Reuse Ian Sommerville Lutz Prechelt Ian Sommerville 2004, Software Engineering, 7th edition, prechelt@inf.fu-berlin.de 1 Objectives To explain the benefits of software reuse and some
More informationIntroduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio)
Introduction to Distributed Systems INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio) August 28, 2018 Outline Definition of a distributed system Goals of a distributed system Implications of distributed
More informationDistributed Objects and Remote Invocation. Programming Models for Distributed Applications
Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure
More informationSoftware Architectures
Software Architectures Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica: Scienza e Ingegneria (DISI) Alma Mater Studiorum Università di Bologna
More informationTopics in Object-Oriented Design Patterns
Software design Topics in Object-Oriented Design Patterns Material mainly from the book Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides; slides originally by Spiros Mancoridis;
More informationCourse Content. Object-Oriented Databases. Objectives of Lecture 6. CMPUT 391: Object Oriented Databases. Dr. Osmar R. Zaïane. University of Alberta 4
Database Management Systems Fall 2001 CMPUT 391: Object Oriented Databases Dr. Osmar R. Zaïane University of Alberta Chapter 25 of Textbook Course Content Introduction Database Design Theory Query Processing
More informationJAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University)
Estd: 1994 Department of Computer Science and Engineering Subject code : IT1402 Year/Sem: IV/VII Subject Name JAYARAM COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli - 621014 (An approved
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationSoftware. Networked multimedia. Buffering of media streams. Causes of multimedia. Browser based architecture. Programming
1 Software Networked multimedia Introduction Browser based software architecture Distributed software Servers Network Terminals User interface Middleware Communications Network multimedia can be defined
More informationObjectives. Architectural Design. Software architecture. Topics covered. Architectural design. Advantages of explicit architecture
Objectives Architectural Design To introduce architectural design and to discuss its importance To explain the architectural design decisions that have to be made To introduce three complementary architectural
More informationRESTful Web service composition with BPEL for REST
RESTful Web service composition with BPEL for REST Cesare Pautasso Data & Knowledge Engineering (2009) 2010-05-04 Seul-Ki Lee Contents Introduction Background Design principles of RESTful Web service BPEL
More information5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered
Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process
More informationIntegrating Legacy Assets Using J2EE Web Services
Integrating Legacy Assets Using J2EE Web Services Jonathan Maron Oracle Corporation Page Agenda SOA-based Enterprise Integration J2EE Integration Scenarios J2CA and Web Services Service Enabling Legacy
More informationDistributed Objects. Object-Oriented Application Development
Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming
More informationDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Chapter 09 (version 27th November 2001) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.
More informationGustavo Alonso, ETH Zürich. Web services: Concepts, Architectures and Applications - Chapter 1 2
Chapter 1: Distributed Information Systems Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 1 Design
More informationThe Impact of SOA Policy-Based Computing on C2 Interoperation and Computing. R. Paul, W. T. Tsai, Jay Bayne
The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing R. Paul, W. T. Tsai, Jay Bayne 1 Table of Content Introduction Service-Oriented Computing Acceptance of SOA within DOD Policy-based
More informationObject Persistence Design Guidelines
Object Persistence Design Guidelines Motivation Design guideline supports architects and developers in design and development issues of binding object-oriented applications to data sources The major task
More information