how to create a manageable platform architecture? · how to create a manageable platform...

58
How to Create a Manageable Platform Architecture? by Gerrit Muller University of Southeast Norway-NISE e-mail: [email protected] www.gaudisite.nl Abstract Today’s fast pace of the market and the technology development forces the product creators to rethink their development approach. One of the directions is to maximize the return on investments of frequently used functions, for instance by re-use, component based design or by a platform approach. The archi- tecting effort is a key success factor to combine re-use approaches with fast and innovative product creation. In this presentation we will present a case, discuss the role of the architecture, and elaborate the essential architecture ingredients for a successful platform creation, and evolution, and innovative product creation. 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. June 5, 2018 status: concept version: 1.0 Q: How to manage platform architectures? case architecting platform time dimension process market driven Recommendations

Upload: phungbao

Post on 22-May-2018

223 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

How to Create a Manageable Platform Architecture?by Gerrit Muller University of Southeast Norway-NISE

e-mail: [email protected]

Abstract

Today’s fast pace of the market and the technology development forces theproduct creators to rethink their development approach. One of the directionsis to maximize the return on investments of frequently used functions, for instanceby re-use, component based design or by a platform approach. The archi-tecting effort is a key success factor to combine re-use approaches with fast andinnovative product creation.In this presentation we will present a case, discuss the role of the architecture, andelaborate the essential architecture ingredients for a successful platform creation,and evolution, and innovative product creation.

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.

June 5, 2018status: conceptversion: 1.0

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market

driven

Recommendations

Page 2: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Presentation Outline

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market

driven

Recommendations

How to Create a Manageable Platform Architecture?2 Gerrit Muller

version: 1.0June 5, 2018HMPAoutline

Page 3: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Case Outline

case:

- company overview

- time line

- technology innovations

- 1991, 1992, 1994, and 1996

context, product(s) and design

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?3 Gerrit Muller

version: 1.0June 5, 2018

HMPAcaseOutline

Page 4: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Philips Medical Systems, schematic organization

Philips Medical Systems

Non X-ray modalities

Conventional X-ray

MR CT URF Surgery Cardio Vascular

Medical Imaging

Common X-ray

Components

US

How to Create a Manageable Platform Architecture?4 Gerrit Muller

version: 1.0June 5, 2018

PMSorganization

Page 5: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Phases of Medical Imaging

Advanced Development(”Common Viewing”)

1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000

Develop

ment of

1st

product

Parallel

Development of 2

nd product

Family

Development

Transformation in

re-useable components

Basic Application

plus toolboxes

Easyvision RF

Easyvision RF R2

Easyvision CT/MR

Easyvision Xray R1

Easyvision CT/MR R2

Easyvision RAD

EasyReview

Medical

Imaging

Platform

How to Create a Manageable Platform Architecture?5 Gerrit Muller

version: 1.0June 5, 2018

HMPAtimelineEasyvision

Page 6: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Technology innovations by Common Viewing

• standard UNIX based workstation

• full SW implementation, more flexible

• object oriented design and implementation (Objective-C)

• graphical User Interface, with windows, mouse et cetera

• call back scheduling, fine-grained notification

• data base engine, fast, reliable and robust

• extensive set of toolboxes

• property based configuration

• multiple co-ordinate spaces

How to Create a Manageable Platform Architecture?6 Gerrit Muller

version: 1.0June 5, 2018

IMItechnologyInnovations

Page 7: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Idealized layers September 1991

Standard Sun workstation

SunOS, SunView

Image Gfx UI DB

Basic Application

operating system

toolbox

hardware

user interface

legend

How to Create a Manageable Platform Architecture?7 Gerrit Muller

version: 1.0June 5, 2018

HMPAswLayers1991

Page 8: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

X-ray rooms from examination to reading around 1990

ExaminationRoom

ControlRoom

Corridoror closet

ExaminationRoom

ControlRoom

ReadingRoom

How to Create a Manageable Platform Architecture?8 Gerrit Muller

version: 1.0June 5, 2018

XRayRoomsOld

Page 9: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

X-ray rooms with Medical Imaging applied as printserver

ExaminationRoom

ControlRoom

ReadingRoom

Corridoror closet

ExaminationRoom

ControlRoom

printer

light box

detector

X ray

source console

How to Create a Manageable Platform Architecture?9 Gerrit Muller

version: 1.0June 5, 2018

XRayRoomsPlusPrintServer

Page 10: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Comparison screen copy vs optimized film

old: screen copy

20 to 50% less film needed

new: SW formatting

How to Create a Manageable Platform Architecture?10 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingFilmComparison

Page 11: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Idealized layers september 1992

DSI

3MRC

Desk, cabinets, cables, etc.

Standard IPX workstationDORHC

interf

RC

interf

SunOS

NIXRC

driver

HC

driver

DOR

driver

Spool HCU Store Image Gfx UI DBPMS-

net in

PMS-

net out

Medical Imaging R/F

Start

up

Install

Config

SW

keys

service

dev.

tools Print Store View Cluster

operating system

toolbox

hardware

application functions

user interface

connected system

SW infrastructure

legend

How to Create a Manageable Platform Architecture?11 Gerrit Muller

version: 1.0June 5, 2018

HMPAswLayers1992

Page 12: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Example Multi Planar Reconstruction

curved

slice

oblique

slices

How to Create a Manageable Platform Architecture?12 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingMPRexample

Page 13: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Idealized layers june 1994

MR CT DSI DCAS PCRnewHCU

3M

RC dials

Desk, cabinets, cables, etc.

Standard IPX or Sparcstation 5 workstationDORHC

interfRC dials

interf

Solaris

NIXRC dials driver

HC driver

DOR driver

CDSpack

Spool HCU Store Image Gfx UI DBPMS- net in

PMS- net out

Compose Print Store MPR View Export Cluster

MR CT RF Vascular Cardio PCR

Specialized applications(Dental, etcetera)

Medical Imaging R/FMedical Imaging CT/MR

Rad

Start up

Install

Config

SW keys

service

customization

remoteaccess

dev. tools

Specialized applications

How to Create a Manageable Platform Architecture?13 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingLayers1994

Page 14: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Example CT/MR department

MR Examination

room

CT Examination

room

Control

room

Control

room

"MPR"

room

ReadingRoom

How to Create a Manageable Platform Architecture?14 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingCTMRdepartment

Page 15: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Radiology Department

MR CT

URF Vascular

"MPR" CT

Printer RAD RAD RAD

ReadingRoom

Reception

Office

teaching

How to Create a Manageable Platform Architecture?15 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingRadiologyDepartment

Page 16: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Vision: Medical Imaging in Healthcare

MR CT

URF Vascular

"MPR" CT

Printer RAD RAD RAD

ReadingRoom

Reception

Office

teaching

Radiology department

Referring

Physician

Referring

Physician

Radiologist

at home

IT infrastructurein basement

Radiologist at

other hospital

Radiologist

somewhere

in the hospital

Conference room

Operating

theatre

trauma

room

How to Create a Manageable Platform Architecture?16 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingHealthcare

Page 17: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Idealized layers 1996

MR CT DSI DCAS PCRnewHCU

3M

RC dials

Desk, cabinets, cables, etc.

Standard Sparcstation 5 workstationDORHC

interfRC dials

interf

Solaris

NIXRC driver

HC driver

DOR driver

CDSpack

Spool HCU Store Image Gfx UI DBPMS- net in

PMS- net out

Compose Print Store MPR View Export Cluster

MR CT RF Vascular Cardio PCR

Specialized applications(Dental, bolus chase, cardio analysis, etcetera)

InterfacingRIS, etcetera

XRayCT/MRRadReviewImage Guided

SurgeryBack-ends

Start up

Install

Config

SW keys

service

customization

remoteaccess

dev. tools

How to Create a Manageable Platform Architecture?17 Gerrit Muller

version: 1.0June 5, 2018

MedicalImagingLayers1996

Page 18: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Architecting Outline

Architecting:

- What is Architecture?

- Architecture vs Description

- My View on Architecture

- ”Guiding How”

- The Art of Architecting

- More than Decomposition

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?18 Gerrit Muller

version: 1.0June 5, 2018

HMPAarchitectingOutline

Page 19: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

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

How to Create a Manageable Platform Architecture?19 Gerrit Muller

version: 1.0June 5, 2018

HMPAwhatIsArchitecture

Page 20: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Architecture vs Description

Architecture

Subset of which architect is aware

Architecture description

Actually written by architect(s)

Flattened into

How to Create a Manageable Platform Architecture?20 Gerrit Muller

version: 1.0June 5, 2018

VCarchitectureDescription

Page 21: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

My View on Architecture

Do the right things

Do the things right

HowGuiding

WhyUnderstanding

WhatDescribing

How to Create a Manageable Platform Architecture?21 Gerrit Muller

version: 1.0June 5, 2018

LWAwhatIsArchitecture

Page 22: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

”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

How to Create a Manageable Platform Architecture?22 Gerrit Muller

version: 1.0June 5, 2018

LWAarchitectureHow

Page 23: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

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

How to Create a Manageable Platform Architecture?23 Gerrit Muller

version: 1.0June 5, 2018

LWAarchitecting

Page 24: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Architecting is much more than Decomposition

Decomposition

is "easy"

Integration is

difficult

How to Create a Manageable Platform Architecture?24 Gerrit Muller

version: 1.0June 5, 2018

LWAdecompositionAndIntegration

Page 25: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Platform Outline

Platform:

- Why Platforms?

- What is a Platform?

- Platform Source Deliverables

- Example of Platform Efficiency

- Embedding Costs of Purchased SW

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?25 Gerrit Muller

version: 1.0June 5, 2018

HMPAplatformOutline

Page 26: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Why Platforms?

Customer value

Internal benefits

application adaptability

availability variations

new features originating

from different products

timely availability

reliability

increase economy

of scale

asset creation

availability of accumulated

feature set

design for

configurability

shared architectural

framework

quality increase

maturity

predictability

availability integrated

base product

Extrovert driver

Introvert driver

How to Create a Manageable Platform Architecture?26 Gerrit Muller

version: 1.0June 5, 2018

GDdrivers

Page 27: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

What is a Platform?

product platform

legend

pre-integrated

platform

P1 P2 P3

common

P1 P2 P3applications +

integration glue

components

applications +

integration glue

infrastructure

components

huge product integration effort

very flexible

low coupling

configuration management???

no product integration effort

not flexible

high coupling

configuration management

product

implementation

concepts

How to Create a Manageable Platform Architecture?27 Gerrit Muller

version: 1.0June 5, 2018

HMPAplatform

Page 28: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Platform Source Deliverables

code specifications

development

environment

documentation

tools

development

process

infrastructure

configuration

management

How to Create a Manageable Platform Architecture?28 Gerrit Muller

version: 1.0June 5, 2018

HMPAplatformDeliverablesSimplified

Page 29: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

And now in More Detail...

code specifications

development

environment

documentation

tools

development

process

infrastructure

configuration

management

test code&data

source code

target OS

purchased SW

generation recipes

compiler, linker, ...

dev. cluster OS

meta data (review, metrics)

customization

dev process support

code

problem reports

change requests

documentation

requirements

interfaces

design

reports

manuals

word processing

drawing

spreadsheets

publishing

management

How to Create a Manageable Platform Architecture?29 Gerrit Muller

version: 1.0June 5, 2018

HMPAplatformDeliverables

Page 30: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Example of Platform Efficiency

number of

people

people per

application

applications

platform

applications

1992 1993 199619951994

number of inputs

(a.o. modalities)

1value

metric

efficiency

total

1

4

5

52

13

8

10

35

27

62

8

16

15

37

35

72

5

32

38

41

79

3

How to Create a Manageable Platform Architecture?30 Gerrit Muller

version: 1.0June 5, 2018

HMPAreuseEfficiency

Page 31: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Purchased SW Requires Embedding

purchased OS

proprietary softwarepurchased

software

embedding

SW

architecture

How to Create a Manageable Platform Architecture?31 Gerrit Muller

version: 1.0June 5, 2018

HMPAembedding

Page 32: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Embedding Costs of Purchased SW

• Installation

• Configuration

• Customization

• Start up, shutdown

• Specifications

• Interface to application SW

• Exception handling

• Resource allocation and monitoring provision

• Resource tuning, see above

• Safety design

• Security design

functional

system design

sw design

add semantics level

use of appropriate low level mechanisms

match to high level mechanisms:

- notification, scheduling

- job requests, subscriptions

System monitor

Error propagation

Logging

CPU

Memory

Disk

How to Create a Manageable Platform Architecture?32 Gerrit Muller

version: 1.0June 5, 2018

HMPAembeddingCost

Page 33: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Example of Embedding Problems

tuner tuner MPEG MPEG

Duplication

Architectural mismatch : wrappers, translators, conflicting controls

Poor performance; additional resource usage

additional code and complexity,

no added value

UI UI

non problem Problems Architecture Reuse

How to Create a Manageable Platform Architecture?33 Gerrit Muller

version: 1.0June 5, 2018

ARmergeProblems

Page 34: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Time Dimension Outline

Time Dimension:

- Who is First: Platform or Product?

- Platform Stability

- The First Time Right?

- Evolution of Easyvision Platform

- Lifecycle Differences

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?34 Gerrit Muller

version: 1.0June 5, 2018

HMPAtimeOutline

Page 35: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Who is First: Platform or Product?

platform

baselineR1 R2 R3

platform

as consolidation baseline

R1 R2 R3

How to Create a Manageable Platform Architecture?35 Gerrit Muller

version: 1.0June 5, 2018

HMPAreleaseModel

Page 36: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Myth: Platforms are Stable

Architecture

Platform

Dynamic Market

Fast changing Technology

How stable

is a platform

or an architecture?

Components

How to Create a Manageable Platform Architecture?36 Gerrit Muller

version: 1.0June 5, 2018

LWAplatformStability

Page 37: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

The First Time Right?

1

maybe

10

unlikely

100

miracle

1000

impossible

person years

First time right?

How to Create a Manageable Platform Architecture?37 Gerrit Muller

version: 1.0June 5, 2018

LWAfirstTimeRight

Page 38: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Feedback

3 months

25 months

Start

Target

stepsize:

elapsed time:

How to Create a Manageable Platform Architecture?38 Gerrit Muller

version: 1.0June 5, 2018

LWAfeedbackLarge

Page 39: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Feedback (2)

3 months

25 months

2 months

12 months

Start Start

Target Target

stepsize:

elapsed time

How to Create a Manageable Platform Architecture?39 Gerrit Muller

version: 1.0June 5, 2018

LWAfeedbackMedium

Page 40: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Feedback (3)

3 months

25 months

2 months

12 months

1 month

8 months

Start Start Start

Target Target Target

stepsize:

elapsed time

Small feedback cycles result in Faster Time to Market

How to Create a Manageable Platform Architecture?40 Gerrit Muller

version: 1.0June 5, 2018

LWAfeedbackSmall

Page 41: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Platform Evolution (Easyvision 1991-1996)

1991

1992

1994

1991

1994

Last changed in:

Growth

Change

3rd

generation components are mature, active maintenance needed.

Growth and change continues, some "old" components become obsolete

1992

1996

How to Create a Manageable Platform Architecture?41 Gerrit Muller

version: 1.0June 5, 2018

LWAplatformEvolution

Page 42: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Lifecycle Differences

1 year

commodity

hardware

and

software

new generation of

magnets

gradients

detectors

major SW

release

minor SW

release

workstation

useful life

MR

scanner

useful life

10 years

procedural

change

legislation

change

clinical

prototype

problem

response

3 months

How to Create a Manageable Platform Architecture?42 Gerrit Muller

version: 1.0June 5, 2018

HMPAlifecycles

Page 43: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Reference Model for Healthcare Automation

information

handling

image handling

archiving

imaging and

treatment

base technology

localised

patient focus

safety critical

limited variation

due to "nature":

human anatomy

pathologies

imaging physics

distributed

limited variation due to "nature":

human anatomy

pathologies

imaging physics

entirely distributed

wide variation due to "socio-geographics":

psycho-social,

political, cultural factors

service business

not health care specific

extreme robust

fire, earthquake,

flood proof

life time

100 yrs (human life)

not health care specific

short life-cycles

rapid innovation

How to Create a Manageable Platform Architecture?43 Gerrit Muller

version: 1.0June 5, 2018

MICAFreferenceModel

Page 44: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Process View Outline

Process View:

- Simplified Process Decomposition

- Financial View on Process Decomposition

- Value and Feedback Flow

- Propagation Delay

- Sources of Failure

- Models for Generic Development

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?44 Gerrit Muller

version: 1.0June 5, 2018

HMPAprocessOutline

Page 45: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Simplified Process Decomposition

strategyprocess

customer

supplying business

value

product creationprocess

customer oriented (sales,

service, production) process

people, process and technologymanagement process

How to Create a Manageable Platform Architecture?45 Gerrit Muller

version: 1.0June 5, 2018

RSPprocessDecomposition

Page 46: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Modified Simplified Process Decomposition

policy and

planning

customer

Philips business

value

PCP

customer oriented process(sales, service, production)

people and technology management process

create generic components

How to Create a Manageable Platform Architecture?46 Gerrit Muller

version: 1.0June 5, 2018

SWRprocessDecompositionFamily

Page 47: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Financial View on Process Decomposition

policy and

planning

customer

Philips business

value

PCP

customer oriented process(sales, service, production)

people and technology management process

create generic components

management

tomorrow's cashflow

strategic asset

generation

assets

cashflow generation

How to Create a Manageable Platform Architecture?47 Gerrit Muller

version: 1.0June 5, 2018

SWRprocessDecompositionFamilyByValue

Page 48: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Value and Feedback Flow

policy and

planning

Philips business

value

people and technology management process

create generic components

PCP

feed-

back

customer

customer oriented process(sales, service, production)

How to Create a Manageable Platform Architecture?48 Gerrit Muller

version: 1.0June 5, 2018

SWRprocessDecompositionFamilyPlusFlow

Page 49: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Propagation Delay Platform Feature to Market

feature 1

feature 2

Platform integration

test

Release

Product integration

product feature 1

product feature 2

test

Release

How to Create a Manageable Platform Architecture?49 Gerrit Muller

version: 1.0June 5, 2018

GDpropagationDelay

Page 50: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Sources of Failure in Platform Developments

Technical

• Too generic

• Innovation stops

(stable interfaces)

• Vulnerability

Process/People/Organization

• Forced cooperation

• Time platform feature to market

• Unrealistic expectations

• Distance platform developer to customer

• No marketing ownership

• Bureaucratic process (no flexibility)

• New employees, knowledge dilution

• Underestimation of platform support

• Overstretching of product scope

• Nonmanagement, organizational scope increase

• Underestimation of integration

• Component/platform determines business policy

• Subcritical investment

How to Create a Manageable Platform Architecture?50 Gerrit Muller

version: 1.0June 5, 2018

GDpitfalls

Page 51: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Models for Platform Development

platform

lead customer

carrier product

technology push

direct feedback

too specific?

product feedback

product specific?

policy and

planning

customer

supplying business

Product Creation Process

customer oriented process(sales, service, production)

people and technology management process

create generic components feedback problem

too generic

no feedback

How to Create a Manageable Platform Architecture?51 Gerrit Muller

version: 1.0June 5, 2018

GDmodels

Page 52: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Market Driven Outline

Market Driven:

- The “CAFCR” model

- Example Platform Scoping

- Customer Key Drivers

Q: How to manage

platform architectures?

case

architecting

platformtime

dimension

process

market driven

Recommendations

How to Create a Manageable Platform Architecture?52 Gerrit Muller

version: 1.0June 5, 2018

HMPAmarketOutline

Page 53: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

The “CAFCR” model

Customer

What

Customer

How

Product

What

Product

How

What does Customer need

in Product and Why?

drives, justifies, needs

enables, supports

Customer

objectives

Application Functional Conceptual Realization

How to Create a Manageable Platform Architecture?53 Gerrit Muller

version: 1.0June 5, 2018

CAFCRannotated

Page 54: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Five viewpoints for an architecture

Customer

objectives

Application Functional Conceptual Realization

intention

constraintawareness

objectivedriven

contextunderstanding

oppor-tunities

know howbased

Customer

What

Customer

How

Product

What

Product

How

What does Customer need

in Product and Why?

How to Create a Manageable Platform Architecture?54 Gerrit Muller

version: 1.0June 5, 2018

AMOintegratingCAFCR

Page 55: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Example Platform Scoping

heterogeneous domains

and application

shared core

technology

motorway

management

intelligent

buildings

railway

stations

airport

terminals

Closed

Circuit TV

audio

broadcasting

access

control

networking

How to Create a Manageable Platform Architecture?55 Gerrit Muller

version: 1.0June 5, 2018

HMPAprojectsCase

Page 56: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Customer Key Drivers Motorway Management

Safety

Effective

Flow

Smooth

Operation

Environment

Reduce accident rates

Enforce law

Improve emergency

response

Reduce delay due to accident

Improve average speed

Improve total network throughput

Optimize road surface

Speed up target groups

Anticipate on future traffic condition

Ensure traceability

Ensure proper alarm handling

Ensure system health and fault indication

Reduce emissions

Early hazard detection

with warning and signaling

Maintain safe road

condition

Classify and track dangerous

goods vehicles

Detect and warn

noncompliant vehicles

Enforce speed compliance

Enforce red light compliance

Enforce weight compliance

Key-drivers Derived application drivers Requirements

Automatic upstream

accident detection

Weather condition

dependent control

Deicing

Traffic condition

dependent speed control

Traffic speed and

density measurement

Note: the graph is only partially elaborated

for application drivers and requirements

Cameras

How to Create a Manageable Platform Architecture?56 Gerrit Muller

version: 1.0June 5, 2018

COVmotorwayManagementKeyDrivers

Page 57: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Finally All Design Decisions are Related to Market

Philips operational view(manufacturing, service, sales)

Conceptual

efficient

useable

RealizationCustomer

objectives

Application Functional

diagnosis

time efficientthroughput processing

library

cost revisited in context of clinical needs and

realization constraints; note: original threads are significantly simplified

diagnostic

quality

image

quality IQ spec

pixel

depth

CPU

budgettypical

case

common

console

memory

limit

BoMMoore's

law

purchase

priceCoO

economic

sound

render

engine

effective

operational

constraints

M'

S

M

B

U"

P'

T

U

U' P

profit margin

standard workstation

C

memory budget

How to Create a Manageable Platform Architecture?57 Gerrit Muller

version: 1.0June 5, 2018

MITORthread50

Page 58: How to Create a Manageable Platform Architecture? · How to Create a Manageable Platform Architecture? ... LP SOHP HQWDWLRQ, ... Spool HCU Store Image Gfx UI DB PMS-

Recommendations

identify key drivers

accept heterogeneous

solutions

stimulate evolution, and continuous

refactoring

implement agile lifecycle

decoupling

maintain focused scope

ensure market and business

feedback

Q: How to manage platform architectures?

case

architecting

platform time dimension

process

market driven

Recommendations

educate artful architects

to create successful products

How to Create a Manageable Platform Architecture?58 Gerrit Muller

version: 1.0June 5, 2018

HMPArecommendations