Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
630
Taking the Tiger by the Tail, P3X 2019
npryce
1
230
What we talk about when we talk about software, Agile Turkey Summit 2019
npryce
2
450
The Kotlin Type Hierarchy From Top to Bottom
npryce
7
3.4k
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
700
Having Our Cake and Eating It
npryce
4
1.4k
Other Decks in Programming
See All in Programming
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
120
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
980
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
6.1k
All(?) About Point Sets
hole
0
260
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
230
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
0
360
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
390
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
220
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.4k
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
250
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
540
How Software Deployment tools have changed in the past 20 years
geshan
0
27k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Scaling GitHub
holman
464
140k
Building an army of robots
kneath
306
46k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Fireside Chat
paigeccino
41
3.7k
Bash Introduction
62gerente
615
210k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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