27
Architectural Decision Making; What Happens Behind the Scenes? by Gerrit Muller Buskerud University College e-mail: [email protected] www.gaudisite.nl Abstract Many decisions are taken during the architecting of a system. The question is what are architectural decisions? And what is the process behind making these decisions? The expectations of the stakeholders will be discussed. The actual way of working of architects will be described. Distribution This article or presentation is written as part of the Gaudí project. The Gaudí project philosophy is to improve by obtaining frequent feedback. Frequent feedback is pursued by an open creation process. This document is published as intermediate or nearly mature version to get feedback. Further distribution is allowed as long as the document remains complete and unchanged. October 20, 2017 status: draft version: 0.2 architecture decision system architect

Architectural Decision Making; What Happens Behind · PDF fileArchitectural Decision Making; What Happens Behind the Scenes? by Gerrit Muller Buskerud University College ... Java SQL

Embed Size (px)

Citation preview

Architectural Decision Making; What Happens Behind theScenes?

by Gerrit Muller Buskerud University Collegee-mail: [email protected]

www.gaudisite.nl

Abstract

Many decisions are taken during the architecting of a system. The question iswhat are architectural decisions? And what is the process behind making thesedecisions? The expectations of the stakeholders will be discussed. The actualway of working of architects will be described.

Distribution

This article or presentation is written as part of the Gaudí project. The Gaudí projectphilosophy is to improve by obtaining frequent feedback. Frequent feedback is pursued by anopen creation process. This document is published as intermediate or nearly mature versionto get feedback. Further distribution is allowed as long as the document remains completeand unchanged.

October 20, 2017status: draftversion: 0.2

architecture decision

system

architect

Figure Of ContentsTM

architecture decision

system

architect

Architectural Decision Making; What Happens Behind the Scenes?2 Gerrit Muller

version: 0.2October 20, 2017

ADMpresentationIcon

Buzzword, Hype, Solution or What?

architecture decision

system

architect

Architectural Decision Making; What Happens Behind the Scenes?3 Gerrit Muller

version: 0.2October 20, 2017

ADMpresentationIconArchitecture

What is Architecture?

market, business, technology

process, product

components

(implementations)

API's

OS file system

bus memory I/O

infrastructurehttp DVB IPTV

WMA MP3 JPEG

standards

audio

pipeline

message

routing

whiteboard

communication

concepts

layer n !calls n-k; k>1

layer n !calls n+k; k>0

high level rules

customers environment

Java

SQL

FPGAtechnology

domain

codification

overarching vision

Spec Design

DesignDesign

SpecSpec

specifications

guidance

monitoring

indicators

Mark all applicable boxes

other...

performance

reliability

costrisk

functionality

power

Architectural Decision Making; What Happens Behind the Scenes?4 Gerrit Muller

version: 0.2October 20, 2017

HMPAwhatIsArchitecture

Architecture vs Description

Architecture

Subset of which architect is aware

Architecture description

Actually written by architect(s)

Flattened into

Architectural Decision Making; What Happens Behind the Scenes?5 Gerrit Muller

version: 0.2October 20, 2017

VCarchitectureDescription

My View on Architecture

Do the right things

Do the things right

HowGuiding

WhyUnderstanding

WhatDescribing

Architectural Decision Making; What Happens Behind the Scenes?6 Gerrit Muller

version: 0.2October 20, 2017

LWAwhatIsArchitecture

”Guiding How” by providing rules for:

4. Infra-

structure

2. Construction

Decomposition

3. Allocation

5. Choice of

integrating

concepts

1. Functional

Decomposition

tunerframe-

bufferMPEG

DS

PCPU RAM

drivers scheduler OS

etc

audio video TXTfile-

systemnetworkingetc.

view play browse

storage

acquisition compress encoding

displayde-

compressdecoding

Resource

usagePerformance

Exception

handling

Device

abstraction

Pipeline

Architectural Decision Making; What Happens Behind the Scenes?7 Gerrit Muller

version: 0.2October 20, 2017

LWAarchitectureHow

The Art of Architecting

Intuition, assumptions, beliefs, bias

Expectations

Facts

Architecture(s)

Architecture

Architect(s)

Stakeholders

analyze

assess

balance

trade-off

decide

vision

overview

insight

understanding

Architecting

problems, legacy

uncertainties

unknowns

Facts, Expectations and

Intuition may be false

Integration requires a

critical mindset that is alert

for unknowns

Architectural Decision Making; What Happens Behind the Scenes?8 Gerrit Muller

version: 0.2October 20, 2017

LWAarchitecting

Another Buzzword or Solution?

architecture decision

system

architect

Architectural Decision Making; What Happens Behind the Scenes?9 Gerrit Muller

version: 0.2October 20, 2017

ADMpresentationIconDecision

Question

How many (architectural) decisionsdoes an architect make?

Architectural Decision Making; What Happens Behind the Scenes?10 Gerrit Muller

version: 0.2October 20, 2017

Decision Making Process

1. Problem understanding

2. Analysis

3. Decision

4. Monitor, verify, validate

insu

fficie

nt d

ata

no

sa

tisfy

ing

so

lutio

n

inva

lida

ted

so

lutio

n

co

nflic

ting

oth

er d

ecis

ion

vague problem statement

Architectural Decision Making; What Happens Behind the Scenes?11 Gerrit Muller

version: 0.2October 20, 2017ADMdecisionFlow

Decision Making Process Annotated

1. Problem understanding by

exploration and simple models

2. Analysis by

+ exploring multiple propositions (specification + design proposals)

+ exploring decision criteria (by evaluation of proposition feedback)

+ assessment of propositions against criteria

3. Decision by

+ review and agree on analysis

+ communicate and document

4. Monitor, verify, validate by

+ measurements and testing

+ assessment of other decisions

insu

fficie

nt d

ata

no

sa

tisfy

ing

so

lutio

n

inva

lida

ted

so

lutio

n

co

nflic

ting

oth

er d

ecis

ion

vague problem statement

Architectural Decision Making; What Happens Behind the Scenes?12 Gerrit Muller

version: 0.2October 20, 2017TORdecisionFlow

Graph of Decisions and Alternatives

scope of architect's considerations

communication scope

past decision

most probable decision potential alternative less probable alternative

legend

time now

Architectural Decision Making; What Happens Behind the Scenes?13 Gerrit Muller

version: 0.2October 20, 2017ADMdecisionTree

Different Types of Decisions

How Guiding

Why Understanding

What Describing

basic principles requirements

architecture rules implementation choices

f.i. technology

Architectural Decision Making; What Happens Behind the Scenes?14 Gerrit Muller

version: 0.2October 20, 2017

ADMdecisions

Many Decisions are taken in the Dark

fact

ual k

now

ledg

e

deci

sion

impa

ct

time

Highest impact decisions are taken while the least factual knowledge is available

Architectural Decision Making; What Happens Behind the Scenes?15 Gerrit Muller

version: 0.2October 20, 2017

ADMdecisionFoundation

Chicken or Egg?

decision

action

trigg

ers

prov

ides

dat

a

wai

t for

de

cisi

on

wai

t for

kn

owle

dge

Architectural Decision Making; What Happens Behind the Scenes?16 Gerrit Muller

version: 0.2October 20, 2017

ADMchickenOrEgg

Why Project Leaders Sometimes don’t like Architects

decision

action

trigg

ers

prov

ides

dat

a

wai

t for

de

cisi

on

wai

t for

kn

owle

dge

Highest impact decisions are taken while the least factual knowledge is available

Facts, Expectations and Intuition might be false

Intuition

Expectations

Facts

Architecture(s) Architecture

Architect(s)

Stakeholders

analyze assess balance trade-off decide

vision overview

insight understanding

Architecting

decision - action chicken or egg?

number of decision taken

perc

eive

d pr

ogre

ss

fact

ual k

now

ledg

e

deci

sion

impa

ct

time

by project leader

by system architect

Architectural Decision Making; What Happens Behind the Scenes?17 Gerrit Muller

version: 0.2October 20, 2017

ADMperceivedProgress

Bottom-line is a Working System

architecture decision

system

architect

Architectural Decision Making; What Happens Behind the Scenes?18 Gerrit Muller

version: 0.2October 20, 2017

ADMpresentationIconSystem

Decisions Are Related

C ustomer objectives

A pplication F unctional C onceptual R ealization

why? what?

how? how? what?

why?

how?

why?

wha

t ho

w?

Architectural Decision Making; What Happens Behind the Scenes?19 Gerrit Muller

version: 0.2October 20, 2017

ADMdecisionNetwork

Worse, Decisions Are Heavily Related

Customer

objectives

Application Functional Conceptual Realization

Architectural Decision Making; What Happens Behind the Scenes?20 Gerrit Muller

version: 0.2October 20, 2017

TORnetworkedIssues

Architecting is much more than Decomposition

Decomposition

is "easy"

Integration is

difficult

Architectural Decision Making; What Happens Behind the Scenes?21 Gerrit Muller

version: 0.2October 20, 2017

LWAdecompositionAndIntegration

In Documentation Terms

system

subsystem subsystem subsystem �� � � � ���� ���� �� ���� �� �� � � � �

qualities e.g. performance

minutes 1 decision 1 decision 2 decision 3

minutes 2 decision 4 decision 5 decision 6

minutes k decision n decision n+1 decision n+2

's or structured

Architectural Decision Making; What Happens Behind the Scenes?22 Gerrit Muller

version: 0.2October 20, 2017

ADMdocumentation

Revisiting Architecture

architecture decision

system

architect

Architectural Decision Making; What Happens Behind the Scenes?23 Gerrit Muller

version: 0.2October 20, 2017

ADMpresentationIconArchitecture

Fundamental Question

emerging from

preconceived

creation context

environment

architecture

system

architect

decision = or

=

or

=

all

Is ?

Architectural Decision Making; What Happens Behind the Scenes?24 Gerrit Muller

version: 0.2October 20, 2017

ADMarchitectureRevisited

The End

Back-up Slides and Answers only after this Slide

Architectural Decision Making; What Happens Behind the Scenes?25 Gerrit Muller

version: 0.2October 20, 2017

Quantification from “The Role and Task of the System Architect”

driving views

shared issues

touched details

seen details

real-world facts

10

102

104

107

infinite

Quantityper year

(order-of-

magnitude)

architect

time per

item

100 h

1 h

10 min

meetings

consolidation

in

deliverables

informal

contacts

product details

sampling

scanning

0.1105

0.5

1 sec106

1010

Architectural Decision Making; What Happens Behind the Scenes?26 Gerrit Muller

version: 0.2October 20, 2017

RSAdetailHierarchy

Quantification from “Architectural Thinking”

10 0

10 1

10 6

10 5

10 4

10 3

10 2

10 7

num

ber o

f de

tails

stre

tch

mon

o-

disc

iplin

ary

stre

tch

syst

em

stre

tch

subs

yste

m o

r fu

nctio

n

100 10 1

Architectural Decision Making; What Happens Behind the Scenes?27 Gerrit Muller

version: 0.2October 20, 2017

ATmentalDynamicRange