System and Software Architectures Ed Green

79
System and Software Architectures Ed Green Pennsylvania State University The Abington College June 7, 2022

description

 

Transcript of System and Software Architectures Ed Green

Page 1: System and Software Architectures Ed Green

System and Software Architectures

Ed GreenPennsylvania State

UniversityThe Abington College

April 10, 2023

Page 2: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 2

Types of Architectures Physical – reflects the hardware elements Logical – reflects the software elements Network – reflects the communications

topology elements Application – reflects the decomposition of

each application into objects and components Data – models the enterprise based upon its

data subjects Interface – describes how key architectural

components interact or interoperate with each other

Integration – reflects the combination of physical, logical, network, and applications into one common view

Page 3: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 3

Understanding the Environment Each architecture element must be

well understood– Components of each will help to develop

the integrated picture• Some components will appear in more than one

depiction• Inclusion may be required for clarity

Each kind of architecture must be understood “in context”– Need a frame of reference– Architectures do not exist in a vacuum – Dependence on business framework and

architecture

Page 4: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 4

Architecture – a Definition Technical blueprint that illustrates the

deployment of services across a topology

Description of the interoperation among the service components

Identification of specific products that can be or are being used to implement the blueprint

Process of specific steps to be achieved to implement the technical blueprint

Page 5: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 5

Opening Round – Some Definitions Topology – the depiction showing where

component elements of the architecture are located

Component – an identifiable part of the architecture

Application – an information system that is intended to solve a specific problem– Architecture-oriented– Enterprise-oriented

System – set of things working together to achieve a goal or objective– Information System – a set of computer modules

working in concert with people to meet a goal/objective of providing accurate and timely information that supports business analysis and/or decision making

Page 6: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 6

Elements of Architecture Services

– Whatservices?

Topology– Located

where?

Process– Done how?

CommunicationServices

Operating System Services

Operating

System

Services

Hardware

Hardware

Security Services

Security

Service

System

&

Network

Mgmt

Services

System and Network Management Services

ConnectivityServices

Object ManagementServices

DistributionSupport Services

Physical Network

Subnetworking

Signalingand Control

Transport

Common Transport Semantics

Network Services

SECURITY

SERVICES

Applicationand

ApplicationEnablingServices

Distributed SystemsServices

Data InterchangeServices

Data Management Services

PresentationServices

Applications

Application DevelopmentServices

Object/ComponentServices

ApplicationWorkgroup

andCollaboration

Services

Foun

datio

n

Ser

vice

s

Page 7: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 7

Network Architecture

Page 8: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 8

Network Architecture – Backbone of the Architecture Explains the communications configuration

– What elements will be used for communication? Defines the topology of the architecture

– Where will these communications be located? Describes the routing

– How will data get from one node to the next?– Considers alternatives

• Transportation model

Addresses protocols– What is the communications mechanism?– Are multiple protocols used and is translation

needed?

Page 9: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 9

Transportation Model “Import” from Operations Research

– Developed originally to optimize routing of freight hauling vehicles (trains and trucks)

– Represents a realistic algorithm set that directs transports to the path of least obstruction

• Minimum Traffic• Minimum delays

Example– A shipment of Volkswagens arrives at the Port of

Baltimore. These cars are to be shipped to various locations across the United States, including Pittsburgh, Fort Wayne, Kansas City, Denver, and Missoula. What is the optimal route?

– At each city, what is the best route to the next stop based on all routing conditions?

• Traffic• Construction• Weather

Page 10: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 10

Applying the Transportation Model NORNE, a large energy services

company, has business centers located in Baltimore, Pittsburgh, Fort Wayne, Kansas City, Denver, and Missoula. Payroll for the entire company is processed at the Baltimore computer center. Individual time and attendance data is collected for employees at individual locations and then forwarded to Baltimore. Since payroll is a time critical application, time and attendance data must arrive in a timely manner.

Page 11: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 11

Applying the Transportation Model

Which route will the data take?

Page 12: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 12

Applying the Transportation Model Route not predictable in advance

– Will vary based on conditions Will follow “path of least resistance”

– ALL network managers work to minimize latency and maximize throughput

Data will depart from a given node with– Next node identified– General itinerary

General itinerary identified upon arrival at destination– Routing re-planned should conditions

warrant

Page 13: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 13

Components of Network Architectures Routers – a physical or logical device that

determines the next network point to which a packet should be forwarded– Connected to at least two networks– Decision based on current understanding of

network state• Table of routing alternatives and current conditions

– Located at any gateway Gateway – the place where one network

or network segment meets another Switch – a physical or logical device that

redirects a packet from one network segment to another

Page 14: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 14

Components of Network Architecture Bandwidth – the capacity of a

network measured in terms of throughput rate– Gigabits per second

TCP/IP communications language of the internet

Packet – the “data unit” that is transported from one node to another

Page 15: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 15

Network Architecture – Showing the Components

Mainframe Router

LocalServers

Router

Local ServersWith Clients

Page 16: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 16

Network Architecture – Showing the Topology

Mainframe Router

LocalServers

Router Local Servers

With Clients

Page 17: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 17

Network Architecture – Mapping to ProductsNetwork

NodeCompone

ntVendor Model Technical

Spec’s

Sh

ou

ld h

ave

ven

dor’

s U

RL

Page 18: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 18

Physical Architecture

Page 19: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 19

Physical Architecture – Computers and Things Identifies the hardware components

that are used in the architecture Also identifies various sub-components

– Workstations and “dumb” terminals– Secondary storage

• Disks• Tapes• RAID• Optical storage

– Communications processors Describes component connectivity May include key technical specifications

Page 20: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 20

Physical Architecture – What is Involved? Data center components Office environment

components– Includes integrated laboratory

components Central data collection

components Central display components

Page 21: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 21

Physical Architecture – View of a Typical Environment

Clients

Web Server

ApplicationServers

Data Server

Page 22: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 22

Physical Architecture in a Typical Enterprise

Factory

Office

Lab Stores

Page 23: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 23

Physical Architecture – What it Really Involves What workstations or

terminals?– How many (of each)?

What server(s)?– How many?

What separate configurable items?– Disk– Tape– Printers– Monitors

Page 24: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 24

Physical Architecture – The Keys Physical Architecture is not just a list of

computers Physical Architecture requires the

identification and specification of all separately configurable computer hardware components

Physical Architecture includes all physical components in Network Architecture

Physical Architecture must identify connectivity

Physical Architecture should be mapped to topology

Page 25: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 25

Physical Architecture – The Keys Physical Architecture should

be based on capacity plan– Growth expectations included– Expansion understood

Physical Architecture should be based on guidelines and standards– Seek a common denominator– Embrace heterogeneity – before it

eats you alive

Page 26: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 26

Physical Architecture – Mapping to ProductsNetwork

NodeCompone

ntVendor Model Technical

Spec’s

Sh

ou

ld h

ave

ven

dor’

s U

RL

Page 27: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 27

Logical Architecture

Page 28: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 28

Logical Architecture Shows the configuration of software

– Operating System(s)– Network Manager(s)

• Browsers

– Data and Database Manager(s)– Compilers/Interpreters– Service Utilities– Security Services– System Management Tools– Development and Test Tools– Applications

System-wide and local views– Product-specific

Page 29: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 29

Importance of the Logical Architecture Consistency

– Must align to physical architecture assignment

Interoperability– Bounds (or, at least defines)

requirements for software compatibility Management

– Number of instances– Number of licenses– Number of users– Cost basis

Page 30: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 30

Logical Architecture – a First Look – the Framework

Operating System

Network Managers

Data/DatabaseManagers

Applications

Compilers andInterpreters

Development andTest Tools

Service UtilitiesSystem Management

Tools

Security Services

Browsers

Page 31: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 31

A Logical Architecture Exists at Every Node

Recalling the distributedtopology described in anearlier chart involving:•Baltimore•Pittsburgh•Fort Wayne•Kansas City•Denver•MissoulaIt is important to notethat the logicalarchitecture must exist ateach node

Operating System

Network Managers

Data/DatabaseManagers

Applications

Compilers andInterpreters

Development andTest Tools

Service UtilitiesSystem Management

Tools

Security Services

Browsers

Page 32: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 32

Node Specific Logical Architecture Framework only constant Products likely to be different

– By brand– By version within brand

Reflect the character of the enterprise– Degree to which stovepipe environments exist

• Impact of M & A (mergers and acquisitions)• Divisional, departmental, and workgroup

independence

– Technology heritage– Experience base– Strategic partnerships and relationships– Management strategies

Page 33: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 33

Logical Architecture – a Case to Consider NORNE, the large energy company

mentioned earlier, was formed as the result of a “merger of equals” involving six local energy companies. Each of the partner companies had its own logical architecture. The new NORNE used a “best of breed” approach to select the logical architecture for resulting environment given the presumption that the physical architecture was to be reused.

Page 34: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 34

Logical Architecture – a Case to Consider

Baltimore Pittsburgh Fort Wayne Kansas City Denver Missoula

Physical Architecture

IBM S/390 SUN E450 Gateway Hewkett Packard

Sun E10000 Dell

Operating System

VM/CMS; MVS

Solaris V7.1 Windows NT 4.0

HP-UX Solaris V7.2 Windows 2000

Network Manager

SNA TCP/IP TCP/IP TCP/IP Ethernet TCP/IP

Browsers TSO; CICS; Tuxedo

Netscape Netscape Netscape Netscape Internet Explorer

Data/Database Manager

IMS; DB2 Informix; Sybase; DB2

Oracle Sybase DB2 SQL Server

Compilers / Interpreters

FORTRAN; COBOL; C

C; C++; Java C; C++; COBOL

C; Java C; COBOL; Java

C; C++

Service Utilities

Platinum; Tivoli

BMC, Sun BMC Tivoli; BMC BMC None

Security Services

None X.500 Active Directory

X.500 X.500 Active Directory

System Management Tools

Standard IBM

Unicenter None Unicenter; OPENVIEW

Tivoli None

Development and Test Tools

None Powerbuilder

Developer 2000Designer 2000

PoertbuilderERwin; BPwin

ERwin; BPwin;

None

Page 35: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 35

Logical Architecture – Presenting the Case Clearly complex Some overlap but no

consistency– Each node different

Present each node independently

Summarize the net result

Page 36: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 36

Logical Architecture Displayed

IBM S/390

VM/CMS; MVS

SNA

IMS; DB2

Applications

FORTRANCOBOL;

CNone

Platinum; Tivoli Standard IBM

None

TSO; CICS; Tuxedo

IBM S/390

SUN E450

Solaris V 7.1

TCP/IP

InformixSybase DB2

Applications

CC++Java

Powerbuilder

BMC; Sun Unicenter

X.500

Netscape

SUN E450

Windows NT 4.0

TCP/IP

Oracle

Applications

CC++

Cobol

Designer 2000Developer 2000

BMC Unicenter

Active Directory

Netscape

Gateway

Gateway

Hewlwtt-PackardHP-UX

TCP/IP

Sybase

Applications

CJava

PowerbuilderERwinBPwin

TivoliBMC

UnicenterOPENVIEW

X.500

Netscape

Hewlwtt-Packard

Solaris V 7.2

Ethernet

DB2

Applications

CCOBOL

Java

ERwinBPwin

BMC Tivoli

X.500

Netscape

SUN E10000

Windows 2000

TCP/IP

SQL Server

Applications

CC++

None

None None

Active Directory

Internet Explorer

Dell

Key: Model, page 30

Page 37: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 37

Application Architecture

Page 38: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 38

Application Architecture Reflects the decomposition of

applications into objects and components

Every application has an architecture Application architecture mirrors

decomposition of business processes and functionality– Functional rather than technical– Not product specific (generally speaking)

• Exception may be when a COTS* product is used to provide application functionality

* COTS Commercial Off The Shelf

Page 39: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 39

Decomposition of Applications Applications comprised of a set

of subcomponents – Analogous to the systems of the

human body Subcomponents can be further

decomposed until objects and modules are identified– Organization structure model

Page 40: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 40

Decomposition of Applications

Application

FunctionFunctionFunction

ReusableReusableObjectsObjects

TasksTasks

ProgramsPrograms

Page 41: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 41

Application Architecture – Considerations Applications exist to support the

accomplishment of a business process– MUST logically mirror “how business gets done”– MUST improve accuracy and timeliness

• Applications have been funded to improve productivity

Programs most closely align with functional tasks– Not (necessarily) a 1::1 relationship

• Can be M::M– One task may require more than one program– One program may support achievement of several tasks

– Constructed from library of reusable objects• Logic to execute an atomic business process

Page 42: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 42

Application Architecture - Considerations Computer programs must associate

product technology dependencies– COTS facilitation– Compilers/interpreters– Data managers– Library services

• Including repositories and/or data dictionary services

Computer programs must understand data architecture– Conceptual data model– Logical data model– Physical data model

Page 43: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 43

Depicting the Applications Architecture

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARYLIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

TasksTasks

RedRed

WhiteWhite

BlueBlue

PrograProgramm

Page 44: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 44

Depicting the Application Architecture – Level of Detail At the application level

– Must show all functions (subsystems) At the function (subsystem) level

– Must show all tasks– Tasks may occur in more than one

subsystem (e.g., Reporting) At the task level

– Must show all programs– Programs may be used to support more

than one task At the program level]

– Must show all engaged components

Page 45: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 45

Presenting the Application Architecture Not depicting in context

detracts from value– Follow the “application structure

tree”– Use hyperlinks to call up details

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

Hyperlink

Page 46: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 46

Data Architecture

Page 47: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 47

Data Architecture Representation of the enterprise in terms

of its data Primary concern – data as a managed asset

– Data only non-renewable information asset– Data only irreplaceable information asset

Secondary concern – data stores– Databases– Data Warehouses– Archives– Files

Not concerned with DBMS software and supporting utilities– Considered as part of Logical Architecture

Page 48: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 48

Subject Data (or, Data Subjects) Robert Holland circa 1979 – 1980

– An enterprise can be represented by modeling its data

– An enterprise can be initially decomposed into data subjects

• Represent a major enterprise focus area• Decomposable

– Iterative until “atomic level” of data has been reached– Complexity of decomposition is a function of the

enterprise• Enterprise size• Enterprise diversity

– Data will “overlap” across data subjects• Basis for identifying relationships amongst data

Foundation for developing the conceptual data model

Page 49: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 49

Data Models Conceptual data model

– Logical groupings of data (ENTITIES)– Relationships among entities– NO physical characteristics– Normalized (to at least BCNF*)

Logical data model– Ascribes physical characteristics to conceptual model

• Data type• Data size

– Identifies initial values and/or value ranges– De-normalized based on performance requirements

Physical data model– Describes the logical model in terms of the DBMS or

file management software to be used for implementation

*BCNF *BCNF Backus-Codd Normal Form Backus-Codd Normal Form

Page 50: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 50

Data Distribution Data models describe relationships

– Independent of data usage Data usage organization or enterprise

dependent– Depends on business rules, processes, and

topology• Distributed organizations tend to distribute

processing• Data must be proximate to where it is processed

– Minimize network traffic– Optimize network capacity

– Data must be available• Accessible• Reliable• Current to established standards• Maintainable

Page 51: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 51

Data Architecture Issues and Constraints Database must be recoverable in

the event of failure– Backing up of the database must be

practical Database must be available to

users during published hours Data must be available to meet

functional needs Data must be grouped to optimize

processing throughput

Page 52: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 52

Organization of Data Categories

– Distribution• Distributing the contents of the database across several

system nodes– Replication

• Repeating the contents of all or part of the database across several system nodes

– Mirroring• Making an image copy of the database (or a part) at the

same node• Provides an online backup for the database when

continuous processing is required– Segmentation

• Organizing the database is sections so as to optimize processing

Tables, views, indexes, tablespaces, databases etc are domain of DBMS’s

Page 53: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 53

Distributed DatabasesWith distributed databases, a different segment of the database is stored at each of several nodes.

Page 54: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 54

Replicated DatabasesWith replicated databases, all or part of the database content exists at more than one systemnode. In this example, three parts of the database are replicated at two sites each and three are not replicated.

Database

Page 55: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 55

Mirroring Image copy of all or part of the

database Located at the same node

– Differs from replication • Different node

Intended to provide real time continuity

Database

Mirror

Page 56: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 56

Segmentation

Technique for grouping data in a way that logically supports processing requirements

Can be used in conjunction with– Distribution– Replication– Mirroring

Frequently application dependent

Page 57: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 57

Other Aspects of Data Architecture Physical files

– File assignment• What data groupings exist within a given

physical file?

– File allocation• What physical files reside on which physical

storage devices?

– Compatibility or conflict• Contention for I/O services

Database sizing must be a factor

Page 58: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 58

Data Architecture Impacts and Implications

Distributed

Database

Replicated

Database

MirroredDatabas

e

Segmented

Database

File Assign &Allocatio

n

Database

Sizing

DatabaseBackup

DatabaseRecovery

DatabaseReorg’tn

User Queries

User Updates

ArchitectureActivity

Explain how each architecture feature impacts the various

activities involving the database.

Explain how each architecture feature impacts the various

activities involving the database.

Page 59: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 59

Interface Architecture

Page 60: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 60

Interface Architecture Describes the interfaces among

architecture components– Abstraction– Encapsulation

Focus on software– Applications within the Application

Architecture– Access to COTS* software packages

Provides information to elevate understanding to the interface level– Details of interface participants less

relevant*Commercial Off the Shelf

Page 61: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 61

Interface Architecture: Context Diagram View

ApplicationApplicationSystemSystem

Input

Input

Output

Output

Interfaces are sometimes described in terms ofInterfaces are sometimes described in terms of“goesinto” and “goesoutof” constructs“goesinto” and “goesoutof” constructs

Page 62: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 62

Interface Architecture: Understanding the Components An interface exists whenever two

processing components communicate with each other– Example - Application program with database

management system via DML*

An interface involves sharing between two processing components– Data– Business rules and logic

An interface involves two and only two processing components– Many components may share a generalized ICD**

*Data Manipulation Language**Interface Context Definition

Page 63: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 63

Interface Architecture: By way of Explanation

ApplicationApplication22

ApplicationApplication11

Data Store Data Store

Each interface isEach interface isunique based onunique based onthe particular the particular requirementsrequirements

Page 64: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 64

Abstraction

The destination application has no need to know any more information than is contained in the interface– Subroutine parameter list– Module invocation– Query construct

Page 65: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 65

Encapsulation The knowledge of the source application

is limited to the information published by the source application

NOT possible to know any more about the internal workings of the source application than the published interface

Encapsulation typical of – Operating systems– Database management systems– COTS application packages (e.g., SAP/R3)– System management tools

Page 66: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 66

Interface Architecture: An Example NORNE (the large energy

conglomerate described earlier) has selected SAP/R3 as its ERM* tool. As an ERM tool, SAP/R3 provides a payroll processing module (SAP/PR). However, the SAP/R3 designers have decided that the responsibility for preparing pay check advisories and initiating direct deposit processing is the responsibility of the client

*ERM – Enterprise Resource Management

Page 67: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 67

Interface Architecture: An Example SAP/R3 is a closely coupled COTS application

product– Fully encapsulated– Published interfaces

• ABAP• BAPI

NORNE has legacy program(s)– Prepare pay check advisories– Initiate direct deposit processing

ACH has published interfaces– Automated Clearing House– Manages funds transfer from payer account to

payee account

Programming languages that describe the interface(s) and transformations

Page 68: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 68

Interface Architecture: An Example

NORNENORNEPaycheckPaycheckProgramProgram

SAP/PRSAP/PR

ACHACH

Published interfacefrom SAP

ABAP or BAPIABAP or BAPI

Published interfacefrom NORNE

ABAP or BAPIcode executes thelogic required topass data betweenthe programs

Even

t trig

ger; d

ata;

Even

t trig

ger; d

ata;

ackn

owle

dgemen

t

ackn

owle

dgemen

t

Published interfacefrom ACH

Published interfacefrom NORNE

Message-based Interface

BanksBanks Published interfacefrom ACH

Event trigger;

data

Event trigger;

dataMessage-based Interface

Page 69: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 69

Interface Architecture: Capturing the Rules

Target ApplicationsTarget ApplicationsS

ou

rce

Ap

plicati

on

s

Interface Rules Go HereInterface Rules Go Here

Page 70: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 70

Integration Architecture

Page 71: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 71

Integration Architecture High-level framework that shows

relationship of component architectures– Network– Physical– Logical– Application– Data– Interface

Initial profile subject to “drill down”

Page 72: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 72

Integration Architecture: Topology

Start by showing the topologyStart by showing the topologyand connectivity of the environmentand connectivity of the environment

Page 73: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 73

Integration Architecture: Network Components

Mainframe Router

LocalServers

Router Local Servers

With Clients

Show how the network Show how the network architecture maps to the architecture maps to the topologytopology

Page 74: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 74

Integration Architecture: Physical Components

Clients

Web Server

ApplicationServers

Data Server

Establish a hyperlink Establish a hyperlink from each location in from each location in the topology that the topology that provides a detailed provides a detailed configuration of what configuration of what physical components physical components are at that specific are at that specific locationlocation

Page 75: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 75

Integration Architecture: Logical Components

Clients

Web Server

ApplicationServers

Data Server

Establish a hyperlink Establish a hyperlink from each location in from each location in the topology that the topology that provides a detailed provides a detailed configuration of what configuration of what physical components physical components are at that specific are at that specific locationlocation

Operating System

Network Managers

Data/DatabaseManagers

Applications

Compilers andInterpreters

Development andTest Tools

Service UtilitiesSystem Management

Tools

Security Services

Browsers

Establish a hyperlink Establish a hyperlink from each physical from each physical architecture architecture component to the component to the logical architecture logical architecture on that componenton that component

Page 76: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 76

Integration Architecture: Application Components

Clients

Web Server

ApplicationServers

Data Server

Establish a hyperlink Establish a hyperlink from each location in from each location in the topology that the topology that provides a detailed provides a detailed configuration of what configuration of what physical components physical components are at that specific are at that specific locationlocation

Operating System

Network Managers

Data/DatabaseManagers

Applications

Compilers andInterpreters

Development andTest Tools

Service UtilitiesSystem Management

Tools

Security Services

Browsers

Establish a Establish a hyperlink from hyperlink from each physical each physical architecture architecture component to the component to the logical logical architecture on architecture on that componentthat component

Application

FunctionFunctionFunction

ReusableReusableObjectsObjects

TasksTasks

ProgramsPrograms

Establish a hyperlinkEstablish a hyperlinkto the applicationto the applicationdecomposition at adecomposition at aparticular locationparticular location

Page 77: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 77

Integration Architecture: Data Components

Clients

Web Server

ApplicationServers

Data Server

Establish a hyperlink Establish a hyperlink from each location in from each location in the topology that the topology that provides a detailed provides a detailed configuration of what configuration of what physical components physical components are at that specific are at that specific locationlocation

Operating System

Network Managers

Data/DatabaseManagers

Applications

Compilers andInterpreters

Development andTest Tools

Service UtilitiesSystem Management

Tools

Security Services

Browsers

Establish a Establish a hyperlink from hyperlink from each physical each physical architecture architecture component to the component to the logical logical architecture on architecture on that componentthat component

Establish a hyperlinkEstablish a hyperlinkto the applicationto the applicationdecomposition at adecomposition at aparticular locationparticular location

Application

FunctionFunctionFunction

ReusableReusableObjectsObjects

TasksTasks

ProgramsPrograms

ReplicatedReplicatedMirroredMirrored

DistributedDistributed

Establish a hyperlink

Establish a hyperlink

to the data component

to the data component

on each physical

on each physical

architecture component

architecture component

Page 78: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 78

Integration Architecture: Interface Components Interface rules

– Associated with each object• Independent• Reusable

Application

FunctionFunctionFunction

ReusableReusableObjectsObjects

TasksTasks

ProgramsPrograms

•For each component inFor each component in the application architecture, the application architecture, create a hyperlink that statescreate a hyperlink that states the public interface rules the public interface rules

DBMSREUSABLE

OBJECT

LIBRARY

LIB

RA

RY

SER

VIC

ES

LOCAL LOGIC

Page 79: System and Software Architectures Ed Green

April 10, 2023 System and Software Architectures 79

Types of Architectures Physical – reflects the hardware elements Logical – reflects the software elements Network – reflects the communications

topology elements Application – reflects the decomposition of

each application into objects and components Data – models the enterprise based upon its

data subjects Interface – describes how key architectural

components interact or interoperate with each other

Integration – reflects the combination of physical, logical, network, and applications into one common view

Together, they tell the story of an enterprise’s IT environmentTogether, they tell the story of an enterprise’s IT environment