Top Banner
Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department of Mathematics and Computer Science Virginia State University September 20, 2012
37

Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

Dec 22, 2015

Download

Documents

Lily Miles
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 2: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 3: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 4: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 5: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 6: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 7: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 8: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 9: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 10: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 11: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 12: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 13: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 14: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 15: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 16: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 17: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 18: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 19: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 20: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 21: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 22: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 23: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 24: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 25: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 26: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 27: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 28: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 29: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 30: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 31: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 32: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 33: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 34: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 35: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 36: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)
Page 37: Copyright © 1997 by Rational Software Corporation An Overview of Network-Centric Software Architectures (Adapted from Dr. Osman Balci) Sung Hee Park Department.

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)