SlideShare a Scribd company logo
CompositeUI
forServiceOrientedSystems
DanielMarbach
@danielmarbach
bbvSoftwareServicesAG
De Composition
Why
How
Why
How
SystemApplication
Fancy1.0
SystemApplication
Fancy1.0
Thenetworkisreliable
Latencyisn’taproblem
Bandwidthisn’taproblem
Thenetworkissecure
Topologywon’tchange
Theadministratorwillknowwhattodo
Transportcostisn’taproblem
Thenetworkishomogeneous
Thesystemisatomic/monolithic
Thesystemisfinished
Businesslogiccanandshouldbecentralized
Thenetworkisreliable
var svc = new MyService();
var result = svc.Process(data);
Riskanalysis
Infrastructureandsoftwareredundancy
Reliablemessaging
Latencyisn’taproblem
Network
In-Memory
Serialization
Don’tcrossthenetwork
Takealldatayoumightneed
Minimizechit-chat
Bandwidthisn’taproblem
BigData
Congestion
Balanceeagerfetchvs.lazyloading
Balancebandwidthvs.latency
Separatenetworks
Thenetworkissecure
100%Safetyisnotpossible
Threatmodelanalysis
Balancecostsagainstrisks
Talkaboutit
Topologywon’tchange
Serverdown
Servermoved
Don’thard-code
Resilientprotocols
Discovery
ChaosMonkey
Theadministratorwill
knowwhattodo
Busfactor
Updates
Automate&Testdeployment
Designformultipleversionsrunning
concurrently
Allowpartofthesystemtobetaken
down
Transportcostisn’taproblem
Serialization
Hardware
Reducechit-chat
Infrastructureversusdevelopmentcosts
Thenetworkishomogeneous
.NET/Java
NoSQL,REST
Interopishard
Budgetforit
Thesystemisatomic/monolithic
Notscalable
SingleDB
Rippleeffects
Internalloosecoupling
Modularize
Designforscaleoutinadvance
Thesystemisfinished
Effort($/T) “Finished” Rewrite
Originaldate
“never”
finished
Designformaintenance
Designforupgrades
Versioningishard
Businesslogiccanand
shouldbecentralized
Logicisdistributed,livewithit
Groupbyfeature
BigBallofMudMonolithic
Coupling
XdependsonY
Afferent Efferent
whodependsonyou onwhoyoudepend
Platform Temporal Spatial
Platform
Interoperability
Usingplatformdependentprotocols
-Remoting
-EnterpriseServices
-DatasetsoverWebservices
Platform
XML/XSD,JSON,ProtocolBuffer
HTTP
WSDL
…
Temporal
XdependsonYandprocessingtimeofYdirectly
influencestheprocessingtimeofX.
Temporal
separatetheinter-servicecommunication
intimewithpub/sub
A
MakeCustomerPreferred()
B
Publishupdatedcustomerinfo
Storedata
Savecustomeras
preferred
PublishCustomermadepreferred
Spatial
Whenlocationnotavailablethesystemcannot
operate
Spatial
Introducelogicaldestinations
Loadbalancing
Routetologicaldestinations
Messaging
Reducescoupling
Addressessomeofthefallacies
Nosilverbullet
UseMessagingtotransferpacketsofdatafrequently,immediately,reliably,and
asynchronously,usingcustomizableformats.
Asynchronousmessagingisfundamentallyapragmaticreactiontotheproblemsof
distributedsystems.Sendingamessagedoesnotrequirebothsystemstobeupandready
atthesametime.Furthermore,thinkingaboutthecommunicationinanasynchronous
mannerforcesdeveloperstorecognizethatworkingwitharemoteapplicationisslower,
whichencouragesdesignofcomponentswithhighcohesion(lotsofworklocally)andlow
adhesion(selectiveworkremotely).
Messaging
Reducescoupling
(platform,temporal,afferentandefferent)
Addressessomeofthefallacies
Throughput
Load
RPC
Messaging
Receiver
Sends,andkeepsonworking
Sender
Id
Id
Receiver
Sender
Id
Outgoing
Incoming
DB
App
[HTTP]$$Order
Tx
Call1of3
Call2of3
Crash
Rollback
Where’stheorder!?
Infra
$$Order
Your
code
TXReceive
DB
Call1of3
Rollback
Call2of3
Rollback
Theorderisbackinthequeue
Invokes
DTC
Enlists
Q
Retry
DTCisatimebomb
Bus
$$Order
Your
code
Receive
DB
Call1of3
Rollback
Call2of3
Rollback
Theorderisbackinthequeue
Invokes
Q
Retry
Message
Payload(Body)
Metadata(Header)
%like%HTTP
Receiver
ReturnAddress Sometimeinthefuture
Sender
ReturnAddress
Receiver
Sometimeinthefuture
Sender
CorrelationID
MessageID
ReceiverSender
Receiver
Receiver
Ordering
MessagingBuy-in
Service
Function,WebService,ClassorDatabase
Setoftechnologies
Reusestrategy
Of-the-shelvesolution
WaytoalignITandbusiness
Business
capability
Data&
BusinessRules
Everything
iscontained
Nothingleft
over
Autonomous
ExplicitBoundaries
Contract&Schema
Policy Policy
DataOutsidevs.Inside
Outside Inside
UniqueID
(UUIDorwithhumanreadablewithversion)
OKtocache
Immutable
Validranges
Stable
Rulesforsendingmessages
UniqueID
(UUIDorwithhumanreadablewithversion)
OKtocache
Immutable
Validranges
Stable
Rulesforsendingmessages
Then Now
Command Event
Mashup
Bringingittogether
CompositeFrontEnd
Client/Server/Service
Portlet
Layout
Inter-portlet
communication
Shell
Single sign-on
UILogic
Agent
Host
Otherlegacysystems
UI
BusinessLogic
Adaptors
Serverlogic
Agent
Challengesyou’llface
Queries
Responses
MessagestoUI
Deployment
Contractsharing
Dependencies
Statusbars Dynamic
Queries
Don’tusemessaging
Usereadmodels
Databasesscalewellwhenreadonly
Justqueryit
Responses
NeverblocktheUI
EventAggregators
Forgetcallbacks,theysuck!
MessagestoUI
Doesn’tneedtobe1:1mapping
TaskbasedUI
Statusbars
Theynevertellthetruth
Tricktheuserwithsomeeducatedguesses
Useindeterminateprogressbars
Deployment
Keepitsimple
Automateit
Visualizeandmonitorit
Configurationcanbehard,designforit
Contractsharing
Favorloosecontractsoverinterfacesandclasses
Bepragmaticforcomposition
IT/OPSdefinesinterfaces,servicesimplementthem
Dependencies
SemanticVersioning
Nuget
Dynamic
Don’tgooverboardwithfancytechniques
Sometimeshard-wiringisjustfine
DanielMarbach
daniel.marbach@bbv.ch
twitter: @danielmarbach
blog: www.planetgeek.ch
www.bbv.ch/blog
OSSlead: Appccelerate/MSpec
usergroup: www.dotnet-zentral.ch

More Related Content

PDF
Infrastructure as (Secure) Code
PDF
Inherent Security Design Patterns for SDN/NFV Deployments
PPTX
Security at the Speed of the Network
PPTX
Future Internet Week - IPv6 the way forward: IPv6 and security from a user’s ...
PDF
10 Good Reasons - NetApp for ransomware protection
PDF
Network Function Virtualization - Security Best Practices AtlSecCon 2015
PDF
'Moon' Security Management System for OPNFV
PPTX
REST Fundamentals (Short)
Infrastructure as (Secure) Code
Inherent Security Design Patterns for SDN/NFV Deployments
Security at the Speed of the Network
Future Internet Week - IPv6 the way forward: IPv6 and security from a user’s ...
10 Good Reasons - NetApp for ransomware protection
Network Function Virtualization - Security Best Practices AtlSecCon 2015
'Moon' Security Management System for OPNFV
REST Fundamentals (Short)

Similar to Composite user interfaces for service oriented systems without exercises (20)

PDF
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
PDF
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
PDF
Introduction to nfv movilforum
PDF
Architecting Secure Web Systems
PPTX
Why the cloud is more secure than your existing systems
PDF
3 Reasons Why The Host Rules Intrusion Detection in The Cloud
PDF
네트워크 가상화 보안현황 및 보안연관성
PDF
Aspirin as a Service: Using the Cloud to Cure Security Headaches
PPT
ESXpert strategies VMware vSphere
PDF
Managing The Virtualized Enterprise New Technology, New Challenges
PDF
Sdwan webinar
PPT
System z virtualization and security
ODP
CloudSec , don't forget Security in the Cloud !
PPT
16 greg hope_com_wics
PPTX
Corporate Security Issues and countering them using Unified Threat Management...
PDF
Phantom Virtualization Tap Plus RSA NetWitness Add Up to Exceptional Gains in...
DOCX
John Hardwick 2016 Resume
DOC
Database Security Explained
PDF
SDN and Security: A Marriage Made in Heaven. Or Not.
PDF
NetworkWorld-SafeBreach
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
Introduction to nfv movilforum
Architecting Secure Web Systems
Why the cloud is more secure than your existing systems
3 Reasons Why The Host Rules Intrusion Detection in The Cloud
네트워크 가상화 보안현황 및 보안연관성
Aspirin as a Service: Using the Cloud to Cure Security Headaches
ESXpert strategies VMware vSphere
Managing The Virtualized Enterprise New Technology, New Challenges
Sdwan webinar
System z virtualization and security
CloudSec , don't forget Security in the Cloud !
16 greg hope_com_wics
Corporate Security Issues and countering them using Unified Threat Management...
Phantom Virtualization Tap Plus RSA NetWitness Add Up to Exceptional Gains in...
John Hardwick 2016 Resume
Database Security Explained
SDN and Security: A Marriage Made in Heaven. Or Not.
NetworkWorld-SafeBreach
Ad

Recently uploaded (20)

PPTX
TLE Review Electricity (Electricity).pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
Tartificialntelligence_presentation.pptx
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Getting Started with Data Integration: FME Form 101
PDF
WOOl fibre morphology and structure.pdf for textiles
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
project resource management chapter-09.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
TLE Review Electricity (Electricity).pptx
MIND Revenue Release Quarter 2 2025 Press Release
Unlocking AI with Model Context Protocol (MCP)
A novel scalable deep ensemble learning framework for big data classification...
SOPHOS-XG Firewall Administrator PPT.pptx
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
cloud_computing_Infrastucture_as_cloud_p
Tartificialntelligence_presentation.pptx
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Enhancing emotion recognition model for a student engagement use case through...
Group 1 Presentation -Planning and Decision Making .pptx
Encapsulation_ Review paper, used for researhc scholars
Getting Started with Data Integration: FME Form 101
WOOl fibre morphology and structure.pdf for textiles
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
project resource management chapter-09.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
Ad

Composite user interfaces for service oriented systems without exercises