copyright © 1997 by rational software corporation an overview of network-centric software...
TRANSCRIPT
Copyright copy 1997 by Rational Software Corporation
An Overview of Network-CentricSoftware Architectures
(Adapted from Dr Osman Balci)
Sung Hee Park
Department of Mathematics and Computer Science
Virginia State University
September 20 2012
Copyright copy 1997 by Rational Software Corporation
Network-Centric Software Architectures Major Network-Centric Software
Architectures 1 Client-Server Architecture (CSA) 2 Distributed Objects Architecture (DOA) 3 Peer-to-Peer Architecture (PPA) 4 Service-Oriented Architecture (SOA)
DoD Standard Description of Network-Centric Architectures DoD Architecture Framework (DoDAF)
Copyright copy 1997 by Rational Software Corporation
Client-Server Architecture (CSA)
Two industry software standards for CSA Java EE-based Client-Server Architecture
Sun (2007) ldquoThe Java Platformrdquo Sun Microsystems Inc Mountain View CA httpjavasuncom
NET-based Client-Server ArchitectureMicrosoft (2007) ldquoMicrosoft Platform NET Frameworkrdquo Microsoft Corporation Redmond WA httpwwwmicrosoftcomnet
Copyright copy 1997 by Rational Software Corporation
The Client-Server Software Infrastructure
Client Computer
Middleware Server Computer
Copyright copy 1997 by Rational Software Corporation
Definitions of Acronyms CMIP - Common Management Information Protocol DBMS ndash DataBase Management System GUI ndash Graphical User Interface IPXSPX - Internetwork Packet ExchangeSequenced Packet
Exchange IPXSPX is Novell NetWares proprietary communication protocol
NetBIOS - An acronym for Network Basic InputOutput System the original network API for MS-DOS
ODBC - Open DataBase Connectivity OLTP - On-Line Transaction Processing ORB - Object Request Broker SNA - System Network Architecture SNMP - Simple Network Management Protocol TCPIP - (Transmission Control Protocol Internet Protocol) - The
protocols or conventions that computers use to communicate over the Internet
TxRPC Transactional Remote Procedure Call
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Network-Centric Software Architectures Major Network-Centric Software
Architectures 1 Client-Server Architecture (CSA) 2 Distributed Objects Architecture (DOA) 3 Peer-to-Peer Architecture (PPA) 4 Service-Oriented Architecture (SOA)
DoD Standard Description of Network-Centric Architectures DoD Architecture Framework (DoDAF)
Copyright copy 1997 by Rational Software Corporation
Client-Server Architecture (CSA)
Two industry software standards for CSA Java EE-based Client-Server Architecture
Sun (2007) ldquoThe Java Platformrdquo Sun Microsystems Inc Mountain View CA httpjavasuncom
NET-based Client-Server ArchitectureMicrosoft (2007) ldquoMicrosoft Platform NET Frameworkrdquo Microsoft Corporation Redmond WA httpwwwmicrosoftcomnet
Copyright copy 1997 by Rational Software Corporation
The Client-Server Software Infrastructure
Client Computer
Middleware Server Computer
Copyright copy 1997 by Rational Software Corporation
Definitions of Acronyms CMIP - Common Management Information Protocol DBMS ndash DataBase Management System GUI ndash Graphical User Interface IPXSPX - Internetwork Packet ExchangeSequenced Packet
Exchange IPXSPX is Novell NetWares proprietary communication protocol
NetBIOS - An acronym for Network Basic InputOutput System the original network API for MS-DOS
ODBC - Open DataBase Connectivity OLTP - On-Line Transaction Processing ORB - Object Request Broker SNA - System Network Architecture SNMP - Simple Network Management Protocol TCPIP - (Transmission Control Protocol Internet Protocol) - The
protocols or conventions that computers use to communicate over the Internet
TxRPC Transactional Remote Procedure Call
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Client-Server Architecture (CSA)
Two industry software standards for CSA Java EE-based Client-Server Architecture
Sun (2007) ldquoThe Java Platformrdquo Sun Microsystems Inc Mountain View CA httpjavasuncom
NET-based Client-Server ArchitectureMicrosoft (2007) ldquoMicrosoft Platform NET Frameworkrdquo Microsoft Corporation Redmond WA httpwwwmicrosoftcomnet
Copyright copy 1997 by Rational Software Corporation
The Client-Server Software Infrastructure
Client Computer
Middleware Server Computer
Copyright copy 1997 by Rational Software Corporation
Definitions of Acronyms CMIP - Common Management Information Protocol DBMS ndash DataBase Management System GUI ndash Graphical User Interface IPXSPX - Internetwork Packet ExchangeSequenced Packet
Exchange IPXSPX is Novell NetWares proprietary communication protocol
NetBIOS - An acronym for Network Basic InputOutput System the original network API for MS-DOS
ODBC - Open DataBase Connectivity OLTP - On-Line Transaction Processing ORB - Object Request Broker SNA - System Network Architecture SNMP - Simple Network Management Protocol TCPIP - (Transmission Control Protocol Internet Protocol) - The
protocols or conventions that computers use to communicate over the Internet
TxRPC Transactional Remote Procedure Call
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
The Client-Server Software Infrastructure
Client Computer
Middleware Server Computer
Copyright copy 1997 by Rational Software Corporation
Definitions of Acronyms CMIP - Common Management Information Protocol DBMS ndash DataBase Management System GUI ndash Graphical User Interface IPXSPX - Internetwork Packet ExchangeSequenced Packet
Exchange IPXSPX is Novell NetWares proprietary communication protocol
NetBIOS - An acronym for Network Basic InputOutput System the original network API for MS-DOS
ODBC - Open DataBase Connectivity OLTP - On-Line Transaction Processing ORB - Object Request Broker SNA - System Network Architecture SNMP - Simple Network Management Protocol TCPIP - (Transmission Control Protocol Internet Protocol) - The
protocols or conventions that computers use to communicate over the Internet
TxRPC Transactional Remote Procedure Call
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Definitions of Acronyms CMIP - Common Management Information Protocol DBMS ndash DataBase Management System GUI ndash Graphical User Interface IPXSPX - Internetwork Packet ExchangeSequenced Packet
Exchange IPXSPX is Novell NetWares proprietary communication protocol
NetBIOS - An acronym for Network Basic InputOutput System the original network API for MS-DOS
ODBC - Open DataBase Connectivity OLTP - On-Line Transaction Processing ORB - Object Request Broker SNA - System Network Architecture SNMP - Simple Network Management Protocol TCPIP - (Transmission Control Protocol Internet Protocol) - The
protocols or conventions that computers use to communicate over the Internet
TxRPC Transactional Remote Procedure Call
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
A Client-Server (Two-Tier) Architecture
Client N Server Computer
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
A Client-Server Architecture with Example Components
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Example IBM Development and Deployment Environment
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
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
A thin-client computer accesses applications and data from a server
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
A fat-client computer includes an operating system and installed applications and can run either as a standalone or in a server environment
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Thin and Fat Clients Thin-Client Model
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 client-server 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
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Three-Tier Architecture SystemSoftware Architecture is used to Make buy decisions (acquisition) Discriminate between options Assist in ldquoDiscoveryrdquo of the true
requirements Drive one or more systems to a common
ldquouserdquo or purpose (system of systems) SystemSoftware Design is used to Develop systemsoftware components Build the systemsoftware Understand configuration changes as the
systemsoftware is modified
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
What is a Network-Centric System
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
An Example Network-Centric System of Systems
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Distributed Objects Architecture (DOA) 1 Common Object Request Broker
Architecture (CORBA)
Interface Definition Language (IDL) Object Request Broker (ORB)
2 Microsoftrsquos Distributed Component Object Model (DCOM)
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Emergence of New Areas
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 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
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
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
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Architecting Challenges
1048708 Application objects that are designed and implemented for an application 1048708 Standard objects that are defined by the OMG (Object Management Group) for a specific application domain eg insurance banking e-commerce 1048708 Fundamental CORBA services such as directories and security management 1048708 Horizontal CORBA facilities (ie cutting across applications) such as user interface facilities and system management facilities
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
CORBA Standards An object model for application objects where 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 (ORB) that manages requests for object services The ORB locates the object providing the service prepares it for the request sends the service request and returns the results to the requester
A set of general object services of use to many distributed applications such as directory services and transaction services
A set of common components built on top of these basic services
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
CORBA Objects CORBA objects are comparable in principle to
objects in C++ and Java CORBA objects must have a separate interface
definition that is expressed using a common language (IDL) similar to C++
There is a mapping from the IDL to programming languages such as C++ and Java
Therefore objects written in different languages can communicate with each other in a distributed heterogeneous system
CORBA objects have a unique identifier called an Interoperable Object Reference (IOR) This IOR is used when one object requests services from another
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Object Request Broker (ORB) bull o1 the calling object bull o2 the called object bull S(o1) services provided by object 1 bull S(o2) services provided by object 2 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
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
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 same 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
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
CORBA Services Naming and trading services
These allow objects to refer to and discover other objects on the network
Notification services These allow objects to notify other objects that an
event has occurred Objects may register their interest in a particular
event with the service and when that event occurs they are automatically notified
Transaction services These support atomic transactions and rollback on
failure Transactions are a fault-tolerance facility that
support recovery from errors during an update operation
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
An Example Composition of CSA and DOA
Client-Server Architecture
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architecture (PPA)
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Peer-to-Peer Architectures Peer to peer (p2p) systems are decentralized
systems where computations may be carried out by any node in the network
Examples File sharing systems Instant messaging systems such as ICQ
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
The logical network architecture Decentralized architecture Semi-centralized architecture
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Decentralized Peer-to-Peer Architecture
Assume that the above is a decentralized document management system used by a consortium of researchers to share documents and each member maintains his or her own document store
Someone issues a search request that is sent to other nodes For example if n1 issues a search for a document stored at n10 this search is routed through nodes n3 n6 and n9 to n10
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Semi-Centralized Peer-to-Peer Architecture
Under this architectureone or more nodes actas servers to facilitatenode communications
Assuming that the above system represents an instant messaging system the network nodes communicate with the server (indicated by dashed lines) to find out what other nodes are available
Once nodes are discovered direct communications can be established and the connection to the server becomes unnecessary Therefore nodes n2 n3 n5 and n6 are in direct communication
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Service-Oriented Architecture (SOA) XML eXtensible Markup Language TCPIP Transmission Control Protocol
Internet Protocol HTTP HyperText Transfer Protocol SOAP Simple Object Access
Protocol an XML-basedmessaging protocol usedto encode the informationin web service request andresponse messages beforesending them over a network
WSDL Web Services Description Language an XML-formatted language
used to describe a Web services capabilities UDDI Universal Description Discovery and Integration a web-based
distributed directory that enables listing of web services anddiscovering each other similar to a traditional phone booksyellow and white pages
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
Service-OrientedArchitecture
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
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-1 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF SV-2 Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Hierarchical Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning EnvironmentsDoDAF OV-5 Flow Diagram
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-
Copyright copy 1997 by Rational Software Corporation
SOA for Online Learning Environments DoDAF OV-6c Diagram of the ldquoRequest Available Servicesrdquo and ldquoRetrieve amp Send Available Servicesrdquo Activities (continued)
- An Overview of Network-Centric Software Architectures (Adapted
- Network-Centric Software Architectures
- Client-Server Architecture (CSA)
- The Client-Server Software Infrastructure
- Definitions of Acronyms
- A Client-Server (Two-Tier) Architecture
- A Client-Server Architecture with Example Components
- Example IBM Development and Deployment Environment
- Thin and Fat Clients
- Thin and Fat Clients (2)
- Three-Tier Architecture
- What is a Network-Centric System
- An Example Network-Centric System of Systems
- Distributed Objects Architecture (DOA)
- Emergence of New Areas
- Advantages of Distributed Object Architectures
- Architecting Challenges
- CORBA Standards
- CORBA Objects
- Object Request Broker (ORB)
- Inter-ORB Communications
- CORBA Services
- An Example Composition of CSA and DOA
- Peer-to-Peer Architecture (PPA)
- Peer-to-Peer Architectures
- Decentralized Peer-to-Peer Architecture
- Semi-Centralized Peer-to-Peer Architecture
- Service-Oriented Architecture (SOA)
- Service-Oriented Architecture
- SOA for Online Learning Environments DoDAF OV-1 Diagram
- SOA for Online Learning Environments DoDAF OV-2 Diagram
- SOA for Online Learning Environments DoDAF SV-1 Diagram
- SOA for Online Learning Environments DoDAF SV-2 Diagram
- SOA for Online Learning Environments DoDAF OV-5 Hierarchical D
- SOA for Online Learning Environments DoDAF OV-5 Flow Diagram
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th
- SOA for Online Learning Environments DoDAF OV-6c Diagram of th (2)
-