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
210
0
Share
Reengineering
A case study presented to 4th year students at Imperial College
Nat Pryce
January 22, 2017
More Decks by Nat Pryce
See All by Nat Pryce
Mistakes we made adopting event sourcing (and how we recovered)
npryce
3
1.2k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
640
Taking the Tiger by the Tail, P3X 2019
npryce
1
240
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
460
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.5k
What we talk about when we talk about software
npryce
3
420
Why software changes & how we must change what we change when we change software
npryce
1
320
What we talk about when we talk about software
npryce
1
710
Having Our Cake and Eating It
npryce
4
1.5k
Other Decks in Programming
See All in Programming
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
140
ハンズオンで学ぶクラウドネイティブ
tatsukiminami
0
130
t *testing.T は どこからやってくるの?
otakakot
1
700
🦞OpenClaw works with AWS
licux
1
180
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
CursorとClaudeCodeとCodexとOpenCodeを実際に比較してみた
terisuke
1
480
ハーネスエンジニアリングとは?
kinopeee
11
5.9k
Swift Concurrency Type System
inamiy
1
540
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
140
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
170
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Skip the Path - Find Your Career Trail
mkilby
1
110
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
530
The Pragmatic Product Professional
lauravandoore
37
7.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Writing Fast Ruby
sferik
630
63k
New Earth Scene 8
popppiees
3
2.1k
Into the Great Unknown - MozCon
thekraken
41
2.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Fireside Chat
paigeccino
42
3.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