Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Software Architecture for Agile Enterprises
Stefan Tilkov
November 28, 2019
Technology
1
130
Software Architecture for Agile Enterprises
How Organization, Processes and Humans Can Evolve Together
Stefan Tilkov
November 28, 2019
Tweet
Share
More Decks by Stefan Tilkov
See All by Stefan Tilkov
API Approaches: An Overview
stilkov
1
43
Microservices – A Taxonomy
stilkov
1
310
Software Architecture, Processes, Organization—and Humans
stilkov
4
360
Architekturoptionen für moderne Web-Frontends
stilkov
6
310
Software Architecture for Agile Enterprises
stilkov
2
380
Software Architecture, Processes, Organization—and Humans
stilkov
2
470
Good Enough Architecture
stilkov
8
580
“Good enough” Architecture
stilkov
1
680
That Blockchain Thing
stilkov
1
160
Other Decks in Technology
See All in Technology
PCL (Point Cloud Library)の基本となぜ点群処理か_2023年_第2版.pdf
cvmlexpertguide
0
130
Periodic Multi-Agent Path Planning
hziwara
0
110
S3とCloudWatch Logsの見直しから始めるコスト削減 / Cost saving S3 and CloudWatch Logs
shonansurvivors
0
170
AI Services 概要 / AI Services overview
oracle4engineer
PRO
0
160
日本ディープラーニング協会主催 NeurIPS 2022 技術報告会講演資料
tdailab
0
1k
データエンジニアを助けてくれるFivetranとSnowflakeの仕様&機能のご紹介
sagara
0
450
目指せCoverage100%! AutoScale環境におけるSavings Plans購入戦略 / JAWS-UG_SRE_Coverage
taishin
0
410
【Oracle Cloud ウェビナー】事例から見る規模別クラウド・データベースの選び方 (Oracle Database) (2023年1月18日)
oracle4engineer
PRO
0
100
OCI DevOps 概要 / OCI DevOps overview
oracle4engineer
PRO
0
470
OpenShift.Run2023_create-aro-with-terraform
ishiitaiki20fixer
1
180
MoT/コネヒト/Kanmu が語るプロダクト開発xデータ分析 - 分析から機械学習システムの開発まで一人で複数ロールを担う大変さ
masatakashiwagi
2
590
230120 ガンダムの事例にみる自動化の対象 Haruka Oh!さん
comucal
PRO
0
120
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
22
1.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
239
19k
Building Your Own Lightsaber
phodgson
96
4.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
351
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
38
3.6k
Three Pipe Problems
jasonvnalue
89
8.9k
Learning to Love Humans: Emotional Interface Design
aarron
263
38k
BBQ
matthewcrist
75
8.1k
How To Stay Up To Date on Web Technology
chriscoyier
779
250k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
214
12k
How to name files
jennybc
47
73k
Six Lessons from altMBA
skipperchong
15
2.3k
Transcript
Software Architecture for Agile Enterprises Digitale Leute Summit 2019 Stefan
Tilkov, @stilkov
[email protected]
Image by Michael Gaida from Pixabay
www.innoq.com OFFICES Monheim Berlin Offenbach Munich Hamburg Zurich FACTS ~150
employees Privately owned Vendor-independent SERVICES Strategy & technology consulting Digital business models Software architecture & development Digital platforms & infrastructures Knowledge transfer, coaching & trainings CLIENTS Finance Telecommunications Logistics E-commerce Fortune 500 SMBs Startups
Modularization Autonomy End-to-end responsibility
Modularization Autonomy End-to-end responsibility
@stilkov Awesome Shop CMS Archive General Ledger Print Shop HR
@stilkov Awesome Shop CMS Archive General Ledger Print Shop HR
Context
@stilkov Awesome Shop CMS Archive General Ledger Print Shop HR
Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov Awesome Shop CMS Archive General Ledger Print Shop HR
Invoicing Accounting Auth Catalog Checkout & Order Search Domain Architecture
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov
@stilkov Macro Architecture
@stilkov Ruby on Rails MySQL Java Spring Boot OSS Product
COTS Java Spring Boot NodeJS ElasticSearch
@stilkov Ruby on Rails MySQL Java Spring Boot OSS Product
COTS Java Spring Boot NodeJS ElasticSearch Micro Architecture
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov Coming up with the “right” system boundaries is an
architecture activity that must be done first
@stilkov Managing dependencies is the most important ongoing architecture task
@stilkov You cannot decide to not have an architecture; if
you don’t actively create it, be prepared to deal with the one that emerges
number of developers strength of decoupling methods modules components
μservices systems
From a layered system … System Logic Data UI Module
Module Module
… to a system of systems System System System Logic
Data UI Logic Data UI Logic Data UI
Pattern: Evolutionary Architecture @stilkov
Modularization Autonomy End-to-end responsibility
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search
@stilkov Invoicing Accounting Auth Catalog Checkout & Order Search Team
Architecture?
@stilkov Conway’s Law: Organization → Architecture “Organizations which design systems
are constrained to produce systems which are copies of the communication structures of these organizations.” – M.E. Conway
@stilkov If your goal is to support autonomous teams, architecture
is an essential ingredient
@stilkov Size is the #1 enemy of agility. Keep your
systems as small as you can.
@stilkov Extremely loose coupling requires very few rules, but they
need to be enforced strictly
Pattern: Regulated Market @stilkov
Modularization Autonomy End-to-end responsibility
@stilkov Pattern: Autonomous Cells Stakeholder Stakeholder Stakeholder Biz Dev Ops
Biz Dev Ops Biz Dev Ops
@stilkov Pattern: Autonomous Cells Stakeholder Stakeholder Stakeholder Biz Dev Ops
Biz Dev Ops Biz Dev Ops
@stilkov Not every person has to become a full-stack developer,
but every team should be a full-stack team
Recommendations
@stilkov 1. Time to market requires supporting architecture
2. Establish autonomous teams as key ingredient
@stilkov 3. Create evolvable structures
www.innoq.com innoQ Deutschland GmbH Krischerstr. 100 40789 Monheim am Rhein
Germany +49 2173 3366-0 Ohlauer Str. 43 10999 Berlin Germany +49 2173 3366-0 Ludwigstr. 180E 63067 Offenbach Germany +49 2173 3366-0 Kreuzstr. 16 80331 München Germany +49 2173 3366-0 innoQ Schweiz GmbH Gewerbestr. 11 CH-6330 Cham Switzerland +41 41 743 0116 Thank you! Stefan Tilkov @stilkov
[email protected]
+49 170 471 2625