Architects and Architectures

73
Architects and Architectures

description

Architects and Architectures. Definitions. System A group of interrelated elements forming a collective entity Architecture A style and method of design and construction. What is System Architecture?. - PowerPoint PPT Presentation

Transcript of Architects and Architectures

Page 1: Architects and Architectures

Architects and Architectures

Page 2: Architects and Architectures

2

Definitions

System A group of interrelated elements forming a collective

entity Architecture

A style and method of design and construction

Page 3: Architects and Architectures

3

What is System Architecture?

A set of agreed-to methods, standards, and techniques that promote both efficient division of responsibility and increased functional reliability while building complex functions from simple components.

A holistic set of models that represent an enterprise’s information systems in order to manage change.

Exercise: Give an example of a system architecture. Analyse how it supports the two definitions

Page 4: Architects and Architectures

4

Everyday Example

System architectures are everywhere and can be recognized by standards bodies, government regulation, or commodity products

Eg: food health and safety regulations, building codes, consumer electronics

Page 5: Architects and Architectures

5

Bringing Home a New TV

A television relies upon two systems Electrical distribution Broadcast distribution

The consumer has an application and relies upon these systems implicitly

Page 6: Architects and Architectures

6

Reliability

Standards: voltage, plug configuration, fusing, codes

Methods: metropolitan distribution, long-line transmission, generation

So, the customer doesn’t check the wiring before plugging in the TV

Page 7: Architects and Architectures

7

Modularity

Standard interfaces allow architectures to upgrade components as needs or technologies change

Broadcast has changed several times over the lifetime of TV

Page 8: Architects and Architectures

8

TV Architecture Changes

Film

Program

Broadcast

Display

Black & White

Film

Program

Broadcast

Display

Colour

Film

Program

Broadcast

Display

Satellite

Film

Program

Broadcast

Display

Pay Per View

Page 9: Architects and Architectures

9

Architectures Enable Change

Designers can add new standards within an existing framework and create new services

Migration to new services is gradual and modular – not sudden and universal

Page 10: Architects and Architectures

10

Enterprise Systems

Goals of a systems architecture for enterprise systems include: Smooth flow of transactional information across multiple systems Accountability and security through elimination of custom

interfaces or manual processes Access to current information aggregated across organizational

domains Improve systems incrementally

Goal to be like Lego™ bricks Fit together easily Easy to recombine in different ways Flexible to solve many different problems

Page 11: Architects and Architectures

11

Architecture Examples

Architectures can exist at an individual layer of the technology stack or span multiple layers. Any organisation will utilise multiple architectures.

The following are examples of architectures that are used in organisations. Client/server - widely used and relies and clients that request services

and servers that respond to these requests. The workload is shared and distributed.

Peer-to-peer – networked computers share resources, every system is equal.

Wireless (mobile) – allow communication from remote locations.

Page 12: Architects and Architectures

12

The role of the architect

The architect develops plans based on a vision of the requirements for the system which is a blueprint of the company’s systems.

This “blueprint” is used for translating business strategy into a plan for IT.

Architect Must understand what is expected from business. Must clearly communicate between technology and business

Page 13: Architects and Architectures

13

Some relevant questions for architects

What IT architecture is already in place? Is the company developing the IT architecture from scratch?

Is the company replacing an existing architecture? Does the company need to work within the confines of an

existing architecture?

Is the company expanding an existing architecture?

Page 14: Architects and Architectures

14

Understanding existing architecture

Understanding existing architecture allows managers to evaluate the IT requirements of an evolving business strategy vs. their current IT.

Plans for the future architecture can then be compared with the current infrastructure to help identify which components of the current system can be used in the system being developed.

Plan for existing architecture Analyse the existing architecture and infrastructure Analyse the strategy served by the existing architecture. Analyse the ability of the existing architecture and infrastructure to

further the current strategic goals.

Page 15: Architects and Architectures

15

Understanding time scales Strategic Time Frame

What is the life span of the system?

Technological Advances Can the infrastructure and architecture support these advances?

E.g. SOA (Service Oriented Architecture) defines a service or an interface as a reusable piece of software.

Growth Requirements Will it meet future demand? Is it scalable?

Page 16: Architects and Architectures

16

Evaluate on expected financial value. Can be difficult to quantify.

Steps Quantify costs Determine the anticipated life cycles of system components Quantify benefits Quantify risks Consider ongoing dollar costs and benefits

Assessing Financial Issues

Page 17: Architects and Architectures

17

Scalability. Standards. Maintainability. IT staff skill set.

Assessing Technical Issues

Page 18: Architects and Architectures

Two histories of enterprise computing

18

Page 19: Architects and Architectures

19

A history of enterprise computing I: Calculation systems

1950s-80s Single purpose Eliminate tedious human work Examples: Payroll, General ledger, Inventory Technology used: Mainframes, magnetic

tapes, batch processing

Page 20: Architects and Architectures

20

A history of enterprise computing II: Functional systems

1975-2001 (say) Use computers to improve operations Applications: Human resources, order entry,

manufacturing resource planning Technologies: Mainframes, PC’s, LAN’s

Page 21: Architects and Architectures

21

Functional systems

Typically contained within a department Islands of automation Applications independently developed and deployed Driving force: availability of mini-computers

Page 22: Architects and Architectures

22

Functional system applications

Human resources System Accounting and finance systems Sales and marketing System Operations management System Manufacturing Systems

Page 23: Architects and Architectures

23

History part III: Pressures on business forced integration It becomes less and less possible to think about isolated

systems. The world is becoming more joined up.

eCommerce Need to allow access to customers

Out sourcing Need to integrate with 3rd party systems

Mergers and acquisitions Regulation

Post-9/11 and Sarbanes-Oxley requires must better integration and reporting

Post-credit crunch regulation still emerging

Page 24: Architects and Architectures

24

Organisational systems

2000-date (say) Use computers to drive efficiency and support control

across organisations and beyond to partners and suppliers

Applications: Risk management, customer relationship management, supply chain management

Technologies: Middleware, business intelligence, data integration technologies

Page 25: Architects and Architectures

25

Types of Organizational information Systems

Administrative systems Scheduling / Transaction systems Value oriented systems Reporting and controlling systems Analysis and information systems Planning and decision support systems

Page 26: Architects and Architectures

Exercise

Each group chose a different business function within the organisation.

Define how a customer will be represented. Personal details 1 or more details specific to your selected business function

26

Page 27: Architects and Architectures

27

Problems with function based application

Sharing of data between systems Data duplication Data inconsistency Applications that don’t talk to one

another Limited or lack of integrated information Isolated decisions lead to overall

inefficiencies Increased expenses

Stovepipe systems

HR Sales

Manufacturing

Page 28: Architects and Architectures

28

An architectural history of computing

1 tier architecture monolithic Information Systems presentation, application logic, and resource management

were merged into a single tier 2 tier architecture

separation of presentation tier from other 2 tiers (app + resource)

became popular as 'client/server' systems 3 tier architecture

can be achieved by separating RM (resource management) from application logic tier

Page 29: Architects and Architectures

29

Tiers of an architecture

<html>...</html>

browser

Presentation tier

Application logic tier

Resource management tier

Client

info

rmat

ion

sys

tem

Visualise

Calculate

Store

Page 30: Architects and Architectures

30

Presentation Tier

How the data should appear to the user and how the user should interact with the interface

Page 31: Architects and Architectures

31

Application Logic Tier

Data Processing (Business Logic & calculation)

Here the algorithms are implemented This tier is often referred to as

Services Business logic Business rules Server

Page 32: Architects and Architectures

32

Resource Management Layer

Deals with and implements different data sources of Information Systems

The 'data layer' in a restricted interpretation as in JEE (aka J2EE) or Database Management System

Can also be a gateway to recursively using other Information systems

Page 33: Architects and Architectures

33

1 – Tier Architectures

Monolithic Information Systems

Presentation, application logic, and resource management were merged into a single tier

Many of these 'old' Systems are still in use!

Page 34: Architects and Architectures

34

Design of 1 – Tier Architecture

Presentation layer

Application logic layer

Resource management layer

Client

info

rmat

ion

sys

tem

Advantages: easy to optimise performance no context switching no compatibility issues no client development,

maintenance and deployment cost

Disadvantages: monolithic pieces of code (high

maintenance) hard to modify lack of qualified programmers for

these systems

Page 35: Architects and Architectures

35

2 - Tier Architectures

fig 1.7 p.12

Client

Info

rmat

ion

sys

tem

Resource management layer

Application logic layer

Ser

ver

Presentation layer

Page 36: Architects and Architectures

36

2 - Tier Architectures

Separation of presentation layer from other 2 layers (app + resource)

Client/server systems with thin clients/fat clients Use RPC (Remote Procedure Call) to communicate between

tiers Need for standardisation for inter-tier communication

Advantages portability no need for context switches or calls between component for key

operations Disadvantages

limited scalability legacy problems (blown up clients)

Page 37: Architects and Architectures

37

3 - Tier Architectures

info

rmat

ion

sys

tem

resource management layer

application logic layer

middleware

client

presentationlayer

Page 38: Architects and Architectures

38

3 - Tier Architectures

Separating RM (resource management) from application logic layer

Additional middleware layer between client and server integration logic application logic

Lead to the introduction of clear RM layer interfaces

Good at dealing with integration of different resources

Page 39: Architects and Architectures

39

Business logic resides in middle tier Alternatives

Client tier leads to Fat clients Reimplementing it for each different type of client Redistributing clients after each software update

Data tier leads to Vendor and technology dependence grows Different applications have different needs for the same data Performance issues in resource usage

Page 40: Architects and Architectures

40

3 - Tier Architectures

Advantages scalability by running each layer on a different server scalability by distributing AL (application logic layer) across many

nodes additional tier for integration logic Flexibility

Disadvantages performance loss if distributed over the internet problem when integrating different 3 – tier systems

Page 41: Architects and Architectures

41

3 - tier Architectures

info

rmat

ion

sys

tem

resource management layer

application logic layer

middleware

client

presentationlayer

GUI clientsC++, VB, Java

MiddlewareServer

Databases Legacy Systems

Page 42: Architects and Architectures

42

Middleware Middleware refers to the software which is common to multiple

applications and builds on the network transport services to enable ready development of new applications and network services.

Middleware typically includes a set of components such as resources and services that can be utilised by applications either individually or in various subsets. Examples of services: Security, Directory and naming, end-to-end

quality of service, support for mobile code. Examples:

OMG’s CORBA J2EE - Java 2 Enterprise Edition Microsoft’s .Net

Page 43: Architects and Architectures

43

Middleware features

Allows communication through a standard language across different platforms between legacy and modern applications

Takes care of transactions between servers data conversion authentication communications between computers

Page 44: Architects and Architectures

44

Middleware features Provides runtime environment for components in the middle-

tier Component lifecyle and management Transaction, event and security services Provides connections to databases, mainframes and legacy

systems

Separates client-tier from the data source Clean separation of user-interfaces and presentation logic from

the data source

Page 45: Architects and Architectures

45

n -tier

fig 1.12 p. 20

info

rmat

ion

sys

tem

resource management layer

Web server

HTML filter

presentation layer

Web browser

client

application logic layermiddleware

2 cases of n – tier Systems linked with

added connectivity through the internet

Resource layer is a full fledged 2 - or 3 - tier system

Page 46: Architects and Architectures

46

n - tier

[fig 1.13 p. 21]

databaseserver applicationfile

server

middlewareapplication

logic

middlewareapplication

logic

additional RM layers

middlewareapplication

logic

internalclients

Web servercluster

LANgateways

FIREWALL

INTERNET

remoteclient

remoteclient

remoteclient

remoteclient

remoteclient

remoteclient...

Page 47: Architects and Architectures

47

General benefits of adding tiers

With growing number of tiers one gains: flexibility functionality possibilities for distribution

But: Each tier increases communication costs Complexity rises leading to higher cost and risk

Higher complexity of development Higher complexity of management and tuning

Redundancy increases

Page 48: Architects and Architectures

Exercise

Why is performance a harder issue to resolve with n-tier systems than with 1-tier systems?

Identify 10 ways to improve performance in an n-tier system

48

Page 49: Architects and Architectures

49

Example: Resolving scalability in an n-tier architecture Use faster machine

Increases the ability to do more work in a unit of time by processing tasks more rapidly.

Applies to almost any nodes in the system (from edge servers to database server).

Need to analyse reasons for slow processing to correctly specify machine (i.e. CPU, networking, disk access, memory)

Cluster machines Splits up workload into managable chunks to obtain more predictible

response times. Applies to Web representation server, Web application server, the data

server and the network. Need to identify and address any data synchronisation issues between

clustered machines and select appropriate load balancing mechanisms.

Page 50: Architects and Architectures

50

Resolving scalability II

Use dedicated machines Improves efficiency of a component by using a special purpose machine,

which is optimised for a specific function Applies to edge server, Web presentation server, directory and security

servers, the network and the Internet firewall. Need to balance benefit of dedicated machine against potential increase

in network traffic (e.g. use of a centralised message transformation server could increase network load excessively.)

Segment the workload Services more client requests. improves response time through

parallelism Can be applied to Web presentation server, Web application server,

directory and security servers. Need to balance improved response time against increase network

latency and load. Also need to verify that segmentation across multiple machines is better than upgrading the individual server.

Page 51: Architects and Architectures

51

Resolving scalability III

Batch requests Reduces number of requests by defining new ones that combine multiple

requests. Applies to Web presentation server, Web application server, directory

and security servers, existing business applications and database. Need to analyse and verify where the benefits are coming from: reduced

network traffic or transactional overhead.

Aggregate user data Allows rapid access to large customer data controlled by existing system

applications by aggregating distributed customer data into a customer information service

Applies to the Web presentation server, Web application server and the network

Potential additional benefits of reduced data synchronisation issues.

Page 52: Architects and Architectures

52

Resolving scalability IV

Manage Connections Minimises number of connections and eliminates overhead of setting up

connections by sharing a pool of pre-established connections between the layers

Applies to Web presentation server, Web application server and the database.

Connection pooling can also be efficient from a software licensing perspective.

Cache data Improves performance and scalability and response time by buffering

data flows and reducing consumption of resources Applies to the edge server, Web presentation server, Web application

server, network, existing business applications and the database. Need to provide sufficient protection against out of date data being used

– depends on the application context and cache management software.

Page 53: Architects and Architectures

Classification of Information systems

Page 54: Architects and Architectures

54

Organisational Hierarchy

Organisational Structure and departmental organisation

Business processes

Classification of Information Systems

Page 55: Architects and Architectures

55SALES & MANUFACTURING FINANCE ACCOUNTING HUMAN

Types of system Groups Served

STRATEGIC LEVEL SENIOR MANAGERS

MANAGEMENT LEVEL MIDDLE MANAGERS

OPERATIONAL OPERATIONALLEVEL MANAGERS

KNOWLEDGE LEVEL KNOWLEDGE &DATA WORKERS

RESOURCESMARKETING & ENGINEERING

Information System from business perspective

Page 56: Architects and Architectures

56

Four General Kinds of IS

Operational-level systems support operational managers by monitoring the day-to-day’s

elementary activities and transactions of the organization. e.g. TPS.

Knowledge-level systems support knowledge and data workers in designing products,

distributing information, and coping with paperwork in an organization. e.g. KWS, OAS

Management-level systems support the monitoring, controlling, decision-making, and administrative

activities of middle managers. e.g. MIS, DSS

Strategic-level systems support long-range planning activities of senior management. e.g.

ESS

Page 57: Architects and Architectures

57SALES & MANUFACTURING FINANCE ACCOUNTING HUMAN

Types of system Groups Served

STRATEGIC LEVEL SENIOR MANAGERS

MANAGEMENT LEVEL MIDDLE MANAGERS

OPERATIONAL OPERATIONALLEVEL MANAGERS

KNOWLEDGE LEVEL KNOWLEDGE &DATA WORKERS

RESOURCESMARKETING & ENGINEERING

Horizontal information flows

Ver

tical

info

rmat

ion

flow

s

Information System from business perspective

Page 58: Architects and Architectures

58

Management Structures and Information Requirements

Higher up the pyramid, the less structured the decision Less defined External orientation More summarized information Future oriented Less frequent Less accurate

Lower down the pyramid, the more structured the decision More defined Internal orientation More detailed information Historical More frequent More accurate

Page 59: Architects and Architectures

59

A Framework for IS

• Executive Support Systems (ESS)• Management Information Systems (MIS)• Decision Support Systems (DSS)• Knowledge Work Systems (KWS)• Office Automation Systems (OAS)• Transaction Processing Systems (TPS)

Page 60: Architects and Architectures

60

Transaction Processing Systems Transaction Processing Systems (TPS)(TPS)

Computerized system that performs and records the Computerized system that performs and records the daily routine transactions necessary to conduct the daily routine transactions necessary to conduct the business; these systems serve the operational level of business; these systems serve the operational level of the organizationthe organization

• TYPE: Operational-levelTYPE: Operational-level• INPUTS: transactions, eventsINPUTS: transactions, events• PROCESSING: updatingPROCESSING: updating• OUTPUTS: detailed reportsOUTPUTS: detailed reports• USERS: operations personnel, supervisorsUSERS: operations personnel, supervisors• DECISION-MAKING: highly structuredDECISION-MAKING: highly structured

EXAMPLE:EXAMPLE: payroll, accounts payable payroll, accounts payable

Page 61: Architects and Architectures

61

Typical Applications of TPS

TYPE OF TPS SYSTEMSales/ Manufacturing! Finance/ Human Other typesmarketing production accounting resources (e.g., university)systems systems systems systems

Major functions Sales management Scheduling Budgeting Personnel recard Admissionsof system Market research Purchasing General ledger Benefits Grade records

Promotion Shipping/receiving Billing Cornpensation Course recordsPricing Engineering Cost accounting Labor relations AlumniNew products Operations Training

Major Sales order Materials resource General ledger Payroll Registration systemapplication information system planning systemssystems Market research Purchase order Accounts Employee records Student transcript

system control systems receivable/payable systemPricing system Engineering Budgeting Benefit systems Curriculum class

systems control systemsQuality control Funds management Career path Alumni benefactorsystems systems systems system

Page 62: Architects and Architectures

62

Office Automation Systems Office Automation Systems (OAS)(OAS)

Computer system, such as word processing, electronic mail system, and scheduling system, that is designed to increase the productivity of data workers in the office.

• TYPE: Knowledge-levelTYPE: Knowledge-level• INPUTS: documents, schedulesINPUTS: documents, schedules• PROCESSING: document management, scheduling, communicationPROCESSING: document management, scheduling, communication• OUTPUTS: documents; schedulesOUTPUTS: documents; schedules• USERS: clerical workersUSERS: clerical workers

EXAMPLE:EXAMPLE: document imaging system document imaging system

Page 63: Architects and Architectures

63

Decision Support Systems Decision Support Systems (DSS)(DSS) Information system at the management level of an organization that combines data and sophisticated analytical models or data analysis tools to support semi-structured and unstructured decision making.

•TYPE: Management-levelTYPE: Management-level• INPUTS: low volume dataINPUTS: low volume data• PROCESSING: simulations, analysis PROCESSING: simulations, analysis • OUTPUTS: decision analysisOUTPUTS: decision analysis• USERS: professionals, staff managersUSERS: professionals, staff managers• DECISION-MAKING: semi-structuredDECISION-MAKING: semi-structured

EXAMPLE:EXAMPLE: sales region analysis sales region analysis

Page 64: Architects and Architectures

64

Characteristics of Characteristics of Decision-Support SystemsDecision-Support Systems

1. DSS offer users flexibility, adaptability, and a quick response.

2. DSS operate with little or no assistance from professional programmers.

3. DSS provide support for decisions and problems whose solutions cannot be specified in advance.

4. DSS use sophisticated data analysis and modelling tools.

Page 65: Architects and Architectures

65

Management Information Management Information Systems (MIS)Systems (MIS)

Information system at the management level of an organization that serves the functions of planning, controlling, and decision making by providing routine summary and exception reports.

• TYPE: Management-levelTYPE: Management-level• INPUTS: high volume dataINPUTS: high volume data• PROCESSING: simple models PROCESSING: simple models • OUTPUTS: summary reportsOUTPUTS: summary reports• USERS: middle managersUSERS: middle managers• DECISION-MAKING: structured to semi-structuredDECISION-MAKING: structured to semi-structured

EXAMPLEEXAMPLE: annual budgeting: annual budgeting

Page 66: Architects and Architectures

66

Characteristics of Management Characteristics of Management information Systemsinformation Systems

1. MIS support structured decisions at the operational and management control levels. However, they are also useful for planning purposes of senior management staff.

2. MIS are generally reporting and control oriented. They are designed to report on existing operations and therefore to help provide day-to-day control of operations.

3. MIS rely an existing corporate data-and data flows.4. MIS have little analytical capability.5. MIS generally aid in decision making using past and present

data.6. MIS are relatively inflexible.7. MIS have an internal rather than an external orientation.

Page 67: Architects and Architectures

67

Executive Support Systems (ESS)Executive Support Systems (ESS)

Information system at the strategic level of an organization that address unstructured decision making through advanced graphics and communications.

TYPE: Strategic levelTYPE: Strategic level• INPUTS: aggregate data; internal and externalINPUTS: aggregate data; internal and external• PROCESSING: interactivePROCESSING: interactive• OUTPUTS: projectionsOUTPUTS: projections• USERS: senior managersUSERS: senior managers• DECISION-MAKING: highly unstructured DECISION-MAKING: highly unstructured

EXAMPLEEXAMPLE: 5 year operating plan: 5 year operating plan

Page 68: Architects and Architectures

68

A single software package like Microsoft Office or even an application like Microsoft Excel could be classified as any or all of the following: DSS, TPS, MIS, or ESS (albeit, a trivial ESS, DSS, etc.)

When considering classification, consider how the tool is used, not what it could be used for.

A tools meets a need posed by the enterprise A service is provided by the tool is a solution.

However, the world is not that However, the world is not that straight forwardstraight forward

Page 69: Architects and Architectures

69

Classification of ISby Organizational Structure

Departmental Information Systems Enterprise Information System Inter-organizational Systems

SWIFT (mostly network level) SABRE

Page 70: Architects and Architectures

70

Classification of ISby Functional Area

The accounting information system The finance information system The manufacturing (operations, production)

information system The marketing information system The human resources information system

Page 71: Architects and Architectures

71

e.g. Sales & Marketing Systems Systems that help the firm identify customers for the firm’s

products or services, develop products and services to meet customer’s needs, promote products and services, sell the products and services, and provide ongoing customer support.

EXAMPLESSystem Description Organizational LevelOrder processing Enter, process, and track orders OperationalMarket analysis Identify customers and markets using Knowledge

data on demographics, markets,consumer behavior, and trends

Pricing analysis Determine prices for products Managementand services

Page 72: Architects and Architectures

72

Classification of IS by Business Processes

A business process is a set of coordinated tasks and activities, conducted by both people and equipment, that will lead to accomplishing a specific organizational goal.

Business process management (BPM) is a systematic approach to improving those processes.

Page 73: Architects and Architectures

73

Examples of Business ProcessesFunctional Area Business ProcessManufacturing and production Assembling the product

Checking for qualityProducing bills of materials

Sales and marketing Identifying customersMaking customers aware of the productSelling the product

Finance and accounting paying creditorsCreating financial statementsManaging cash accounts

Human resources Hiring employeesEvaluating employees' job performanceEnrolling employees in benefits plans