Modeling Information Systems Architectures

100 downloads 369 Views 330KB Size Report
s Designing IS architectures s Architectural platforms ... Architecture of application software,. e.g. using data flow .
Modeling Information Systems Architectures Paul Grefen (DB|MA-IS-CS)|CTIT-UT [email protected]

Purpose of this lecture

The purpose of this lecture is not to present pre-cooked solutions to architectural problems, but rather to clarify architectural issues and discuss a number of important topics in this context.

Table of contents What are IS architectures ? ■ Aspects of IS architectures ■ Types of IS Architectures ■ Reference Architectures ■ Designing IS architectures ■ Architectural platforms ■ Conclusions ■

What are IS architectures ?

General architecture architectuur' (architektuur), v., 1. bouw kunst, de kunst en de leer van het ontw erpen en uitvoeren van bouw w erken; - toepassing daarvan: onder architectuur gebouw d, naar de plannen van een bekend architect; - 2. bouw stijl: G riekse architectuur; - 3. (fig.) bouw , constructie: de architectuur van de kaak (V estdijk); - 4. (m eton.) bouw sel(s), bouw w erk(en): voorbeelden van m oderne architectuur; Van Dale

Software architecture

The architecture of a software system defines that system in terms of computational components and interactions among those components. Software Architecture; Shaw & Garlan; Prentice Hall, 1996

Example architecture

Information system architecture

The architecture of an information system defines that system in terms of components and interactions among those components, from the viewpoint of specific aspects of that system, and based on specific structuring principles.

Interpreting IS architectures

Syntax: structure of the architecture ■ Semantics: meaning of components and interactions ■ Pragmatics: reasons behind structure & meaning ■

Aspects of IS Architectures

Aspects architecture

data

organization

communication

system

configuration

Truyens et al.; 1990

Data aspect architecture Architecture of data managed by systems, e.g. using (E)ER diagrams.

data

organisation

communication

system

configuration

System aspect architecture Architecture of application software, e.g. using data flow diagrams or module diagrams. 1

Req.

book trip

data

organisation

communication

system

configuration

2

4

proc. ackn.

proc. inv.

a trip data

b fin. data

3

5

proc. docs.

proc. paym.

Pay.

Configuration aspect architecture Architecture of hardware and low-level software (e.g. OS, DBMS), e.g. using configuration diagrams.

data

Oracle Oracle organisation

system

FlowMark FlowMark

UNIX UNIX SPARC SPARC

communication

configuration

Communication aspect architecture (I) Architecture of communication infrastructure (networks, communication software), using e.g. topology diagrams. OLD 3174

data

ES/9000 (HBS)

ES/9000 (APL)

2 Mb/s

3745

Commun. Controller

PDP 11/74 Haemodialyse Systeem

19,2 Kb/s

organisation

system

LOS 3174

Token Ring

3174 PMK

3174

communication

configuration

3174 Cluster Controller

PC Specialisten Systemen

PC PC

Communication aspect architecture (II) OLD 3174

ES/9000 (HBS)

ES/9000 (APL)

2 Mb/s

3745

Commun. Controller

PDP 11/74 Haemodialyse Systeem

19,2 Kb/s

LOS 3174

Token Ring

data

3174 PMK

organisation

communication

system

3174 configuration

3174 Cluster Controller

PC Specialisten Systemen

PC PC

Organization aspect architecture Architecture of organization structure and processes related to administration and maintenance of systems, using e.g. organigrams and procedure handbooks data

organisation

communication

system

configuration

A design path with aspects

start arch.: major apects combined

global arch.: major apects combined

Types of IS Architectures

Type of IS architectures Based on structuring principles: ■ Monolithic / Layered / Columned / OO ■ Single-Level versus Multi-Level Based on purpose: ■ Conceptual versus Technical ■ Application versus General System ■ Reference versus Concrete

Structuring principles (I)

Monolithic

Layered

Columned

Object-Oriented

and combinations

Structuring principles (II) Multi-level architectures: allow for multiple aggregation levels of functionality

Structuring principles (III)

Columned

Pipe

Syntax: several system modules in the same layer. Semantics: multiple subsystems at the same abstraction level using each others functionality. Pragmatics: separation of concerns (system arch.) or distribution (conf. arch.).

Purpose of architecture (I) Conceptual architecture: describes structure of conceptual design of system Technical architecture: describes structure of implementation of system

conceptual

technical

Purpose of architecture (II) Application: describes architecture for specific application and context General system: describes architecture for general application and context Concrete: describes architecture of a specific system to be directly applied Reference: describes blue-print of abstract system to be “concretized” before application

Reference Architectures

Reference architecture

A reference architecture is a general, abstract architecture that can be instantiated for specific situations. Instantiated = • filled in, detailed • parameterized, adapted • extended, selected

ISO-OSI reference architecture application presentation session transport network data link physical

Structure: layered Aspects: system configuration communication Pragmatics: standard interface levels for horizontal communication

ANSI/SPARC reference architecture

external model conceptual model internal model

Structure: layered Aspects: system data organization Pragmatics: separation between database levels for different purposes

ANSI/SPARC in DDBS Glob.Ext. Schema

Glob.Ext. Schema

Glob.Ext. Schema

Glob.Conc. Schema Fragm. Schema Alloc. Schema Loc.Map. Schema

Loc.Map. Schema

Loc.Map. Schema

Loc.Conc. Schema

Loc.Conc. Schema

Loc.Conc. Schema

Loc.Int. Schema

Loc.Int. Schema

Loc.Int. Schema

DB

DB

DB

Structure: idem Aspects: idem + communicat. Pragmatics: idem + distribution Connolly, Begg & Strachnan, 1995

WfMC reference architecture (I) Process Definition Tools IF1 Workflow API & Interchange Formats Adminstration & Mngmnt Tools

IF5

Workflow Engine(s)

IF4

Workflow Enactment Service IF2 Workflow Client Applications

IF3 Invoked Applications

Workflow Engine(s) Other WF Enactment Service(s)

WfMC reference architecture (II)

Process Process Definition Definition

Workflow Workflow Clients Clients

Administr. Administr. & &Mngmnt Mngmnt

Workflow Workflow Engine Engine Applications Applications Structure: first layered, then columned

Designing IS Architectures

Example architecture design Mercurius initiative (1995) ■ Purpose: specification of reference WFMS ■ Focus: detailed system architecture ■ Participants: 2 universities, polytechnic consultancy firm, financial institution ■

Mercurius architecture design principles

Flexibility (detail, aspect) ■ Top-down architecture design strategy ■ WF design versus WF enactment ■ Kernel versus additional functionality Positioning in context ■ Explicit interfaces to environment

Mercurius overall WFMS architecture organization

UIS

UIS

data stores

WF Design

WF Clients

AS/OS/ DBMS

WF Server

CS

DBMS

AS/OS

system

data data stores

communication

WF Server

configuration

Mercurius design module architecture UIS Interface

AS Interface

Extension Module software bus

WF Design Engine

DBMS Interface

organ. data

def. data

proc. data

appl. data

Mercurius design engine architecture Organisat. Design

organ. data

Global Design

Product Design

proc. data

Detail Design

def. data

appl. data

Tuning

Mercurius enactment module architecture AS

WFC Interface

AS Interface

WFS Engine

CS Interface

DBMS Interface

OS Interface

Extension Module software bus

organ. data

def. data

proc. data

man. data

appl. data

Mercurius enactment engine architecture W FC Interface

C lock M odu le

p roc. d ata

d ef. d ata

app l. d ata

E vent R eceptor

CS Interface

E vent A n alyzer

AS Interface

A ction S yn thesizer

softw are bus

A ction E xecutor OS Interface

Architectural Platforms

Distributed Object Architectures object model architecture vs. system model architecture ■ application object access vs. server system access ■ fine grain computation vs. coarse grain computation ■ transparent distribution vs. no/explicit distribution ■

Example architecture ‘traditional’ Workflow Client

Transaction Manager

Workflow Engine

trans data

case data

Example architecture a la DOA

client

transact.

transact.

client

case

case

scheduler

OMG-OMA Application Objects

Common Facilities

Object Request Broker

Object Services

Example architecture: WIDE WFMS

Global Trans. Man.

LTM Workflow Engine LT

GT

Local Trans. Interface

BAL

DBMS

Conclusions

Conclusions

✸ Modeling

of architectures of paramount importance CIS design ✸ Modeling of CIS architectures has many aspects ✸ Modeling of CIS architectures is a discipline that is in its infancy