Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Software Architecture for Agile Enterprises
Search
Stefan Tilkov
November 28, 2019
Technology
1
210
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
130
Microservices – A Taxonomy
stilkov
2
510
Software Architecture, Processes, Organization—and Humans
stilkov
4
540
Architekturoptionen für moderne Web-Frontends
stilkov
6
430
Software Architecture for Agile Enterprises
stilkov
2
580
Software Architecture, Processes, Organization—and Humans
stilkov
2
620
Good Enough Architecture
stilkov
8
1.2k
“Good enough” Architecture
stilkov
2
1k
That Blockchain Thing
stilkov
1
240
Other Decks in Technology
See All in Technology
Gaze-LLE: Gaze Target Estimation via Large-Scale Learned Encoders
kzykmyzw
0
310
認知戦の理解と、市民としての対抗策
hogehuga
0
290
現場が抱える様々な問題は “組織設計上” の問題によって生じていることがある / Team-oriented Organization Design 20250827
mtx2s
1
490
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
150
アジャイルテストで高品質のスプリントレビューを
takesection
0
110
datadog-distribution-of-opentelemetry-collector-intro
tetsuya28
0
240
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
330
夢の印税生活 / Life on Royalties
tmtms
0
280
AWSの最新サービスでAIエージェント構築に楽しく入門しよう
minorun365
PRO
10
610
Go で言うところのアレは TypeScript で言うとコレ / Kyoto.なんか #7
susisu
1
130
Goss: Faiss向けの新しい本番環境対応 Goバインディング #coefl_go_jp
bengo4com
0
1.1k
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
1.1k
Featured
See All Featured
A better future with KSS
kneath
239
17k
What's in a price? How to price your products and services
michaelherold
246
12k
The Cult of Friendly URLs
andyhume
79
6.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Code Reviewing Like a Champion
maltzj
525
40k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
For a Future-Friendly Web
brad_frost
179
9.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
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