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
Reengineering
Search
Nat Pryce
January 22, 2017
Programming
0
190
Reengineering
A case study presented to 4th year students at Imperial College
Nat Pryce
January 22, 2017
Tweet
Share
More Decks by Nat Pryce
See All by Nat Pryce
Mistakes we made adopting event sourcing (and how we recovered)
npryce
3
1.1k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
620
Taking the Tiger by the Tail, P3X 2019
npryce
1
220
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
440
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.3k
What we talk about when we talk about software
npryce
3
400
Why software changes & how we must change what we change when we change software
npryce
1
300
What we talk about when we talk about software
npryce
1
690
Having Our Cake and Eating It
npryce
4
1.4k
Other Decks in Programming
See All in Programming
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
220
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
270
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
730
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
190
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
650
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
10
5.3k
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
590
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
7.4k
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
420
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
950
Side Projects
sachag
455
42k
How to Ace a Technical Interview
jacobian
278
23k
Thoughts on Productivity
jonyablonski
69
4.7k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Being A Developer After 40
akosma
90
590k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Code Review Best Practice
trishagee
69
18k
Adopting Sorbet at Scale
ufuk
77
9.5k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Transcript
Reengineering Evolution, Devolution & Revolution Nat Pryce @natpryce | natpryce.com
|
[email protected]
Quoting
Grand vision APAC EMEA US
Original architecture
Attempted optimisation
Parallelise calculations for APAC APAC EMEA
Start refactoring, but don't finish APAC EMEA
A new feature for EMEA APAC EMEA
Reports for APAC APAC EMEA
Diagnosing problems
The system was modelled on a manual, paper-based process
Idealised architecture
Separate the projects
"Cuckoo's Egg" application behind gateway
HTTP data service "simplicators"
"Pregression" tests
Fake simplicators in system tests
Introduce an acceptance test driven process
Replace the GUI with a web application
Continual indicative quoting is just a client
Caching proxies for performance and scaling
None
Lines of Code Over Time