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
200
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
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
230
Ruby Parser progress report 2025
yui_knk
1
260
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
400
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
0
210
ソフトウェアテスト徹底指南書の紹介
goyoki
1
130
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
390
testingを眺める
matumoto
1
130
複雑なドメインに挑む.pdf
yukisakai1225
4
860
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
320
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
11
3.3k
A Gopher's Guide to Vibe Coding
danicat
0
200
私の後悔をAWS DMSで解決した話
hiramax
4
180
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
40
2k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
We Have a Design System, Now What?
morganepeng
53
7.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Adaptive Systems
keathley
43
2.7k
Agile that works and the tools we love
rasmusluckow
330
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
A designer walks into a library…
pauljervisheath
207
24k
Statistics for Hackers
jakevdp
799
220k
Transcript
Reengineering Evolution, Devolution & Revolution Nat Pryce @natpryce | natpryce.com
| nat@natpryce.com
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