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
2
1k
Failure is not an Option. Error handling strategies for Kotlin programs
npryce
0
600
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
430
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.2k
What we talk about when we talk about software
npryce
3
390
Why software changes & how we must change what we change when we change software
npryce
1
290
What we talk about when we talk about software
npryce
1
690
Having Our Cake and Eating It
npryce
4
1.3k
Other Decks in Programming
See All in Programming
「”誤った使い方をすることが困難”な設計」で良いコードの基礎を固めよう / phpcon-odawara-2025
taniguhey
0
100
S3静的ホスティング+Next.js静的エクスポート で格安webアプリ構築
iharuoru
0
220
MCP調べてみました! / Exploring MCP
uhzz
2
2.2k
Going Structural with Named Tuples
bishabosha
0
200
趣味全開のAITuber開発
kokushin
0
190
AIコーディングワークフローの試行 〜AIエージェント×ワークフローでの自動化を目指して〜
rkaga
2
3.3k
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
230
Chrome Extension Techniques from Hell
moznion
1
160
Youtube Lofier - Chrome拡張開発
ninikoko
0
2.4k
新卒から4年間、20年もののWebサービスと 向き合って学んだソフトウェア考古学
oguri
8
7.2k
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.5k
The Weight of Data: Rethinking Cloud-Native Systems for the Age of AI
hollycummins
0
270
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
54
5.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
Building Flexible Design Systems
yeseniaperezcruz
329
38k
Making Projects Easy
brettharned
116
6.1k
Navigating Team Friction
lara
184
15k
The Cult of Friendly URLs
andyhume
78
6.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
104
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
Optimising Largest Contentful Paint
csswizardry
36
3.2k
Faster Mobile Websites
deanohume
306
31k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
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